Operating Systems Assignment
1. Services Provided by an Operating System
An Operating System (OS) acts as an interface between the user and computer hardware. It
provides an environment for execution of programs and ensures efficient utilization of system
resources.
Main Services:
• Program Execution: Loads programs into memory, executes them, and handles termination.
• Process Management: Creates, schedules, suspends, and terminates processes to enable
multitasking.
• Memory Management: Allocates and deallocates memory, tracks usage, and supports virtual
memory.
• File System Management: Creates, deletes, organizes files and directories, and manages
access permissions.
• I/O System Management: Handles communication with input/output devices using drivers.
• Device Management: Allocates devices to processes and maintains their status.
• Security & Protection: Provides authentication and authorization mechanisms.
• Error Detection: Detects and handles hardware and software errors.
• Inter-Process Communication (IPC): Enables processes to exchange data.
• Resource Allocation: Efficiently distributes CPU, memory, and devices.
2. Types of Operating Systems
(a) Batch Operating System
Processes jobs in batches without user interaction. Jobs are executed sequentially, resulting in high
throughput but long turnaround time.
• No user interaction during execution
• Uses job queues and spooling
• Efficient for repetitive tasks
• Long waiting time
(b) Time Sharing Operating System
Allows multiple users to share system resources by dividing CPU time into small slices.
• Provides interactive computing
• Fast response time
• Supports multiple users simultaneously
• Requires complex scheduling
(c) Real-Time Operating System
Designed for systems where timing is critical and responses must occur within strict deadlines.
• Deterministic response time
• High reliability and predictability
• Used in critical applications like medical and aerospace systems
• Types: Hard RTOS and Soft RTOS
(d) Distributed Operating System
Manages multiple computers and makes them appear as a single system.
• Resource sharing across systems
• Improved performance and fault tolerance
• Scalable and efficient
• Complex implementation
3. System Calls
A system call is a mechanism that allows a user program to request services from the operating
system kernel.
Example:
read() system call is used to read data from a file or input device.
Types of System Calls:
Category Examples Purpose
Process Control fork(), exec(), exit() Process creation and termination
File Management open(), read(), write() File operations
Device Management ioctl() Control device operations
Information Maintenance getpid() Retrieve system/process information
Communication pipe(), socket() Inter-process communication
Memory Management mmap(), brk() Memory allocation
4. System Software vs Utility Software
Basis System Software Utility Software
Definition Manages hardware and system operations
Maintains and optimizes system
Purpose Platform for applications Improves efficiency
Dependency Essential Depends on system software
Examples OS, Drivers, Compilers Antivirus, Disk Cleanup
User Interaction Low High
Necessity Mandatory Optional