Midterm 1 Flashcards

1
Q

(Kernel) Module

A

Pieces of code that can be loaded and unloaded from the kernel as needed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Aging

A

A solution to scheduling starvation that involves gradually increasing the priority of threads as they wait for CPU time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Application program

A

A program designed for end-user execution, such as a word processor, spreadsheet, compiler, or Web browser

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Application Programming Interface (API)

A

A set of commands, functions, and other tools that can
be used by a programmer in developing a program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Asymmetric Multiprocessing

A

A simple multiprocessor scheduling algorithm in which only one processor accesses the system data structures and others run user threads, reducing the need for data
sharing. A boss processor controls the system; the other processors either look to the boss for instruction or have predefined tasks.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Asynchronous cancellation

A

Stopping a thread from running at any point

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Atomic

A

Cannot be interrupted by another instruction. If two instructions are called at the same time, both instructions get executed correctly

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Batch interface

A

A method for giving commands to a computer in which commands are entered into files, and the files are executed, without any human interaction.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Binary semaphore

A

A semaphore of values 0 and 1 that limits access to one resource (acting similarly to a mutex lock).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Block device

A

An I/O device that is randomly accessible, with block-size chunks being the smallest I/O unit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Blocking

A

In interprocess communication, a mode of communication in which the sending process is blocked until the message is received by the receiving process or by a mailbox and the receiver blocks until a message is available. In I/O, a request that does not return until the I/O completes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Blocking receive

A

A process must get a message before continuing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Blocking send

A

The sent message must be read by another process before the current process can continue

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Bootstrap loader

A

The small program that loads the kernel as part of the bootstrap procedure

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Bounded buffer

A

A buffer with a fixed size

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Bounded buffer problem

A

Producers write to a buffer with a fixed capacity and consumers read from the buffer. Producers wait if the buffer is full and consumers wait if the buffer is empty

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Bounded waiting

A

A practice that places limits on the time a thread or process is forced to wait for something.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

BSD UNIX

A

A UNIX derivative based on work done at the University of California at Berkeley (UCB).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Buffering

A

Putting things in a buffer, a memory area that stores data being
transferred (e.g., between two devices or between a device and a process)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Bus

A

A communication system; e.g., within a computer, a bus connects various components, such as the CPU and I/O devices, allowing them to transfer data and commands

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Busy waiting

A

A practice that allows a thread or process to use CPU time continuously while waiting for something. An I/O loop in which an I/O thread continuously reads status information while waiting for I/O to complete

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Byte

A

8 bits

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Cache Coherency

A

The coordination of the contents of caches such that an update to a value stored in one cache is immediately reflected in all other caches that hold that value.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Cache Mangement

A

The management of a cache’s contents

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Caching

A

The use of temporary data storage areas to improve performance

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Cancellation point

A

With deferred thread cancellation, a point in the code at which it is safe to terminate the thread.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Character-stream device

A

An I/O device that has a character (byte) as its smallest I/O unit and takes in a stream of characters

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

Child process

A

The process created when the parent process is forked

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Client System

A

A computer that uses services from other computers (such as a web client).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Closed-Source

A

An operating system or other program available only in compiled binary code format.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

Clustered System

A

A system that gathers together multiple CPUs. Clustered systems differ from multiprocessor systems in that they are composed of two or more individual system —or nodes— joined together

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

Command interpreter

A

The operating system component that interprets user commands and causes actions based on them.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

CompareAndSwap operation

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

Compute-Server System

A

A server that provides an interface to which a client can send a request for an action (e.g., read data). In response, the server executes the action and sends the results to the client

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

Computing Core

A

Within a CPU, the component that executes instructions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

Condition variable

A

Variable in a monitor that tells the monitor to wait if it can’t continue. x.wait() to block and x.signal() to wake up another process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

Condition variable signal operation

A

Wakes up a thread that is blocked

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

Condition variable wait operation

A

Blocks the monitor from the inside

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

Contention scope

A

If a thread has process contention scope it compete with other threads in the same process for the CPU. If the thread has system contention scope, it competes for the CPU with threads from other processes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

Context switch

A

The switching of the CPU from one process or thread to another; requires performing a state save of the current process or thread and a state restore of the other.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

Control register

A

