1/20
Flashcards about CMPSC 311 Lecture Notes
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Multiuser
Supports multiple users on the system at the same time, each working with their own terminal.
Multitasking
Supports multiple programs at a time.
Portability
When moving from hardware to hardware, only the lowest layers of the software need to be reimplemented.
GNU (GNU is Not UNIX)
Free software project started by Richard Stallman in 1983, which includes gcc, gdb, bash, and emacs.
Linux
An operating system kernel developed by Linus Torvalds.
OS Kernel
Direct interaction with hardware/firmware
System Calls
Interface to the kernel
System Libraries
Wrappers around system calls
Programming Language Libraries
Extends system libraries
System Utilities
Application-independent tools.
Command Interpreter/Command Shell
User interface (in terminal program).
Application Libraries
Application-specific tools.
Applications
Complete programs for ordinary users.
Open Source Software
Distributed with a license where the copyright allows the user of the source to review, modify, and distribute with no cost to anyone.
Operating System
Software that directly interacts with the hardware, manages hardware resources, and abstracts away messy hardware devices.
OS as Abstraction Provider
A module that a program can call (with system calls) and provides a powerful API (the POSIX API).
Privilege Mode
Hardware state that restricts the operations that code may perform.
User Mode
Used for normal programs running with low privilege.
Kernel Mode
The operating system running with high privilege.
Device Driver
Software module that implements the interface to a piece of real or virtual hardware.
Kernel Modules (Loadable Kernel Modules)
Software modules that run in kernel space that can be loaded (and unloaded) on a running system, extending the kernel functionality without recompilation.