Home COMSC-171 <- Prev Next ->

OS components

Abstraction

Hardware has enormous variety and complexity. An operating system manages hardware and presents a relatively simple set of system calls to allow application programs to interact with hardware and with each other.

Kernel

execution
loaded in memory and started by bootloader
continues running in memory until system shuts down
runs in protected mode (if available)
device drivers
deal with complexities of particular devices and provide common methods of interaction
often loadable while kernel is running
process scheduler
controls access to CPU time
memory management
controls access to memory
virtual memory provides a simplified interface
I/O management
controls access to I/O devices
file systems
control access to mass storage
interrupt handlers
manage asynchronous events
security
restricts access to resources
authentication
cryptography
system calls
provide operating systen services to applications

Libraries

provide standard functions to application programs
UNIX includes standard C language functions
many libraries support other languages
often shared so one copy in memory can be used by different processes

Shell

user interface to operating system
may be character or GUI
UNIX shells run in user mode

Programming Tools

shells
UNIX shells are complete programming languages and needed to start most systems
other interpreters
UNIX includes awk for text processing
most Linux distributions include python, which may be needed by many operating system components
other interpreters are often included
compilers
most of UNIX is written in C language so C development tools are usually included

Utilities

tools for files, processes, networks, text, configuration, programming, more
The UNIX specification (POSIX) includes about 150 character utility programs
UNIX implementations usually provide many more, typically thousands
many graphic environments provide additional GUI utilities
some tools could be considered applications but are provided with the operatig system