Fundamentals of Information Technology - Operating Systems

Overview and Goals of Operating Systems

  • An Operating System (OS) is an intermediary program between the user and the computer hardware.
  • Primary Goals: Ensure convenience for users (via GUI or CLI), enable efficient use of hardware (resource allocation), and facilitate problem-solving by executing user programs (Apps, Databases).
  • Structure: The system consists of Hardware (CPU, Memory, I/O), Operating Systems (coordination layer), Application Programs, and Users (people or machines).
  • Kernel vs. Shell: The Kernel is the core program running at all times, managing CPU and memory. The Shell is the user interface layer that interprets commands for the kernel.

Key Features and Architectures

  • Multi-user: Supports independent accounts for multiple users simultaneously.
  • Multitasking: Capable of running multiple applications at once.
  • Multiprocessing: Support for two or more CPUs.
  • Multithreading: Programs can be split into smaller parts loaded as needed for concurrent execution.
  • 32-bit (x8632x86-32): Supports a maximum of 4GB4\,GB of RAM and only 32bit32-bit applications/OS.
  • 64-bit (x8664x86-64): Backward compatible with 32bit32-bit; supports larger address spaces and both 32bit32-bit and 64bit64-bit software/hardware.

System Requirements and Configuration

  • Windows 11 Minimums: 1GHz1\,GHz or faster processor (22 or more cores), 4GB4\,GB RAM, 64GB64\,GB storage, DirectX 12, and Trusted Platform Module (TPM) 2.02.0.
  • Windows 10 Minimums: 1GHz1\,GHz processor, 1GB1\,GB RAM (32bit32-bit) or 2GB2\,GB (64bit64-bit), and 16GB16\,GB (32bit32-bit) or 20GB20\,GB (64bit64-bit) storage.
  • System Management Tools:
    • System Properties: Handles computer name, hardware installation, and system restore.
    • Task Manager: Monitors Applications, Processes, Services, Performance, Networking, and Users. In Windows 10, Applications/Processes are combined, and Networking is integrated into Performance.
    • Migration Tools: User State Migration Tool (USMT), Windows Easy Transfer, and PCmover Express.

The Boot Process and System Operations

  • Bootstrap Program: Initial code stored in ROM or EPROM (firmware) that locates and loads the OS kernel.
  • Windows Boot Sequence: POST and BIOS check configuration in CMOS; BIOS reads the Master Boot Record (MBR), which identifies the Volume Boot Record (VBR) to load bootmgr.exe.
  • Interrupt Driven: The OS is interrupt-driven; hardware device controllers notify the CPU of completed operations via interrupts. A "trap" or "exception" is a software-generated interrupt.
  • System Calls: Interfaces used for process control (create/terminate), file management (open/read/write), device management, and protection.

Storage and Resource Management

  • Storage Hierarchy:
    • Main Memory: Large, volatile, and directly accessible by the CPU.
    • Secondary Storage: Non-volatile extension (HDD with magnetic tracks/sectors or faster SSD).
  • Units of Storage:
    • 1byte=8bits1\,byte = 8\,bits
    • 1KB=1,024bytes1\,KB = 1,024\,bytes
    • 1MB=1,0242bytes1\,MB = 1,024^2\,bytes
    • 1GB=1,0243bytes1\,GB = 1,024^3\,bytes
    • 1TB=1,0244bytes1\,TB = 1,024^4\,bytes
    • 1PB=1,0245bytes1\,PB = 1,024^5\,bytes
  • Core Functions: Resource allocation for CPU cycles and memory, accounting for resource usage, and protecting information in multiuser environments.

Types of Operating Systems

  • Batch OS: Jobs with similar requirements are executed as grouped batches without direct user interaction.
  • Time-Sharing OS: Multitasking environment where the CPU is divided among multiple users to provide an interactive experience.
  • Distributed OS: Connects multiple computers via high-speed channels, allowing them to cooperate as a single entity (loosely coupled).
  • Network OS: Designed for file sharing and printer access over a LAN. Includes Peer-to-peer and Client-Server models.
  • Real-Time OS (RTOS): Used for time-critical tasks with precise timing.
    • Hard Real-Time: Strict deadlines; response in milliseconds (e.g., satellite launch).
    • Soft Real-Time: Fewer deadline restrictions (e.g., computer games).

Computing Environments and Modern Platforms

  • Virtualization: Allows running guest OSes within a host OS using a Virtual Machine Manager (VMM), such as VMware or Virtualbox.
  • Cloud Computing: Delivers services over a network (Public, Private, or Hybrid).
    • SaaS: Software as a Service (e.g., word processors).
    • PaaS: Platform as a Service (e.g., database servers).
    • IaaS: Infrastructure as a Service (e.g., storage/servers).
  • Open-Source: Source code is freely available (e.g., GNU/Linux, BSD UNIX). Supported by the Free Software Foundation (FSF) under the GNU Public License (GPL).
  • Debugging: Finding/fixing bugs using log files, core dumps (application failure), and crash dumps (kernel failure).