Operating Systems

  1. Process Management
    1. The Process Concept
      1. Process Definition
        1. Program vs Process Distinction
          1. Process Components
            1. Process Characteristics
            2. Process Lifecycle
              1. Process Creation
                1. Process Execution
                  1. Process Termination
                  2. Process State Model
                    1. New State
                      1. Ready State
                        1. Running State
                          1. Waiting State
                            1. Terminated State
                              1. State Transitions
                              2. Process Control Block
                                1. Process Identification
                                  1. Process State Information
                                    1. CPU Register Contents
                                      1. Memory Management Information
                                        1. Accounting Information
                                          1. I/O Status Information
                                        2. Process Scheduling
                                          1. Scheduling Fundamentals
                                            1. Scheduling Objectives
                                              1. Scheduling Metrics
                                                1. Scheduling Policies
                                                2. Scheduling Queues
                                                  1. Job Queue
                                                    1. Ready Queue
                                                      1. Device Queues
                                                        1. Queue Management
                                                        2. Scheduler Types
                                                          1. Long-Term Scheduler
                                                            1. Short-Term Scheduler
                                                              1. Medium-Term Scheduler
                                                                1. Scheduler Coordination
                                                                2. Context Switching
                                                                  1. Context Save Operations
                                                                    1. Context Restore Operations
                                                                      1. Context Switch Overhead
                                                                        1. Hardware Support
                                                                      2. Operations on Processes
                                                                        1. Process Creation
                                                                          1. Parent-Child Relationships
                                                                            1. Process Hierarchy
                                                                              1. Fork System Call
                                                                                1. Exec System Call
                                                                                  1. Process Duplication
                                                                                  2. Process Termination
                                                                                    1. Normal Termination
                                                                                      1. Abnormal Termination
                                                                                        1. Exit System Call
                                                                                          1. Cascading Termination
                                                                                            1. Orphan Process Handling
                                                                                          2. Interprocess Communication
                                                                                            1. Communication Models
                                                                                              1. Shared Memory Model
                                                                                                1. Message Passing Model
                                                                                                  1. Communication Comparison
                                                                                                  2. Shared Memory Systems
                                                                                                    1. Memory Segment Creation
                                                                                                      1. Memory Mapping
                                                                                                        1. Synchronization Requirements
                                                                                                          1. Data Consistency
                                                                                                          2. Message Passing Systems
                                                                                                            1. Direct Communication
                                                                                                              1. Process Naming
                                                                                                                1. Symmetric Communication
                                                                                                                  1. Asymmetric Communication
                                                                                                                  2. Indirect Communication
                                                                                                                    1. Mailbox Systems
                                                                                                                      1. Port-Based Communication
                                                                                                                        1. Message Queues
                                                                                                                        2. Message Passing Properties
                                                                                                                          1. Synchronous Communication
                                                                                                                            1. Asynchronous Communication
                                                                                                                              1. Message Buffering
                                                                                                                          2. Thread Management
                                                                                                                            1. Thread Fundamentals
                                                                                                                              1. Thread Definition
                                                                                                                                1. Thread vs Process
                                                                                                                                  1. Thread Lifecycle
                                                                                                                                    1. Thread States
                                                                                                                                    2. Multithreading Benefits
                                                                                                                                      1. System Responsiveness
                                                                                                                                        1. Resource Sharing
                                                                                                                                          1. Economic Efficiency
                                                                                                                                            1. Multiprocessor Utilization
                                                                                                                                            2. Threading Models
                                                                                                                                              1. Many-to-One Model
                                                                                                                                                1. One-to-One Model
                                                                                                                                                  1. Many-to-Many Model
                                                                                                                                                    1. Two-Level Model
                                                                                                                                                    2. Thread Implementation
                                                                                                                                                      1. User-Level Threads
                                                                                                                                                        1. Kernel-Level Threads
                                                                                                                                                          1. Implementation Comparison
                                                                                                                                                          2. Thread Libraries
                                                                                                                                                            1. POSIX Threads
                                                                                                                                                              1. Windows Threading API
                                                                                                                                                                1. Java Threading
                                                                                                                                                                  1. Thread Library Features