Operating System is a layer between the user and the computer hardware. It translates instructions from user to computer language and computer language to user-specific formats such as English.
The Operating System (OS) manages resources for user applications such as disk space, memory, etc.
About OS Tutorial
The audience of this tutorial is anyone willing to learn Operating Systems Concepts. There are no prerequisites for this tutorial, however, familiarity with C programming will be useful.
OS Tutorial Topics
Here is the list of topics. You can start reading from top to bottom.
Operating System Basics
OS Thread Management
- Multi-Threaded Programming
- Pthreads
- Win32 Threads
- Java Threads
OS Inter-process Communication
CPU Scheduling Algorithms
- Types of Schedulers
- Process Scheduling Criteria
- First Come, First Served (FCFS)
- Shortest Job First ( SJF )
- Round Robin
- Priority Scheduling
- Shortest Remaining Time First (SRTF)
- Multilevel Queue
- SJF Tabular Method
- FCFS Tabular Method
OS Concurrency Control
Synchronization
- Critical Section Problem
- Critical Section Solution
- Bounded-Buffer Problem
OS Deadlock
OS Memory Management
- Memory Mapping Schemes
- Logical vs. Physical Memory Address
- Dynamic Loading And Linking
- OS Swapping Processes
- Contagious Memory Allocation
- Paging
- Page Table
- Page Replacement Techniques
- Segmentation