Operating Systems - 1`0/14

Software Types & Computing History

  • Software Categories:
    • Applications: Perform specific user tasks (e.g., Word as a word processor, Google Chrome as a web browser).
    • Drivers: Specialized software that instructs the operating system on how to access and communicate with specific hardware (e.g., graphics cards, sound cards).
    • Operating Systems: Foundational software that coordinates hardware, user actions, and programs.
  • Early Computing & History:
    • First General-Purpose Electronic Computer: Built in 1946; measured 100 feet long, weighed 27 pounds, executed approximately 5,000 operations per second, and operated using mechanical switches without a visual user interface.
    • First Programming Language: Ortran.
    • UNIX: Released in 1969 by Bell Labs; written in C and initially distributed with open code.
    • Graphical User Interface (GUI): First developed on workstations; Apple licensed GUI technology and implemented it on the Macintosh.
    • Linux: Created in 1991 by Linux robots.

Operating System Concepts & Terminology

  • Kernel: The core, essential nervous system of the operating system that facilitates all internal processes.
  • Version: A specific numbered revision of an operating system or application relative to previous releases (e.g., Windows 11).
  • Source Code:
    • Open Source: Code is public for anyone to inspect, modify, and distribute (e.g., Linux distributions such as analog panel Linux or custom community distros).
    • Closed Source: Proprietary code modifiable only by the owner and authorized developers.
  • Shell: The user-facing program running on top of the operating system providing menus or an interface (e.g., File Explorer in Windows).
  • GUI: An interface enabling interaction via graphical images, icons, and menus using input devices.

Execution Models & Processor Architecture

  • Multitasking Methods:
    • Cooperative Multitasking: Legacy model relying on the active application to yield CPU control; only one application effectively runs at a time, and a crash in that app crashes the entire system.
    • Preemptive Multitasking: Modern model where the operating system controls CPU scheduling, time slices, and resource sharing across multiple applications simultaneously.
  • Multithreading: Allows a single application to send multiple concurrent processing requests to the CPU (e.g., Google Chrome handling video streaming and network browsing simultaneously).
  • Processor Architectures:
    • 32-bit Processors: Legacy architecture limited to addressing a maximum of 4 gigabytes of RAM. Supported up to Windows 10; Windows 11 provides no 32-bit support.
    • 64-bit Processors: Modern computing standard that became dominant after 2015; capable of supporting up to 1 terabyte of RAM.

Four Core Functions of an Operating System

  • Coordinating Users and Hardware: Translates user commands to hardware via device drivers across components (mouse, keyboard, CPU, memory, storage) and enforces security boundaries (e.g., User Account Control confirmation prompts for administrative rights).
  • Providing an Environment for Software: Supplies the runtime platform necessary to install and execute applications.
  • Providing Structure for Data: Organizes raw storage bits into structured files, directories, and folders starting from the root of the drive.
  • Monitoring System Health and Function: Tracks real-time resource utilization (CPU usage, RAM allocation, network throughput) via system utilities such as Task Manager.

Questions & Discussion

  • Latest Windows Version:
    • Question: What is the latest version of Windows?
    • Response: Windows 11 (Windows 12 does not exist yet).
  • Application Behavior in Cooperative Multitasking:
    • Question: What happens when an application like a calculator is opened under cooperative multitasking versus modern systems?
    • Response: In cooperative systems, the calculator occupies the CPU exclusively, preventing switching to other apps and risking a full system crash if it fails. In modern preemptive multitasking, multiple apps execute concurrently.
  • Operating System Shell Identification:
    • Question: What shell is used by the Windows operating system?
    • Response: File Explorer (also known as Windows Explorer).
  • Terminating System Processes vs. User Applications:
    • Question: Can Windows Explorer be terminated in Task Manager, and how does it compare to standard apps?
    • Response: Ending Windows Explorer crashes the system taskbar because it serves as the OS shell. User applications (e.g., Discord) can be terminated safely using the End Task function.