Operating system

814
-1

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
814
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
18
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Operating system

  1. 1. Operating System
  2. 2. Operating System Functions of OS • scheduler (time allocation to programs) , • synchronizer ( avoid conflicts for a resource at the same time) • memory manager (space allocation to programs)
  3. 3. Scheduling • Scheduling Algo • basically utilize IO time by scheduling another task • Switching from one thread to another (A --> B ) can occur when a) A is complete b) A is blocked on IO c) Timer interrupt forcefully preempts A
  4. 4. SCHEDULER
  5. 5. Synchronization • Synchronization is needed as process need to exchange information using a shared region in memory. • However, this shared region cannot be accessed in any manner. They needed to be accessed in correct sequence
  6. 6. Synchronization The code accessing Shared Data is called Critical Section No more than one process can access shared data at a given time Critical Sections must obey mutual exclusion
  7. 7. Synchronization • How to ensure Mutual exclusion (only one process is in critical section) • Disable interrupts • Test and set instructions • Semaphore
  8. 8. Synchronization • Semaphores • Used to solve Producer Consumer problems • Producer consumer problems occur for example in networks (sending and receiving packets), unix shell IO
  9. 9. Synchronization • Producer Code down(empty_slot) put item in buffer up(full_slot)
  10. 10. Synchronization • The above solution works for a single producer consumer • When multiple producers and consumers are present , then a race condition can happen resulting in writing to the same slot by two different producers • To overcome this problem, we need to make sure that only one producer is executing "put item in buffer". So we need to execute mutual exclusion within a critical section
  11. 11. Synchronization • down(empty_slot) • down(mutex) • put item in buffer • up(mutex) • up(full_slot)
  12. 12. Memory Management • How to run process when not enough physical memory? • How to protect one process from accessing another’s memory
  13. 13. Memory Management • How to run process when not enough physical memory? • How to protect one process from accessing another’s memory VIRTUAL MEMORY provides illusion of more memory Each process access only a window of memory – due to Locality of Reference Only a small portion of address space must be in physical memory
  14. 14. Memory Management • Each layer acts as “backing store” for layer above disk storage main memory cache registers size speed cost
  15. 15. vpn … vpn 3 vpn 2 vpn 1 vpn 0 P1 Virtual pages Frame # Present bit … … Blk 1031 0 Blk 1030 0 Fr # 15 1 Blk 1030 … Blk 1031 Fr #15 Fr #16 Fr # 16 1 … PAGE TABLE
  16. 16. Memory Management Page Replacement
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×