1/65
Flashcards on Operating Systems
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Operating System
A program that acts as an intermediary between computer users and computer hardware.
Goals of an Operating System
Execute user programs and make solving user problems easier; Make the computer system convenient to use; Use the computer hardware in an efficient manner.
Hardware
CPU, memory, I/O devices
Operating System (Component)
Controls and coordinates use of hardware among various applications and users.
Applications
Define ways in which the system resources are used to solve user problems (e.g., browsers, games).
Users
People or other systems that interact with the computer system.
Operating System as a Resource Allocator
Manages all resources and decides between conflicting requests for efficient and fair resource use.
Operating System as a Control Program
Controls execution of programs to prevent errors and improper use of computer.
Kernel
The one program running at all times on the computer.
Bootstrap Program
Loaded at power-up or reboot and initializes all aspects of the system; typically stored in ROM or EPROM (firmware).
BIOS
Basic Input/Output System, used in older PCs for computer startup.
UEFI
Unified Extensible Firmware Interface, used in modern systems for computer startup.
Computer System Organization
Connects CPUs and device controllers through a common bus, providing access to shared memory.
Device Controller
In charge of a particular device type and has a local buffer.
Interrupt
A signal sent to the CPU to pause its current task and handle an urgent event.
Hardware Interrupts
Generated by devices (e.g., printer finishes a job).
Software Interrupts (Traps/Exceptions)
Generated by programs (e.g., division by zero, system calls).
Interrupt Vector
Contains the addresses of all Interrupt Service Routines (ISRs).
Blocking I/O
CPU sends I/O request and waits; CPU does nothing until I/O is done.
Non-Blocking I/O (Asynchronous)
Control returns to program after I/O starts; CPU gets interrupted when I/O is done.
Device-Status Table
Tracks each device’s type, address, and state; used by the OS to manage I/O devices.
Dual Mode Operation
CPU has a mode bit (0 = kernel mode, 1 = user mode) to restrict dangerous actions.
User Mode
Restricted access (e.g., can’t directly read/write hardware).
Kernel Mode
Full control over hardware (e.g., managing memory, devices).
Main Memory (RAM)
Direct CPU Access, but volatile (loses data when power is off)
Secondary Storage (HDD/SSD)
Non-volatile – data persists even when power is off.
Speed vs. Cost in Storage Hierarchy
Faster storage is more expensive per GB.
Caching
Copy frequently used data up the storage hierarchy.
Device Drivers
Uniform interface between OS and hardware.
Cache
Small, ultra-fast memory storing frequently used data.
Cache Hit
Data found in cache (no RAM trip needed!).
Cache Miss
Data fetched from RAM.
Symmetric Multiprocessing
Multiple CPUs share the system bus and memory.
Clustered Systems
Multiple systems working together, usually sharing storage.
Multiprogramming
Organizes jobs so CPU always has one to execute.
Timesharing (Multitasking)
CPU switches jobs so frequently that users can interact with each job while it is running.
Process
A program in execution.
Single-Threaded Process
Single program counter specifying location of next instruction to execute.
Multi-Threaded Process
One program counter per thread.
Memory Management
What is in memory and when; optimizes CPU utilization and computer response to users.
Storage Management
Abstracts physical properties to logical storage unit - file.
Mass-Storage Management
Used to store data that does not fit in main memory or data that must be kept for a long period of time.
Protection
Any mechanism for controlling access of processes or users to resources defined by the OS.
Security
Defense of the system against internal and external attacks.
Singly Linked List
Data structure where each node points to the next node in the sequence.
Doubly Linked List
Data structure where each node points to both the next and previous nodes in the sequence.
Network Computers
Thin clients that provide web access to internal systems.
Mobile Computers
Use IEEE 802.11 wireless or cellular data networks for connectivity.
Distributed Computing
Collection of separate, possibly heterogeneous, systems networked together.
Network
A communications path (TCP/IP most common).
Network Operating System
Provides features between systems across network (communication scheme allows systems to exchange messages).
Compute-Server System
Provides interface to client to request services (i.e., database).
File-Server System
Provides interface for clients to store and retrieve files.
Peer-to-Peer Computing
All nodes are considered peers and may each act as client, server, or both.
Virtualization
Allows operating systems to run applications within other OSes.
Emulation
Source CPU type is different from target type.
Virtualization
OS natively compiled for CPU, running guest OSes also natively compiled.
Cloud Computing
Delivers computing, storage, even apps as a service across a network.
Public Cloud
Available via Internet to anyone willing to pay.
Private Cloud
Run by a company for the company’s own use.
Hybrid Cloud
Includes both public and private cloud components.
Software as a Service (SaaS)
One or more applications available via the Internet (i.e., word processor).
Platform as a Service (PaaS)
Software stack ready for application use via the Internet (i.e., a database server).
Infrastructure as a Service (IaaS)
Servers or storage available over Internet (i.e., storage available for backup use).
Real-Time OS
Has well-defined fixed time constraints (processing must be done within constraint).
Open-Source Operating Systems
Operating systems made available in source-code format rather than just binary closed-source.