A device I/O register where commands are placed by the computer

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

Controller

A

A special processor that manages I/O devices.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

Convoy effect

A

A scheduling phenomenon in which a number of threads wait for one thread to get off a core, causing overall device and CPU utilization to be suboptimal.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

Counting semaphore

A

A semaphore that has a value between 0 and N, to control access to a resource with N instances.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

CPU burst

A

Scheduling process state in which the process executes on CPU

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

CPU scheduler

A

Kernel routine that selects a thread from the threads that are ready to execute and allocates a core to that thread.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
47
Q

CPU utilization

A

How often a CPU runs a process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
48
Q

CPU-bound process

A

A process that spends more time executing on CPU than it does performing I/O.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
49
Q

CPU-I/O burst cycle

A

Processes alternate between waiting for I/O and running

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
50
Q

Critical section

A

A section of code responsible for changing data that must only be executed by one thread or process at a time to avoid a race condition.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

Critical section problem

A

The problem of only allowing one process/thread into a critical section at once

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
52
Q

Data section

A

The data part of a program or process; it contains global variables

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
53
Q

Data-in register

A

A device I/O register where data is placed to be sent to the device.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
54
Q

Data-out register

A

A device I/O register where data is placed by the device to be read by the computer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
55
Q

Deadlock

A

The state in which two processes or threads are stuck waiting for an event that can only be caused by one of the processes or threads.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
56
Q

Default signal handler

A

The signal handler that receives signals unless a user-defined signal handler is provided by a process.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
57
Q

Deferred cancellation

A

A thread should only be cancelled at certain cancellation points (cancelling at an arbitrary point during execution could cause problems)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
58
Q

Degree of multiprogramming

A

The number of processes in memory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
59
Q

Deterministic modelling

A

A type of analytic evaluation that takes a particular predetermined workload and defines the performance of each algorithm for that workload.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
60
Q

Device driver

A

An operating system component that provides uniform access to various devices and manages I/O to those devices

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
61
Q

Dining philosophers problem

A

Philosophers are sitting at a table and alternate between thinking and eating. They each need two chopsticks to eat and share each chopstick with the philosopher next to them. Only a certain number of philosophers can eat at once. There is a possibility of deadlock if each philosophers picks up a chopstick at the same time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
62
Q

Direct communication

A

In interprocess communication, a communication mode in which each process that wants to communicate must explicitly
name the recipient or sender of the communication.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
63
Q

Direct-Memory access

A

A resource conserving and performance-improving operation for device controllers allowing devices to transfer large amounts of data directly to and from main memory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
64
Q

Dispatcher

A

The kernel routine that gives control of a core to the thread selected by the scheduler.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
65
Q

Double buffering

A

The copying of data twice (e.g., from a device to the kernel and then from the kernel to a process’s address space), or the
use of two buffers to decouple producers and consumers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
66
Q

Dual Mode Operation

A

Allowing processes to run in either kernel mode or user mode

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
67
Q

EEPROM

A

Electrically erasable programmable
read-only memory; a type of firmware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
68
Q

Entry section

A

The section of code within a process that requests permission to enter its critical section.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
69
Q

Exception

A

A software-generated interrupt caused either by an error (such as division by zero or invalid memory access) or by a specific request from a user program than an operating-system service be performed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
70
Q

Exit section

A

The section of code within a process that cleanly exits the critical section.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
71
Q

Exponential average

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
72
Q

Fault Tolerant

A

A system that can suffer a failure of any single component and still continue operation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
73
Q

File-Server System

A

A server that provides a file-system interface where clients can create, update, read, and delete fi les (e.g., a web server that delivers files to clients running web browsers)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
74
Q

Firmware

A

Software stored in ROM or EEPROM
for booting the system and managing low level hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
75
Q

First come first served scheduling

A

The simplest scheduling algorithm. The thread that requests a core first is allocated the core first.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
76
Q

GNU General Public License (GPL)

A

A license agreement that codifies copylefting (allowing and requiring open sourcing of the associated programs); a common license under which free software is released

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
77
Q

GNU/Linux

A

An open-source operating system composed of components contributed by the GNU foundation and Linus Torvalds, as well as many others

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
78
Q

Graceful Degradation

A

