An Operating System (OS) acts as the intermediary between the
user and the computer hardware, managing resources and providing a platform for applications to
run. It encompasses various types, including Batch, Multi-programmed, Time-Shared, Multiprocessor,
Distributed, Real-time, and Mobile OS (like Android). Key OS functions involve process, memory, file,
I/O, and secondary storage management. System calls act as the interface between programs and
the OS, allowing access to these services.
1.1 Operating System: Concept and Functions
Concept:
An OS is system software that manages computer hardware and software resources, acting as a
bridge between the user and the machine.
Computer System Components
1. Hardware – provides basic computing resources (CPU, memory, I/O devices).
2. Operating system – controls and coordinates the use of the hardware among the various
application programs for the various users.
3. Applications programs – Define the ways in which the system resources are used to solve the
computing problems of the users (compilers, database systems, video games, business programs).
4. Users- (people, machines, other computers).
Abstract View of System Components
Functions:
Resource Management: The OS allocates and deallocates resources like CPU time, memory, storage,
and I/O devices.
Process Management: Manages the creation, execution, and termination of processes, including
scheduling and synchronization.
Memory Management: Allocates and deallocates memory space to processes and manages virtual
memory.
File Management: Organizes and manages files and directories on storage devices.
I/O Management: Handles input and output operations, allowing communication with peripheral
devices.
Security: Provides protection mechanisms to prevent unauthorized access to resources and data.
User Interface: Provides a user-friendly interface for interacting with the computer system.
Error Handling: Detects and handles errors that may occur during program execution or system
operation.
1.2 Different Types of Operating Systems
Batch Operating System:
Processes jobs in batches, executing them sequentially without user interaction.
Multi-programmed Operating System:
Allows multiple programs to reside in memory simultaneously, increasing CPU utilization.
Time-Shared Operating System:
Enables multiple users to share the computer resources concurrently, giving the illusion of dedicated
processing.
Multiprocessor System:
Uses multiple CPUs to execute instructions, improving performance and throughput.
Distributed System:
Distributes processing across multiple interconnected computers, offering scalability and fault
tolerance.
Real-Time System:
Designed for real-time applications requiring immediate responses, such as embedded systems.
Mobile OS (Android OS):
A specialized OS designed for mobile devices, like smartphones and tablets.
1.3 Command Line vs. GUI Based Operating Systems
Command Line Based OS:
DOS: A disk operating system with a command-line interface, primarily used for basic operations on
personal computers.
UNIX: An operating system known for its command-line interface and powerful utilities, often used in
servers and development environments.
GUI Based OS:
WINDOWS: A widely used operating system with a graphical user interface, providing a user-friendly
experience.
LINUX: An open-source OS available with both command-line and GUI interfaces.
Mac OS: An operating system developed by Apple, known for its user-friendly interface and
integration with Apple's hardware.
1.4 Different Services of Operating System, System Calls
Services:
The OS provides a wide range of services, including process management, memory management, file
management, I/O management, and security.
System Calls:
System calls are functions that allow programs to request services from the OS kernel.
Concept: System calls act as the interface between user-level applications and the OS kernel.
Types:
Process Control: Creating, deleting, and managing processes.
File Management: Creating, deleting, reading, and writing files.
Device Management: Controlling input/output devices.
Information Maintenance: Accessing system information.
Communication: Inter-process communication.
Protection: Controlling access to resources.