Operating System Overview Flashcards
An operating system is the ______ between applications and hardware
software
The operating system acts as a _____ ______ by managing resources and deciding between conflicting requests for efficient and fair resource use
resource allocator
The operating system acts as a _____ ______ by controlling execution of programs to prevent errors and improper use of the computer
control program
The goal of the operating system is to make the computer system ______ and ______ use the computer hardware
convenient, efficient
What are the 3 steps in the lifecycle of an OS?
- Initialize the system and load kernel with simple program via bootstrapping
- start system daemons
- Run user programs
The kernel is _____ driven
interrupt
A _____ is a program in execution
process
A _____ is a passive entity, while a ____ is an active entity
program, process
The CPU or I/O will not be kept busy all the time with _____ program
one
Most users want to run multiple _____ at the same time
programs
What is mulitprogramming?
Running multiple programs to keep the hardware busy as close to 100% of the time
Multiprogramming maintains high resource utilization by keeping multiple programs in _______ in memory
execution
___________ algorithms switches between processes when one process needs to wait for an I/O for example
Scheduling
What is protection?
Mechanisms for controlling what processes can access and what resources users can access
______ is the defense of the system against internal and external attacks
security
What are some system attacks?
- Denial-of-service
- Worms
- Viruses
- Identity theft
- Theft of service
One user has one user ________ associated with them, which includes information like name and number
identity
A user identity is associated with all ______ and _______ of that user to determine access control
files, processes
A ______ identifier allows sets of users to be defined and control managed
group
A _____ ______ allows a user to change to an ID with more rights
privilege escalation
Both the _____ and user ____ share the same hardware and software resources
kernel, code
It is ______ to keep kernel code and kernel data intact
crucial
User code can ______ hardware, OS, and other software/files
corrupt
__________ instructions (like I/O control, timer management, and interrupts) are operation that may cause harm to the OS
Privileged
To protect the system, allow only the OS to perform _______ _______
privileged instructions
In ____ mode, processes execute on behalf of the user
user
In ____ mode, processes execute on behalf of the kernel
kernel
Processes in _____ mode cannot execute privileged instructions
user
What is a mode bit?
A bit in hardware hat switches between user and kernel modes
A _____ user can only access their own files and programs
normal
A _______ can do anything
superuser
Kernel/____ mode and _____/super user modes are two separate things
user, normal
A user can access privileged instructions though ______ ______
system calls
______ _____ use software-generated interrupts to let users access to OS services
system calls
A system call asks the _____ to execute privileged instructions
OS
Describe the transition between user/kernel modes when syscalls are used
- User code calls a system call
- OS checks that everything (e.g., parameter values) is in order and legal, switch to kernel mode
- OS executes system call which may contain multiple privileged instructions
- Mode again set to user mode
System calls are typically written in __________ languages, like C or C++ and are accessed via _____
high-level, APIs
What are the 3 most common syscall APIs?
POSIX, Java, and Win32
A printf() in C calls the ________() syscall from the standard C library
write
To execute a program. all of its _________ and ____ must be in memory
instructions, data
_______ ___________ determines what is in memory and when to optimize CPU utilization
Memory management
Memory management keep track of which parts are being _____, decide which ______ and data to move into and out of memory, and _______ and ________ memory space as needed
used, processes, allocates, deallocates
The OS provides a ____ _______ _________ system, which shows a uniform, logical view of information storage
File System Management
______ are an abstract physical property translated to logical storage units
files
Files are usually organized into _______
directories
OS file activities include…
- Creating and deleting files and directories
- Primitives to manipulate files and directories
- Mapping files onto secondary storage
- Backup files onto stable (non-volatile) storage media
One layer below the File system management is the _________ _________, or manage of space in storage devices (like disks and SSDs)
Storage management
OS storage management activities include…
- Mounting and unmounting
- Partitioning, space management (allocation, deallocation)
- I/O scheduling
- Protection
________/Buffering is the act of keeping data in faster, but typically smaller storage to improve speed
caching
Caching/ Buffering can copy ___ from slower to faster storage, or faster to slower storage
data
Required data is first checked if it is in the _____ before checking slower storage
cache
What is cache coherence?
CPU hardware making sure all CPUs have the most recent value of a piece of data in their cache
_________ environments must be careful to use the most recent value of a piece of data for operations, no matter whether it is stored in disk, main memory, cache, or register
multitasking
______ allows an OS to run applications within other OSes
Virtualization
A benefit of virtualization is that there are lower _______ costs and easier _________
hardware, management
Some problems of virtualization include lower ________, data ________, and security and _______
performance, migration, privacy
What does VMM stand for?
virtual machine manager
_______ computing is computing with a collection of separate systems networked together with something like LAN
distributed
A ______ OS provides features between systems across the network
network