The ability of a system to continue providing service proportional to the level of surviving hardware

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
79
Q

Graphical user interface

A

A computer interface comprising a window system with a
pointing device to direct I/O, choose from menus, and make selections and, usually, a keyboard to enter text

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
80
Q

Group ID

A

Similar to a user identifier, but used to identify a group of users to determine access rights.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
81
Q

Hard affinity

A

The situation in which an operating system allows a process’s threads to run on the same processor at all times (as opposed to being moved to various processors).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
82
Q

Hard real-time systems

A

Systems in which a thread must be serviced by its deadline; service after the deadline has expired is the same as no
service at all.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
83
Q

Hardware

A

The CPU, memory devices, input/output (I/O) devices, and any other physical components that are part of a computer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
84
Q

Heap section

A

The section of process memory that is dynamically allocated during process run time; it stores temporary variables.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
85
Q

High Availability Service

A

Describes a service that will continue even if one or more systems in the cluster fail.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
86
Q

High Performance Computing

A

A computing facility designed for use with a large number of resources to be used by software designed for parallel operation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
87
Q

Homogenous / heterogeneous processors

A

Homogeneous- all processor cores are identical.
Heterogeneous- processor cores are different

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
88
Q

I/O burst

A

Scheduling process state in which the CPU performs I/O.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
89
Q

I/O protection

A

User level code should not be able to talk directly to hardware, so all I/O instructions are privileged. If a user program tries to execute a privileged instruction, a trap is issued.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
90
Q

I/O-bound process

A

A process that spends more of its time doing I/O than doing computations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
91
Q

Indirect communication

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
92
Q

Input/Output Devices

A

Devices that take in input or display output

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
93
Q

Inter-process communication

A

Communication between processes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
94
Q

Interactive Computer System

A

Describes a type of computing that provides direct communication between the user and the system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
95
Q

Interrupt

A

A hardware mechanism that enables a device to notify the CPU that it needs attention.

96
Q

Interrupt priority level

A

Prioritization of interrupts to indicate handling order

97
Q

Interrupt vector

A

An operating-system data structure indexed by interrupt address and pointing to the interrupt handlers. A kernel memory data structure that holds the addresses of the interrupt service routines for the various devices

98
Q

Interrupt-handler routine

A

An operating system routine that is called when an interrupt signal is received.

99
Q

Interrupt-request line

A

The hardware connection to the CPU on which interrupts are signaled

100
Q

Job Pool

A

The location where jobs are kept on disk
while waiting for main memory to become available

101
Q

Job Scheduling

A

The task of choosing which jobs to load into memory and execute.

102
Q

Kernel

A

The operating system component running on the computer at all times after system boot

103
Q

Kernel Mode

A

A CPU mode in which all instructions are enabled. The kernel runs in this mode

104
Q

Kernel threads

A

Threads running in kernel mode

105
Q

Layered approach (to OS structure)

A

A kernel architecture in which the operating system is separated into a number of layers (levels); typically, the bottom layer (layer 0) is the hardware, and the highest (layer N) is the
user interface.

106
Q

Load ballancing

A

The movement of jobs or network packets between various components (say, computers in a network) to distribute the load or route around failures. Load balancing attempts to keep the workload evenly distributed across all processors in an SMP system.

107
Q

Local Area Network (LAN)

A

A network that connects computers within a room, a building, or a campus.

108
Q

Magnetic Disk

A

A storage location using magnetic tape to store data

109
Q

Mainframe

A

The largest class of computers (along with supercomputers), hosting hundreds of users and many and/or large jobs

110
Q

Many-to-many model

A

Smaller number of kernel level threads mapped to more user level threads

111
Q

Many-to-one model

A

Lots of user level threads executed via a single kernel thread

112
Q

Maskable interrupt

A

Describes an interrupt that can be delayed or blocked (such as when the kernel is in a critical section).

113
Q

Memory

A

Volatile storage within a computer system

114
Q

Memory barrier

A

Computer instructions that force any changes in memory to be propagated to all other processors in the system.

115
Q

Memory model

A

Computer architecture memory guarantee, usually either strongly ordered or weakly ordered.

116
Q

Memory stall

A

An event that occurs when a thread is on CPU and accesses memory content that is not in the CPU’s cache. The thread’s execution stalls while the memory content is fetched.

