Lecture # 1 - Operating System: Roles & Types
What is Operating System? What are Roles of Operating System? What are Types of Operating System?
Operating System:
An operating system (OS) is a software that manages computer hardware and provides a platform for running other software applications. It acts as an intermediary between the user and the computer hardware, handling tasks such as managing memory, coordinating input and output devices, providing a user interface, and facilitating communication between software applications and the hardware. Examples of operating systems include Windows, macOS, Linux, and Android.
Roles of Operating System:
Resource Management:
The OS manages the computer's hardware resources such as CPU, memory, disk storage, and input/output devices. It allocates these resources efficiently among different running programs or processes to ensure smooth and fair execution.
Process Management:
It manages processes or tasks running on the system, including scheduling, creation, termination, and communication between processes. The OS ensures that each process gets a fair share of CPU time and that they can communicate and synchronize with each other as needed.
Memory Management:
The OS controls the allocation and deallocation of memory to processes. It manages virtual memory, allowing processes to use more memory than physically available by swapping data between RAM and disk storage.
File System Management:
The OS provides a file system that organizes and manages data stored on disk storage devices. It controls file access, directory structure, and file operations such as reading, writing, and deletion.
Device Management:
It handles communication with input/output devices such as keyboard, mouse, printer, and network interface. The OS provides device drivers to facilitate communication between hardware devices and software applications.
User Interface:
The OS provides a user interface through which users interact with the computer system. This can be a graphical user interface (GUI) or a command-line interface (CLI) depending on the OS and user preferences.
Security:
The OS enforces security policies to protect the system and user data from unauthorized access, viruses, and other security threats. It includes user authentication, access control mechanisms, encryption, and firewall capabilities.
Error Handling:
The OS handles errors and exceptions that occur during system operation, providing mechanisms for error detection, reporting, and recovery to maintain system stability and reliability.
Types of Operating System:
Single-User Operating System:
Also known as a single-tasking or single-user OS, this type of OS allows only one user to interact with the computer at a time. Examples include older versions of MS-DOS and some embedded systems.
Multi-User Operating System:
Also known as a multi-tasking or multi-user OS, this type of OS allows multiple users to interact with the computer concurrently. It supports concurrent execution of multiple processes or tasks. Examples include Unix/Linux variants, modern versions of Windows, and macOS.
Distributed Operating System:
A distributed OS runs on multiple interconnected computers and makes them appear as a single coherent system. It manages resources across a network of computers and provides users with access to distributed resources such as files, printers, and databases. Examples include Google's Android OS and various network operating systems.
Mobile Operating System:
Mobile OS is designed for mobile devices like smartphones, tablets, and wearables. These operating systems are optimized for touch input, power efficiency, and mobility. Examples include Android and iOS.