Linux intro to advance
Upcoming SlideShare
Loading in...5
×
 

Linux intro to advance

on

  • 346 views

 

Statistics

Views

Total Views
346
Views on SlideShare
346
Embed Views
0

Actions

Likes
2
Downloads
27
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Linux intro to advance Linux intro to advance Presentation Transcript

  • 11-1 THE LINUX SYSTEM DesigneD by: Nilesh Jaiswar gdfdgdfdh fhfjdfhjgfh gfgjdfhgjd hffkkfjgkfj
  • 11-2 INDEX • History • Design principals • Components of linux system • Kernel modules • Process management • Process and threads • Scheduling in linux • Process scheduling • Memory management • File systems • I/O in linux • Interprocess communication • Linux networking structure • Security • Conclusion
  • 11-3 HISTORY
  • 11-4 DESIGN PRINCIPLES  LINUX: A Multitasking, Multiuser and full set of UNIX compatible tools. It is capable of operating under 4Mb of RAM It contains POSIX standards. It act as a interface for both the programmer and the user.
  • 11-5 USER INTERFACE Users operate linux through CLI and GUI. On desktop systems: KDE Plasma Desktop,GNOME and Xfce. Linux kernel and other components are free and open source software.
  • 11-6 COMPONENTS OF LINUX SYSTEM Linux system consists of three main bodies: • The kernel • The system libraries • The system utilities
  • 11-7 KERNEL MODULES Three components of the module: • Module management • Driver Registration • Conflict Resolution
  • 11-8 PROCESS MANAGEMENT Two different operations: •The creation of process •Running of new program Terms in linux: •Fork-a new process is created by fork system call. •Execve-a new program is run after a execve call •Clone-creates a new process sharing parent data structure having it’s own identity.
  • 11-9 PROCESS MANAGEMENT Process properties: • Process identity: a. Process ID(PID): b. Credentials: c. Personality: • Process environment: • Process context: a. Scheduling context: b. Accounting: c. File table: d. File system context: e. Single handler table: f. Virtual memory context:
  • 11-10 Processes and Threads • Threads are light weight processes(LWPs) • Processes are heavy weight processes(HWPs) • Fundamental parts of process: a. code(text) b. data(vm) c. stack d. file I/O e. signal table • Threads: user level and kernel level
  • 11-11 PROCESSES AND THREADS 1. REPRESENT THE EXECUTION OF SINGLE PROGRAM 2. TWO SEPARATE PROCESSES WILL HAVE THEIR OWN INDEPENDENT ADDRESS SPACE 1. REPRESENT SEPARATE , CONCURRENT EXECUTION WITHIN SINGLE PROCESS 2. TWO THREADS WITHIN A PROCESS SHARE SAME ADDRESS SPACE
  • 11-12 SCHEDULING • The linux scheduler is a pre-emptive , priority-based algorithm • Two separate priority ranges : 1. Real-time range( 0 to 99) 2. ice-value range (100 to 140) • Once kernel code start running , then it is the only kernel code till the following event occurs. 1. An interrupt 2. A page fault 3. A kernel code call to the scheduler function itself
  • 11-13 PROCESS SCHEDULING Linux supports two process scheduling algorithms • Time- sharing algorithm • Real- time task algorithm 1.First-in first-out (FIFO) 2.Round Robin
  • 11-14 MEMORY MANAGEMENT Two components in Memory management: • Physical memory management • Virtual memory Physical memory management: This deals with allocation and deallocation of pages, group of pages and blocks of memory. Virtual memory: it is the memory mapped into the address space of running process.
  • 11-15 PHYSICAL MEMORY MANAGEMENT •Physical memory manager is a page allocator, which uses “buddy heap” algorithm in order to keep track of available address space . Ex. Splitting of memory in buddy heap. 16 KB 8KB 8 KB 8 KB 4 KB 4 KB
  • 11-16 VIRTUAL MEMORY • Virtual memory is responsible for maintaining the address space visible to each process. • There are two situations where the kernel creates a new virtual address space a) when a process runs a new program with the “exec” system call. b) When a new process is created by the “fork” system call.
  • 11-17 FILE SYSTEMS • Linux file system retains UNIX’s features. here file can be anything capable of handling I/O of stream of data. • The virtual file system is designed using object oriented principles. It consists of two components, i. A set of definition which define what a file object is allowed to look like. ii. A layer of software to manipulate those objects. 3 main object defined by VTS are i. Inode object ii. File object structure iii. File system object
  • 11-18 I/O IN LINUX Linux splits all the I/O devices into three groups a. Block devices b. Character devices c. Network devices • Block devices include all devices that allow random access like HDD, floppy disk & CD-ROMS. • Character devices include other devices with the main exception of network devices like Magnetic tap devices. • Network devices are dealt differently from both devices. user cannot transfer directly data to network devices but communicate indirectly. Ex. Tty discipline.
  • 11-19 Inter-Process Communication VARIOUS types of MECHANISM • SIGNAL • PIPES • FISOS • Message Queues • Semaphores • Shared Memory
  • 11-20 LINUX NETWORK STRUCTURE Linux kernel is implemented using the three layers of software internally- • System call interface • Protocol agnostic interface • Network protocols
  • 11-21 SECURITY In Linux, Security issues can be classified in two group- • AUTHENTICATION • ACCESS CONTROL
  • 11-22 Conclusion “When is it best to use Linux and when should some other operating system be preferred?” It all depends on the user
  • 11-23 REFERENCES •www. Wikipedia.com •www.trimble.com •www.wiley.com •Book: Operating system concepts