Operating Systems

  1. CPU Scheduling
    1. Scheduling Fundamentals
      1. CPU-I/O Burst Cycle
        1. CPU Burst Characteristics
          1. I/O Burst Patterns
            1. Burst Duration Distribution
            2. CPU Scheduler Role
              1. Scheduling Decision Points
                1. Scheduler Invocation
                  1. Scheduling Overhead
                  2. Preemption Concepts
                    1. Preemptive Scheduling
                      1. Non-Preemptive Scheduling
                        1. Preemption Mechanisms
                        2. Dispatcher Functions
                          1. Context Switching
                            1. Mode Switching
                              1. Program Counter Management
                                1. Dispatch Latency
                              2. Scheduling Criteria
                                1. Performance Metrics
                                  1. CPU Utilization
                                    1. System Throughput
                                      1. Turnaround Time
                                        1. Waiting Time
                                          1. Response Time
                                          2. Quality Metrics
                                            1. Fairness
                                              1. Predictability
                                                1. System Balance
                                              2. Scheduling Algorithms
                                                1. First-Come First-Served
                                                  1. Algorithm Characteristics
                                                    1. Implementation Details
                                                      1. Performance Analysis
                                                        1. Convoy Effect
                                                        2. Shortest Job First
                                                          1. Non-Preemptive SJF
                                                            1. Preemptive SJF
                                                              1. Shortest Remaining Time First
                                                                1. Optimal Properties
                                                                  1. Prediction Challenges
                                                                  2. Priority Scheduling
                                                                    1. Priority Assignment
                                                                      1. Static Priority Systems
                                                                        1. Dynamic Priority Systems
                                                                          1. Priority Inversion
                                                                            1. Aging Mechanisms
                                                                            2. Round Robin Scheduling
                                                                              1. Time Quantum Selection
                                                                                1. Algorithm Implementation
                                                                                  1. Performance Characteristics
                                                                                    1. Context Switch Impact
                                                                                    2. Multilevel Queue Scheduling
                                                                                      1. Queue Organization
                                                                                        1. Inter-Queue Scheduling
                                                                                          1. Queue Assignment Policies
                                                                                          2. Multilevel Feedback Queue
                                                                                            1. Feedback Mechanisms
                                                                                              1. Queue Migration Rules
                                                                                                1. Parameter Configuration
                                                                                                  1. Adaptive Behavior
                                                                                                2. Thread Scheduling
                                                                                                  1. User-Level Thread Scheduling
                                                                                                    1. Application-Level Scheduling
                                                                                                      1. Thread Library Control
                                                                                                        1. Scheduling Limitations
                                                                                                        2. Kernel-Level Thread Scheduling
                                                                                                          1. System-Level Scheduling
                                                                                                            1. Kernel Scheduler Integration
                                                                                                              1. Thread Priority Management
                                                                                                            2. Multiprocessor Scheduling
                                                                                                              1. Multiprocessor Architectures
                                                                                                                1. Symmetric Multiprocessing
                                                                                                                  1. Asymmetric Multiprocessing
                                                                                                                    1. NUMA Considerations
                                                                                                                    2. Processor Affinity
                                                                                                                      1. Soft Affinity
                                                                                                                        1. Hard Affinity
                                                                                                                          1. Cache Performance Impact
                                                                                                                          2. Load Balancing
                                                                                                                            1. Push Migration
                                                                                                                              1. Pull Migration
                                                                                                                                1. Load Distribution Strategies
                                                                                                                                2. Multicore Scheduling
                                                                                                                                  1. Core Utilization
                                                                                                                                    1. Thread Migration
                                                                                                                                      1. Cache Coherency Impact