Linux intro to advance

  • 249 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
249
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
29
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 11-1 THE LINUX SYSTEM DesigneD by: Nilesh Jaiswar gdfdgdfdh fhfjdfhjgfh gfgjdfhgjd hffkkfjgkfj
  • 2. 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
  • 3. 11-3 HISTORY
  • 4. 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.
  • 5. 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.
  • 6. 11-6 COMPONENTS OF LINUX SYSTEM Linux system consists of three main bodies: • The kernel • The system libraries • The system utilities
  • 7. 11-7 KERNEL MODULES Three components of the module: • Module management • Driver Registration • Conflict Resolution
  • 8. 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.
  • 9. 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:
  • 10. 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-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
  • 12. 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
  • 13. 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
  • 14. 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.
  • 15. 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
  • 16. 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.
  • 17. 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
  • 18. 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.
  • 19. 11-19 Inter-Process Communication VARIOUS types of MECHANISM • SIGNAL • PIPES • FISOS • Message Queues • Semaphores • Shared Memory
  • 20. 11-20 LINUX NETWORK STRUCTURE Linux kernel is implemented using the three layers of software internally- • System call interface • Protocol agnostic interface • Network protocols
  • 21. 11-21 SECURITY In Linux, Security issues can be classified in two group- • AUTHENTICATION • ACCESS CONTROL
  • 22. 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
  • 23. 11-23 REFERENCES •www. Wikipedia.com •www.trimble.com •www.wiley.com •Book: Operating system concepts