A ___________ is a program loaded into memory and executing.
process
2
New cards
A process will need certain ___________ such as CPU time, memory, files, and I/O devices to accomplish its task.
resources
3
New cards
A process is the unit of ___________ in most systems.
work
4
New cards
Modern operating systems support processes having multiple ___________ of control.
threads
5
New cards
On systems with multiple hardware processing cores, these threads can run in ___________.
parallel
6
New cards
Early computers allowed only one ___________ to be executed at a time.
program
7
New cards
A process is the unit of ___________ in a modern computing system.
work
8
New cards
A system therefore consists of a collection of ___________, some executing user code, others executing operating system code.
processes
9
New cards
The status of the current activity of a process is represented by the value of the ___________ ___________ and the contents of the processor's registers.
program counter
10
New cards
The memory layout of a process is typically divided into multiple ___________.
sections
11
New cards
___________ section is the executable code.
Text
12
New cards
___________ section contains global variables.
Data
13
New cards
___________ section is memory that is dynamically allocated during program run time.
Heap
14
New cards
___________ section is temporary data storage when invoking functions (such as function parameters, return addresses, and local variables).
Stack
15
New cards
The sizes of the text and data sections are ___________.
fixed
16
New cards
The ___________ and ___________ sections can shrink and grow dynamically during program execution.
stack, heap
17
New cards
A program is a ___________ entity.
passive
18
New cards
A program becomes a process when an ___________ file is loaded into memory.
executable
19
New cards
It is also common to have a process that ___________ many processes as it runs.
spawns
20
New cards
A process can itself be an ___________ environment for other code.
execution
21
New cards
As a process executes, it ___________ state.
changes
22
New cards
The ___________ of a process is defined in part by the current activity of that process.
state
23
New cards
The process is being ___________.
created
24
New cards
Instructions are being ___________.
executed
25
New cards
The process is waiting for some ___________ to occur.
event
26
New cards
The process is waiting to be ___________ to a processor.
assigned
27
New cards
The process has finished ___________.
execution
28
New cards
The global data section is divided into different sections for (a) ___________ data and (b) uninitialized data.
initialized
29
New cards
A separate section is provided for the argc and argv parameters passed to the ___________ ( ) function.
main
30
New cards
The ___________ field refers to initialized data, and bss refers to uninitialized data.
data
31
New cards
___________ is a historical term referring to block started by symbol.
bss
32
New cards
Only one process can be ___________ on any processor core at any instant.
running
33
New cards
Each process is represented in the operating system by a process control block (PCB) - also called a ___________ ___________ ___________.
task control block
34
New cards
The ___________ indicates the address of the next instruction to be executed for this process.
counter
35
New cards
The ___________ vary in number and type, depending on the computer architecture.
registers
36
New cards
This information includes a process priority, pointers to scheduling queues, and any other ___________ parameters.
scheduling
37
New cards
This information may include such items as the value of the base and limit registers and the ___________ tables, or the segment tables, depending on the memory system used by the operating system.
page
38
New cards
This information includes the amount of CPU and real time used, time limits, account numbers, job or process numbers, and so on.
Accounting
39
New cards
This information includes the list of I/O devices allocated to the process, a list of ___________ files, and so on.
open
40
New cards
The PCB simply serves as the ___________ for all the data needed to start, or restart a process, along with some accounting data.
repository
41
New cards
The process model discussed so far has implied that a process is a program that performs a ___________ thread of execution.
single
42
New cards
Most modern operating systems have extended the process concept to allow a process to have ___________ threads of execution and thus to perform more than one task at a time.
multiple
43
New cards
This feature is especially beneficial on ___________ systems, where multiple threads can run in parallel.
multicore
44
New cards
On systems that support threads, the ___________ is expanded to include information for each thread.
PCB
45
New cards
The convention in modern operating systems and compilers is that the ___________ of a process contains temporary data such as function parameters, return addresses, and local variables.
stack
46
New cards
A process control block ___________ a process' states.
contains
47
New cards
A process may transition to the Ready state by which of the following actions? While the process is waiting for completion of an I/O event or an ___________ has occurred or an I/O operation the process is waiting for has completed.
interrupt
48
New cards
A ___________ is a set of commands or processes executed by a batch system.
job
49
New cards
___________ are user-level programs, as opposed to system programs.
User programs
50
New cards
A process is a program loaded into memory and ___________.
executing
51
New cards
A CPU register indicating the main memory location of the next instruction to load and execute is called ___________.
program counter
52
New cards
The ___________ ___________ is the executable code of a program or process.
text section
53
New cards
The ___________ section is the data part of a program or process; it contains global variables.
data
54
New cards
The ___________ section of process memory that is dynamically allocated during process run time; it stores temporary variables.
heap section
55
New cards
The section of process memory that contains the stack, it contains activation records and other temporary data is called ___________ ___________.
stack section
56
New cards
A record created when a function or subroutine is called is added to the stack by the call and removed when the call returns. It contains function parameters, local variables, and the return address and is called ___________ ___________.
activation record
57
New cards
A file containing a program that is ready to be loaded into memory and executed is an ___________ ___________.
executable file
58
New cards
The condition of a process, including its current activity as well as its associated memory and disk contents, is the process’s ___________.
state
59
New cards
A per-process kernel data structure containing many pieces of information associated with the process is called a ___________ ___________ ___________.
process control block
60
New cards
A process control structure that is an execution location is called a ___________.
thread
61
New cards
A process with a single thread executes only ___________ task at a time, while a multithreaded process can execute a task per thread.
one
62
New cards
The objective of ___________ is to have some process running at all times so as to maximize CPU utilization.
multiprogramming
63
New cards
The objective of ___________ ___________ is to switch a CPU core among processes so frequently that users can interact with each program while it is running.
time sharing
64
New cards
The ___________ ___________ selects an available process for program execution on a core.
process scheduler
65
New cards
Each CPU core can run ___________ process at a time.
one
66
New cards
The number of processes currently in memory is known as the ___________ of multiprogramming.
degree
67
New cards
The process control block in the Linux operating system is represented by the C structure ___________.
task_struct
68
New cards
A process's ___________ is the process that created it.
parent
69
New cards
A process’s ___________ are any processes that it creates.
children
70
New cards
A process’s ___________ are children with the same parent process.
siblings
71
New cards
Within the Linux kernel, all active processes are represented using a ___________ ___________ ___________ of task_struct.
doubly linked list
72
New cards
The kernel maintains a pointer-current-to the process ___________ executing on the system.
currently
73
New cards
In general, most processes can be described as either I/O bound or ___________ bound.