Operating System - Core Concepts
1. Overview:
An Operating System (OS) is the backbone of a computer, ensuring smooth communication
between hardware and software. It controls processes, memory, devices, and the file system, while
also providing security and user interfaces.
2. Main Functions:
- **Process Management:** Creates, schedules, and terminates processes.
- **Memory Management:** Allocates, tracks, and deallocates memory.
- **Device Management:** Manages input/output devices via drivers.
- **File Management:** Handles file creation, deletion, and organization.
- **Security:** Prevents unauthorized access.
- **User Interface:** Provides GUI/CLI for interaction.
3. Types of Operating Systems:
- Batch Processing
- Multi-programming
- Multi-tasking
- Real-time (Hard/Soft)
- Distributed
- Network
- Mobile OS
4. OS Architectures:
- **Monolithic Kernel:** All services run in kernel space.
- **Microkernel:** Only core services in kernel space; rest in user space.
- **Hybrid Kernel:** Mix of monolithic and microkernel features.
- **Layered:** OS organized in hierarchical layers.
5. Process Scheduling:
- **Preemptive:** OS can take CPU control anytime.
- **Non-preemptive:** Once process starts, it completes without interruption.
- Algorithms: FCFS, SJF, RR, Priority.
6. Memory Management Concepts:
- **Paging:** Fixed-size blocks.
- **Segmentation:** Variable-sized segments.
- **Virtual Memory:** Extends RAM using disk storage.
- **Fragmentation:** Internal vs External.
7. File System Structure:
- Directory structure (Single-level, Two-level, Tree, Graph).
- File attributes: name, type, size, location.
8. Security and Protection:
- User authentication, access control, encryption.
- Protects OS and data integrity.
9. Examples:
- Desktop: Windows, Linux, macOS.
- Mobile: Android, iOS.
- Embedded: QNX, RTLinux.
10. Importance:
Without an OS, a computer cannot function effectively. It ensures resource efficiency, multi-tasking,
and user accessibility.