160 likes | 331 Views
CMPT 300: Operating Systems. Review THIS REIVEW SHOULD NOT BE USED AS PREDICTORS OF THE ACTUAL QUESTIONS APPEARING ON THE FINAL EXAM. What Will Be in The Final Exam?. Concepts & Definitions E.g., working set, aging Conditions & Assumptions E.g., conditions of deadlocks? Pros & Cons
E N D
CMPT 300: Operating Systems Review THIS REIVEW SHOULD NOT BE USED AS PREDICTORS OF THE ACTUAL QUESTIONS APPEARING ON THE FINAL EXAM.
What Will Be in The Final Exam? • Concepts & Definitions • E.g., working set, aging • Conditions & Assumptions • E.g., conditions of deadlocks? • Pros & Cons • E.g., contiguous allocation Vs. linked list • Events • E.g., interrupt, page fault • Algorithms • E.g., Peterson’s solution, scheduling algorithms • Data structures • E.g., page table, process table
How to Go Over the Materials? • Read text book and lecture notes • Reading lecture notes only may not be enough • Understand the concepts and definitions • Keep thinking • Relation between concepts • E.g., DMA Vs. paging • Why does an algorithm work here? • Extensions and implications of principles • E.g., strict alternation, Peterson’s solution
Ch01: Overview of OS • OS structures • Hardware • CPU, memory, disk, bus, DMA • Basic concepts • Process (thread), deadlock, I/O, file system • Sections not covered in the final exam • 1.2. History of operating systems • 1.3. The operating system zoo
Ch02: Processes And Threads • Processes • Differences with programs? • States and transitions • Process table • Fork() • Threads • Differences with processes? Pros & Cons? • Kernel space Vs. user space implementation • Typical applications ( I/O and CPU mixed task)
Ch02 (Cont.) • Inter-process communication • Race condition • Critical region & Mutual exclusion • Busy waiting • Disable interrupts, lock variables, strict alternation, Peterson’s solution • Sleep & wakeup calls, mutexes, semaphores, monitors, message passing • Classical IPC problems • How to apply mechanisms to solve problems?
Ch02 (Cont.) • Scheduling • Preemptive Vs. non-preemptive • Benchmarks: turnaround time, throughput, response time • FCFS, SJF, RR, MQ, etc • Three-level scheduling • Sections not covered in exam • 2.5.4: real-time scheduling • 2.5.5 policy Vs. mechanism
Ch03: Deadlocks • Conditions for deadlock • Solutions for deadlock problem • Ostrich algorithm • Detection and recovery • Avoidance • Prevention • Other issues • Two-phase locking • Starvation
Ch04: Memory Management • Basic management • Fixed partitions (single queue Vs. multiple queues) • Degree of multi-programming • Relocation and protection (base & limit registers) • Bitmaps Vs. linked list • Swapping • Scenario: memory not enough • External fragmentation (memory compaction) • Virtual memory • Paging: pages Vs. page frames, page faults • MMU, TLB, page table, page table entry
Ch04 (Cont.) • Page replacement algorithms • NRU, FIFO, second chance, clock, LRU, NFU, aging • Working set, WSClock algorithm • Assumptions, relations • Modeling • Belady’s anomaly • Stack algorithm • Design issues • Global Vs. local, page sizes, shared pages, copy-on-write
Ch04 (Cont.) • Implementation • Page fault handling, backing stores • Segmentation • Advantages • Pure segmentation Vs. segmentation with paging • Sections not covered in final exam • 4.6.7, 4.7.3, 4.7.6, 4.8.3
Ch05: I/O • Principles of I/O hardware • Device controllers • Memory-mapped I/O Vs. I/O port number • DMA Vs. Interrupt • Principles of I/O software • Goals • Three approaches • I/O software layers • Four layers • Functions and relationship
Ch05 (Cont.) • Disks • Structure, format, layout • Disk arm scheduling algorithms • RAID • Stable storage • Clocks • Basic work principle • Sections not covered in the final exam • In 5.4, CD-ROM, CD-R, DVD, 5.4.4 • 5.5.2, 5.5.3, 5.6-5.9
Ch06: File Systems • Files • Attributes, operations • Memory-mapped files • Directories • Hierarchical directory • Path name
Ch06 (Cont.) • Implementations • Files: contiguous Vs. linked list, i-nodes • Directories: directory entry, long file name • Shared files • Disk space management • Free list Vs. bitmap • Reliability • Backup: full dump Vs. incremental dump • Consistency check: block Vs. directory check
Ch06 (Cont.) • Performance • Caching, block read ahead, reducing disk arm motion • Sections not covered in final exam • 6.3.8: log-structured file systems • 6.4.1-6.4.4