117
Q

Memory-mapped I/O

A

A file-access method in which a file is mapped into the process memory space so that standard memory access instructions read and write the contents of the fi le; an alternative to the use of read() and write() calls

118
Q

Message passing

A

In interprocess communication, a method of sharing data in which messages are sent and received by processes. Packets of information in predefi ned formats are moved between processes or between computers.

119
Q

Microkernel

A

An operating-system structure that removes all nonessential components from the kernel and implements them as system and userlevel programs.

120
Q

Minicomputer

A

A mid-sized computer, smaller than a mainframe but larger (in resources and users) than a workstation.

121
Q

Mode Bit

A

A CPU status bit used to indicate the current mode: kernel (0) or user (1)

122
Q

Monitor

A

A high-level language synchronization construct that protects variables from race conditions.

123
Q

Muliprogramming

A

A technique that increases CPU utilization by organizing jobs (code and data) so that the CPU always has a job to execute.

124
Q

Multi-threaded process

A

A term describing a process or program with multiple threads of control, allowing multiple simultaneous execution points

125
Q

Multicore processor

A

Multiple processing cores within the same CPU chip

126
Q

Multilevel feedback queue scheduling algorithm

A

A scheduling algorithm that allows a process to move between
queues.

127
Q

Multiprocessor System

A

Systems that have two or more hardware processors (CPU cores) in close communication, sharing the computer bus and sometimes the clock, memory, and peripheral devices.

128
Q

Mutual exclusion

A

A property according to which only one thread or process can be executing code at once.

129
Q

Network

A

In the simplest terms, a communication path between two or more systems.

130
Q

New (process state)

A

A process starts in the new state when it is created, before it is ready to run

131
Q

Non-blocking send

A

A process/thread will try to send a message multiple times if needed, instead of blocking

132
Q

Non-preemptive scheduler

A

The scheduler does not stop a process from running if it has started

133
Q

Non-voluntary (context switch)

A

The CPU forces a context switch if a process doesn’t give up the CPU automatically

134
Q

Nonmaskable interrupt

A

An interrupt that cannot be delayed or blocked (such as an unrecoverable memory error)

135
Q

Nonvolatile Storage

A

Storage in which data will not be lost in a power outage or similar event

136
Q

NVRAM

A

DRAM with battery or other backup power, rendering it nonvolatile

137
Q

One-to-many model

A

One user level thread to many kernel level threads

138
Q

Open Source Operating Systems

A

An operating system or other program available in source-code format rather than as compiled binary code.

139
Q

Operating System

A

A program that manages a computer’s hardware, provides a basis for application programs, and acts as an intermediary between the computer user and the computer
hardware

140
Q

Parallelization

A

The process of dividing a program into separate components that run in parallel on individual cores in a computer or computers in a cluster.

141
Q

Parent process

A

A process that creates a child process

142
Q

Peterson’s solution

A

A solution to the critical sections problem that used to work but does not work anymore. It has busy waiting, has to be extended for each additional thread, and might not actually work.

143
Q

Polling

A

An I/O loop in which an I/O thread continuously reads status information waiting for I/O to complete.

144
Q

Preemptive scheduler

A

The scheduler will stop a process from running if another process is ready to run and has higher priority

145
Q

Priority inheritance

A

A low priority process briefly gets high priority if a high priority process needs the lower priority process in order to run

146
Q

Priority inversion

A

When a low or medium priority level process doesn’t run, so it prevents a higher priority process from running

147
Q

Priority scheduling

A

A scheduling algorithm in which a priority is associated with each thread and the free CPU core is allocated to the thread with the highest priority.

148
Q

Privileged Instruction

A

Instructions that can execute only if the CPU is in in kernel mode

149
Q

Process

A

A program loaded into memory and executing.

150
Q

Process contention scope

A

Threads compete for the CPU with other threads from the same process

151
Q

Process context

A

The current running process and its state

152
Q

Process control block

A

A per-process kernel data structure containing many pieces of information associated with the process.

153
Q

Process dispatch

A

The dispatcher plugs in the state of a given process during a context switch

154
Q

Process scheduler

A

A scheduler that selects an available process (possibly from a set of several processes) for execution on a CPU.

