You are on page 1of 22

Operating Systems

Operating Systems
Unit 1:

OS objectives
Mode of operation
Components
Architecture
Linux
Windows XP

What Is an Operating
System?

Computer = set of able resources


processor(s), memory, I/O & communication
devices

OS
enables use of resources
manages resources

resources not limited to hardware


shift from:
pure efficient use of resources to
enhance user experience

COP 4994 - Operating Systems

Mode of operation
Kernel:
substance, core, center, essence, gist,
heart, heart and soul, inwardness,
marrow, meat, nub, pith, sum, nitty-gritty

pieces of software that perform OS


tasks
has privileged access to resources

COP 4994 - Operating Systems

Terminology
kernel mode or kernel space
user mode or user space
system call:
user mode program invokes kernel
mode functionality

COP 4994 - Operating Systems

Operating System
Components

Processor scheduler
Memory manager
I/O manager
Interprocess communication
manager
File system manager

COP 4994 - Operating Systems

Operating System
Architectures

Operating systems tend to be complex


Provide many services
Support variety of hardware and software
Operating system architectures help
manage this complexity
Organize operating system components
Specify privilege with which each component
executes

COP 4994 - Operating Systems

Operating System
Architectures

monolithic
layered
micro-kernel
distributed

COP 4994 - Operating Systems

Monolithic Architecture
Monolithic operating system
Every component contained in kernel
direct communication among all elements
highly efficient

Problems:
complexity
new devices, emerging technologies
enabling, protection

COP 4994 - Operating Systems

Monolithic Architecture

COP 4994 - Operating Systems

Layered Architecture
Groups components that perform
similar functions into layers
Each layer communicates only
with adjacent layer
System calls might pass through
many layers before completion

COP 4994 - Operating Systems

10

Layered Architecture

COP 4994 - Operating Systems

11

Microkernel Architecture
Microkernel
provides only small number of services
attempt to keep kernel small and
scalable

High degree of modularity


Extensible, portable and scalable

Increased level of inter-module


communication

COP 4994 - Operating Systems

12

Microkernel Architecture

COP 4994 - Operating Systems

13

Distributed Operating
Systems

Network operating system


Runs on one computer but allows its
processes to access remote resources

Distributed operating system


Single OS manages resources on more
than one computer

COP 4994 - Operating Systems

14

Distributed Operating
Systems

COP 4994 - Operating Systems

15

Linux Kernel Architecture


Monolithic kernel:
Contains modular components

Process management
Interprocess communication
Memory management
File system management
VFS: provides a single file system interface

I/O management
Networking

COP 4994 - Operating Systems

16

Linux Kernel Architecture

COP 4994 - Operating Systems

17

Loadable Kernel Modules


Enables code to be loaded on
demand
Reduces the kernels memory footprint

Kmod: a kernel subsystem that manages


modules without user intervention
Determines module dependencies and loads
and unloads them on demand

Problem: kernel and module versions

COP 4994 - Operating Systems

18

Windows XP Kernel
Architecture

Modified microkernel
has layers
has modular components within layer
Microkernel
Basic system mechanisms
Thread scheduling, interrupt dispatching, etc.
Abstracts hardware specifics that differ
between architectures

COP 4994 - Operating Systems

19

Windows XP Kernel
Architecture

COP 4994 - Operating Systems

20

Windows XP Kernel
Architecture
Executive

main operating system subsystems

Environment subsystems
Provide a specific computing
environment for user-mode processes:
Examples: Win32, SFU, WOW64

COP 4994 - Operating Systems

21

Agenda for next week:


Chapter 3: Process Concepts
Chapter 4: Thread Concepts
Read ahead !

COP 4994 - Operating Systems

22

You might also like