Operating Systems
Introducti
on to
Operating
Systems
What is an OS?
Set of programs controlling all other
programs
Manages hardware: memory, CPU, devices,
file system
Purpose:
Provides abstraction between hardware
and software
Manages low-level tasks: process, memory,
interrupt, file handling
Examples:
PCs: Windows, Linux, macOS
Mobile: iOS, Android
Embedded: routers, cars, appliances
Evolution of Operating Systems
• Single program execution
• Batch processing with punched cards/tape
Early Systems
(1950s):
• IBM OS/360 introduced
• Multitasking and multi-user support
1960s:
• Minimalist OS (e.g., CP/M, MS-DOS)
Personal
Computers:
• Servers: Windows Server, Linux, UNIX
• End-user: Windows, macOS, iOS, Android
Modern OS:
OS Building Blocks
Kernel:
Core of OS
Manages
processes, file
system, hardware
access
Drivers:
Connect
hardware devices
to kernel
Utilities:
UI, configuration
tools, editors,
browsers
Applications:
Use system calls
via APIs to
interact with OS
Process Scheduling
• Goal: Illusion of parallel execution
• Preemptive Multitasking:
• CPU time divided into short slices
• OS decides when to switch processes
• Challenge:
• Balance between overhead and responsiveness
Scheduling Algorithms
• First-Come, First-Served (FCFS)
• Shortest Job First (SJF)
• Shortest Remaining Time First (SRTF)
• Round Robin (RR)
• Priority Scheduling
• Multilevel Queue Scheduling
• Multilevel Feedback Queue (MLFQ)
File Systems
• Purpose: Virtualize storage management
• Common File Systems:
• FAT/FAT32 (removable media)
• NTFS (Windows)
• Ext4 (Linux)
• UFS/VxFS (UNIX)
• Journaling:
• Tracks changes for recovery (e.g., NTFS, Ext4)
• Mounting:
• OS recognizes disk and file system
• File Sharing:
• Protocols: NFS (UNIX), SMB/CIFS (Windows
APIs & System Calls
• System Call: Low-level request to OS
• Example:
• read() in C READ() system call
→
• OS Handles:
• File lookup, disk access, memory copy
• APIs:
• Group system calls for programmers
• Provide hardware-independent interface
Device Drivers & Memory Management
• Software to control hardware
• Provide API to OS
Device
Drivers:
• Allocates/deallocates memory
• Handles paging, swapping, caching, DMA
• Manages virtual memory and
overcommitment
Memory
Managemen
t:
Shells & Configuration
• Shell Types:
• CLI (e.g., bash, cmd.exe)
• GUI (e.g., Windows, X Window)
• Configuration Storage:
• Windows: Registry
• UNIX/Linux: Text files in /etc
• AIX: ODM database
Popular Operating Systems (1)
z/OS (IBM
Mainframe):
• Batch
processing,
high
compatibility
• Supports
thousands of
interactive
users
IBM i (OS/400):
• Midrange
systems
• Built-in DB,
security,
communication
s
OpenVMS:
• Robust, stable,
used in critical
systems
• High uptime,
secure
Popular Operating Systems (2)
• Multi-user, multitasking
• Hierarchical file system, pipes, small tools
• Flavors: AIX, Solaris, HP-UX
UNIX:
• UNIX-like, open source
• Kernel + GNU tools = distributions
• Runs on many platforms
Linux:
• FreeBSD, NetBSD, OpenBSD (security-focused)
BSD
Variants:
Windows Overview
Evolution:
Windows 1.0 →
Windows NT →
Windows 10
Shift from DOS-based
to standalone OS
Strengths:
Large software
ecosystem
Active Directory,
business solutions
Weaknesses
(Historically):
Stability & security
issues
Backward
compatibility
challenges
Modern
Windows:
Improved stability &
security
Closed source,
Microsoft support
End-User & Special Purpose OS
• Windows (desktop)
• macOS (BSD-based)
• Ubuntu (Linux)
• iOS & Android (mobile)
End-User
OS:
• Real-Time OS (RTOS) e.g., QNX
• Embedded OS (routers, firewalls, IoT)
Special
Purpose
OS:
OS Availability – Failover Clustering
• Cluster:
• Group of servers (nodes) with identical OS
• Provides high availability
• Components:
• Resource pool: app, scripts, virtual IP, storage
• Heartbeat network for node monitoring
• Shared Storage:
• ‘Shared nothing’ vs. DLM clustering
• N+1 vs N+N Clusters:
• Spare node vs. distributed capacity
OS Performance
• Paging vs. swapping (avoid swapping)
• Disk caching improves performance
Memory Management:
• Smaller kernel = more memory, fewer patches, faster
boot
• Recompilation possible in UNIX/Linux
• Not in Windows
Kernel Tuning:
OS Security
Patchin
g
Regular
patches,
hot-fixes,
service
packs
Test
before
deployme
nt
Hardenin
g
Remove
unnecessa
ry
services,
accounts,
protocols
Use
templates
for
consistenc
y
Virus
Scanning
:
Configure
based on
risk
analysis
Host-
Based
Firewalls:
Extra layer
of
protection
User Account
Limitation:
Secure
superuser
accounts
Use
encrypted
passwords
, avoid
defaults

IT-Infrastructure-Chapter-9-Operating Systems.pptx

  • 1.
  • 2.
    Introducti on to Operating Systems What isan OS? Set of programs controlling all other programs Manages hardware: memory, CPU, devices, file system Purpose: Provides abstraction between hardware and software Manages low-level tasks: process, memory, interrupt, file handling Examples: PCs: Windows, Linux, macOS Mobile: iOS, Android Embedded: routers, cars, appliances
  • 3.
    Evolution of OperatingSystems • Single program execution • Batch processing with punched cards/tape Early Systems (1950s): • IBM OS/360 introduced • Multitasking and multi-user support 1960s: • Minimalist OS (e.g., CP/M, MS-DOS) Personal Computers: • Servers: Windows Server, Linux, UNIX • End-user: Windows, macOS, iOS, Android Modern OS:
  • 4.
    OS Building Blocks Kernel: Coreof OS Manages processes, file system, hardware access Drivers: Connect hardware devices to kernel Utilities: UI, configuration tools, editors, browsers Applications: Use system calls via APIs to interact with OS
  • 5.
    Process Scheduling • Goal:Illusion of parallel execution • Preemptive Multitasking: • CPU time divided into short slices • OS decides when to switch processes • Challenge: • Balance between overhead and responsiveness
  • 6.
    Scheduling Algorithms • First-Come,First-Served (FCFS) • Shortest Job First (SJF) • Shortest Remaining Time First (SRTF) • Round Robin (RR) • Priority Scheduling • Multilevel Queue Scheduling • Multilevel Feedback Queue (MLFQ)
  • 7.
    File Systems • Purpose:Virtualize storage management • Common File Systems: • FAT/FAT32 (removable media) • NTFS (Windows) • Ext4 (Linux) • UFS/VxFS (UNIX) • Journaling: • Tracks changes for recovery (e.g., NTFS, Ext4) • Mounting: • OS recognizes disk and file system • File Sharing: • Protocols: NFS (UNIX), SMB/CIFS (Windows
  • 8.
    APIs & SystemCalls • System Call: Low-level request to OS • Example: • read() in C READ() system call → • OS Handles: • File lookup, disk access, memory copy • APIs: • Group system calls for programmers • Provide hardware-independent interface
  • 9.
    Device Drivers &Memory Management • Software to control hardware • Provide API to OS Device Drivers: • Allocates/deallocates memory • Handles paging, swapping, caching, DMA • Manages virtual memory and overcommitment Memory Managemen t:
  • 10.
    Shells & Configuration •Shell Types: • CLI (e.g., bash, cmd.exe) • GUI (e.g., Windows, X Window) • Configuration Storage: • Windows: Registry • UNIX/Linux: Text files in /etc • AIX: ODM database
  • 11.
    Popular Operating Systems(1) z/OS (IBM Mainframe): • Batch processing, high compatibility • Supports thousands of interactive users IBM i (OS/400): • Midrange systems • Built-in DB, security, communication s OpenVMS: • Robust, stable, used in critical systems • High uptime, secure
  • 12.
    Popular Operating Systems(2) • Multi-user, multitasking • Hierarchical file system, pipes, small tools • Flavors: AIX, Solaris, HP-UX UNIX: • UNIX-like, open source • Kernel + GNU tools = distributions • Runs on many platforms Linux: • FreeBSD, NetBSD, OpenBSD (security-focused) BSD Variants:
  • 13.
    Windows Overview Evolution: Windows 1.0→ Windows NT → Windows 10 Shift from DOS-based to standalone OS Strengths: Large software ecosystem Active Directory, business solutions Weaknesses (Historically): Stability & security issues Backward compatibility challenges Modern Windows: Improved stability & security Closed source, Microsoft support
  • 14.
    End-User & SpecialPurpose OS • Windows (desktop) • macOS (BSD-based) • Ubuntu (Linux) • iOS & Android (mobile) End-User OS: • Real-Time OS (RTOS) e.g., QNX • Embedded OS (routers, firewalls, IoT) Special Purpose OS:
  • 15.
    OS Availability –Failover Clustering • Cluster: • Group of servers (nodes) with identical OS • Provides high availability • Components: • Resource pool: app, scripts, virtual IP, storage • Heartbeat network for node monitoring • Shared Storage: • ‘Shared nothing’ vs. DLM clustering • N+1 vs N+N Clusters: • Spare node vs. distributed capacity
  • 16.
    OS Performance • Pagingvs. swapping (avoid swapping) • Disk caching improves performance Memory Management: • Smaller kernel = more memory, fewer patches, faster boot • Recompilation possible in UNIX/Linux • Not in Windows Kernel Tuning:
  • 17.