155
Q

Process scheduling

A

Choosing which processes will run and in what order they will run

156
Q

Process state

A

Information about the process such as what code its running and the values of variables

157
Q

Process synchronization

A

Coordination of access to data by two or more threads or processes.

158
Q

Processor affinity

A

A kernel scheduling method in which a process has an affinity for (prefers) the processor on which it is currently running.

159
Q

Program counter

A

A CPU register indicating the main memory location of the next instruction to load and execute.

160
Q

Programmable interval timer

A

A hardware timer provided by many CPUs.

161
Q

Programmed I/O

A

A method of transferring data between a CPU and a peripheral device in which data are transferred one byte at a time

162
Q

Progress

A

Processes make progress when they are not in starvation or deadlock

163
Q

Pthreads

A

The POSIX standard (IEEE 1003.1c) defining an API for thread creation and synchronization (a specification for thread behavior, not an implementation).

164
Q

Pull migration

A

Migration that occurs when an idle processor pulls a waiting thread from a busy processor

165
Q

Push migration

A

Migration in which a task periodically checks the load on each processor and, if it finds an imbalance, evenly distributes the load by moving (or pushing) threads from overloaded to idle or less busy processors.

166
Q

Queueing models

A

Mathematical models of process behavior used to derive expected performance

167
Q

Race condition

A

When the correctness of the program depends on the timing of execution

168
Q

Random Access Memory (RAM)

A

Rewritable memory, also called main memory. Most programs run from RAM, which is managed by the kernel

169
Q

Read-Only Memory (ROM)

A

A storage device whose contents are not modifiable.

170
Q

Readers-writers problem

A

Synchronization problem

171
Q

Ready (process state)

A

When a process is waiting to execute

172
Q

Ready queue

A

The set of processes ready and waiting to execute.

173
Q

Real Time Operating System

A

Systems used when rigid time requirements have been placed on the operation of a processor or the flow of data; often used as control devices in dedicated applications.

174
Q

Remainder section

A

Whatever code remains to be processed after the critical and exit sections.

175
Q

Resource Utilization

A

The amount of a given resource (hardware or software) that is being used

176
Q

Response time

A

The amount of time it takes the system to respond to user action

177
Q

Round-robin scheduling

A

Each process gets a chance to run after a certain amount of time

178
Q

Running (process state)

A

When a process is running on the CPU

179
Q

Secondary Storage

A

A storage system capable of holding large amounts of data permanently; most commonly, HDDs and NVM devices.

180
Q

Semaphore

A

An integer variable that, apart from initialization, is accessed only through two standard atomic operations: wait() and signal().

181
Q

Semaphore signal/release operation

A

Increments the semaphore

182
Q

Semaphore wait/acquire operation

A

Waits until the semaphore has a positive value, decrements, then proceeds

183
Q

Server System

A

A system providing services to other computers (e.g., a web server).

184
Q

Shared memory (for communication)

A

In interprocess communication, a section of memory shared by multiple processes and used for message passing.

185
Q

Shell

A

One of the command interpreters on a system with multiple command interpreters to choose from.

186
Q

Short-term scheduler

A

Decides which processes execute next on the CPU

187
Q

Shortest remaining time scheduling

A

A scheduling algorithm that gives priority to the thread with the shortest remaining time until completion.

188
Q

Signal and wait (in a monitor)

A

Wait by blocking inside the monitor

189
Q

Signal-and-continue (in a monitor)

A

Wake up a blocked thread

190
Q

Single-Processor System

A

A system with only one processor

191
Q

Single-threaded process

A

A process or program that has only one thread of control (and so executes on only one core at a time).

192
Q

Soft affinity

A

An operating system’s policy of attempting to keep a process running on the same processor but not guaranteeing that it will do so.

193
Q

Soft real-time systems

A

Systems that provide no guarantee as to when a critical real-time thread will be scheduled; they guarantee only that the thread will be given preference over noncritical threads

194
Q

Software interrupt/trap

A

An interrupt/trap that stops software from running temporarily

195
Q

Solaris

A

A UNIX derivative that is the main operating system of Sun Microsystems (now owned by Oracle Corporation). There is an active open source version called Illumos

196
Q

Spinlock

