TECHNOLOGY 

Published on
KembaraXtra-Computer Science - Operating Systems Overview
I. Introduction to Operating Systems (OS)
  • Definition: Software that communicates with computer hardware, providing an environment for program execution.
  • Purpose:
    • Abstracts hardware details, allowing developers to focus on application logic.
    • Provides a common set of services for applications.
    • Manages hardware resources (memory, I/O devices, etc.).
    • Enables multitasking (running multiple programs concurrently).
    • Enforces isolation between programs and the OS, as well as user access control.
  • Role as a Layer: Acts as an intermediary between hardware and applications.
    • Hides hardware complexity.
    • Offers a consistent programming model.
    • Facilitates software development across diverse hardware.
II. Key Components of an Operating System
  • Two Major Categories:
    1. Kernel: The core of the OS.
    2. Everything Else: Non-kernel components that provide usability.
  • The Kernel:
  • Responsibilities:
    • Memory management.
    • Device I/O facilitation.
    • Providing system services to applications.
    • Enabling multitasking and resource sharing.
  • Limitation: By itself, it doesn't provide a user interface.
  • Shell:
  • Definition: User interface for interacting with the kernel.
  • Types:
    • Command Line Interface (CLI): e.g., Bash shell (Linux/Unix).
    • Graphical User Interface (GUI): e.g., Windows shell (desktop, Start menu, taskbar, File Explorer).
  • Daemons/Services:
  • Definition: Background processes that provide OS capabilities.
  • Examples:
    • Task Scheduler (Windows).
    • cron (Unix/Linux) - Scheduling programs to run at specific times.
  • Software Libraries:
  • Purpose: Provide common code for applications and OS components (shell, services) to use.
  • Benefit: Promotes code reuse and simplifies development.
  • Device Drivers:
  • Definition: Software designed to interact with specific hardware devices.
  • Role: Bridge the gap between the kernel and diverse hardware.
  • OS Inclusion: OSes include drivers for common hardware and mechanisms for installing additional drivers.
  • Utilities:
  • Definition: Basic applications included with most OSes (text editor, calculator, web browser).
  • Classification: Arguably not core OS components, but often bundled for convenience.
III. Component Relationships
  • Foundation: Kernel and device drivers directly interact with hardware.
  • Libraries: Provide functionality that both OS components (shell, services, utilities) and applications build upon.
  • Layered Architecture (from bottom to top):
    1. Hardware
    2. Kernel & Device Drivers
    3. Libraries
    4. Shell, Services, Utilities, Applications
Picture
0 Comments