Chapter 1: Introduction Dhamdhere: Operating Systems - A Concept-Based Approach, 2 Ed Slide No: 1
Chapter 1: Introduction Dhamdhere: Operating Systems - A Concept-Based Approach, 2 Ed Slide No: 1
Chapter 1: Introduction Dhamdhere: Operating Systems - A Concept-Based Approach, 2 Ed Slide No: 1
Chapter 1
• User interface: Accepts commands from users: GUI, command line interface
• Non-kernel programs: Implement user commands
• Kernel: Core of the OS─controls the computer, provides functions & services
• Process synchronization
– Enables processes to work harmoniously towards common goals
• Message passing
– Facilitates communication among processes
• Deadlock handling
– Avoids indefinite waits
• Implementation of file operations
– Techniques to ensure efficiency and reliability
• Multiprocessor operating systems
– Ensure effective and efficient use of the multiple CPUs
• Structure of operating systems
– Provides portability and extensibility of operating systems
(a) The Credit and Debit processes share the account balance, hence only
one of them should access it at any time
(b) Generate produces a sample and Analyze analyzes it. Analyze must
wait if Generate has not yet produced a sample
• Theoretical issues
– How to know the order in which events have occurred?
* Important for FCFS allocation, etc.
– How to know the state of a system
* Important for avoiding inconsistencies and performing ‘load
balancing’ across nodes to obtain good performance
• Distributed control algorithms
– Parts of the algorithm run in different nodes
* Obviates the need to collect ‘global’ state in one node
* Special techniques are used to ensure consistency of actions
– Used for resource allocation, scheduling, deadlock handling, etc.
• Recovery
– User computations should not suffer due to node or link failures
* OS restores computations in a failed node to a previous state
* Special techniques are used to ensure consistency across nodes