A

A locking mechanism that continuously uses the CPU while waiting for access to the lock.

197
Q

Spooling

A

Using spools, or buffers that holds output for a device
(such as a printer) that cannot accept interleaved
data streams

198
Q

Stack section

A

The section of process memory that contains the stack; it contains activation records and other temporary data.

199
Q

Starvation

A
200
Q

state restore (in context switch)

A

Copying a process’s context from its saved location to the CPU registers in preparation for continuing the process’s execution.

201
Q

Status register

A

A device I/O register in which status is indicated.

202
Q

Symmetric Multiprocessing (SMP)

A

Multiprocessing in which each processor performs all tasks, including operating-system tasks and user processes. Also, a multiprocessor scheduling method in which each processor is self-scheduling and may run kernel threads or user-level threads.

203
Q

System boot

A

Load a boot loader from secondary storage, bootstrap loader copies kernel into memory and starts executing it, kernel initializes data structures, kernel mode starts running system utilities

204
Q

System Call

A

Software-triggered interrupt allowing a process to request a kernel service

205
Q

System program

A

A program associated with the operating system but not necessarily part of the kernel

206
Q

Target thread (for cancellation)

A

The thread being cancelled

207
Q

Tertiary Storage

A

A type of storage that is slower and cheaper than main memory or secondary storage; frequently magnetic tape or optical disk

208
Q

Text section

A

The executable code of a program or process

209
Q

Thread cancellation

A

Termination of a thread before it has completed.

210
Q

Thread library

A

A programming library that provides programmers with an API for creating and managing threads.

211
Q

Thread pool

A

A number of threads created at process startup and placed in a pool, where they sit and wait for work.

212
Q

Thread scheduling

A

Deciding which thread will run at what time

213
Q

Throughput

A

Generally, the amount of work done over time. In scheduling, the number of threads completed per unit time.

214
Q

Time quantum

A

The amount of time a thread runs in round robin scheduling before another thread starts running

215
Q

Time Sharing

A

A practice in which the CPU executes multiple jobs by switching among them, but the switches occur so frequently that the users can interact with the processes.

216
Q

Timer Interrupt

A

An interrupt sent when a process has been using the CPU for too long

217
Q

Trap

A

A software interrupt. The interrupt can be caused either by an error (e.g., division by zero or invalid memory access) or by a specific request from a user program that an operating-system service be performed.

218
Q

Turnaround time

A

The amount of time from when a process enters the queue to when it finishes running

219
Q

Unbounded buffer

A

A buffer with no practical limit on its memory size.

220
Q

UNIX signal

A

One process sends a signal to another process. Signal handler is dispatched when the signal is received (upcall)

221
Q

Upcall

A

A threading method in which the kernel sends a signal to a process thread to communicate an event.

222
Q

Upcall handler

A

A function in a process that handles upcalls.

223
Q

User ID

A

A unique numerical user identifier.

224
Q

User interface

A

A method by which a user interacts with a computer.

225
Q

User Mode

A

A CPU mode for executing user processes in which some instructions are limited or not allowed

226
Q

User threads

A

Threads running in user mode

227
Q

User-defined signal handler

A

The signal handler created by a process to provide non-default signal handling.

228
Q

Variable Timer

A

A timer that can be set to different amounts of time

229
Q

Virtual machine

A

The abstraction of hardware allowing a virtual computer to execute on a physical computer. Multiple virtual machines can
run on a single physical machine (and each can
have a different operating system).

230
Q

Volatile Storage

A

Storage whose content can be lost in a power outage or similar event

231
Q

Voluntary (context switch)

A

A process/thread gives up the CPU so another process can run

232
Q

von Neumann Architecture

A

The structure of most computers, in which both process instructions and data are stored in the same main memory

233
Q

Waiting (process state)

A

When a process is waiting for I/O

234
Q

Waiting time

A

The amount of time a process spends waiting to run

235
Q

Wide Area Network (WAN)

A

A network that links buildings, cities, or countries.

236
Q

Word

A

A unit made up of one or more bytes. For example, a computer that has 64-bit registers and 64-bit memory addressing typically has 64-bit (8-byte) words

237
Q

Workstation

A

A powerful personal computer (PC) for engineering and other demanding workloads