Operating Systems
What happens between your app and the hardware: processes, memory and files.
0 of 29 lessons published
Syllabus
01 IntroductionWhat an OS does. 4 lessons
- 1.1What is an operating system?Coming soon
- 1.2Types of operating systemsComing soon
- 1.3Kernel, shell and system callsComing soon
- 1.4Boot processComing soon
02 ProcessesPrograms in action. 4 lessons
- 2.1Process and process statesComing soon
- 2.2Process control blockComing soon
- 2.3Context switchingComing soon
- 2.4Inter-process communicationComing soon
03 ThreadsLightweight processes. 2 lessons
- 3.1Threads and multithreading modelsComing soon
- 3.2User vs kernel threadsComing soon
04 CPU SchedulingWho runs next? 4 lessons
- 4.1Scheduling criteriaComing soon
- 4.2FCFS, SJF and priority schedulingComing soon
- 4.3Round robinComing soon
- 4.4Multilevel queue schedulingComing soon
05 SynchronisationAvoiding clashes. 3 lessons
- 5.1Critical section problemComing soon
- 5.2Mutex and semaphoresComing soon
- 5.3Classic problems: producer-consumer, dining philosophersComing soon
06 DeadlocksWhen everyone waits forever. 4 lessons
- 6.1Deadlock conditionsComing soon
- 6.2Deadlock prevention and avoidanceComing soon
- 6.3Banker's algorithmComing soon
- 6.4Deadlock detection and recoveryComing soon
07 Memory ManagementSharing RAM between programs. 5 lessons
- 7.1Contiguous allocationComing soon
- 7.2PagingComing soon
- 7.3SegmentationComing soon
- 7.4Virtual memory and demand pagingComing soon
- 7.5Page replacement algorithmsComing soon
08 Storage and FilesDisks and file systems. 3 lessons
- 8.1File systemsComing soon
- 8.2Directory structureComing soon
- 8.3Disk scheduling algorithmsComing soon