Operating Systems for Computer Scientists (chapter 1)

studied byStudied by 5 people
0.0(0)
learn
LearnA personalized and smart learning plan
exam
Practice TestTake a test on your terms and definitions
spaced repetition
Spaced RepetitionScientifically backed study method
heart puzzle
Matching GameHow quick can you match all your cards?
flashcards
FlashcardsStudy terms and definitions

1 / 129

encourage image

There's no tags or description

Looks like no one added any tags here yet for you.

130 Terms

1

hardware

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

New cards
2

application program

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

New cards
3

ease of use

The amount of difficulty and complexity involved in using some aspect of computing.

New cards
4

resource utilization

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

New cards
5

touch screen

A touch-sensitive screen used as a computer input device.

New cards
6

voice recognition

A computer interface based on spoken commands, which the computer parses and turns into actions.

New cards
7

Siri

The Apple voice-recognition system.

New cards
8

embedded computer

A computer system within some other, larger system (such as a car) that performs specific, limited functions and has little or no user interface.

New cards
9

resource allocator

An operating system or application that determines how resources are to be used.

New cards
10

control program

A program that manages the execution of user programs to prevent errors and improper use of the computer. It is especially concerned with the operation and control of I/O devices.

New cards
11

Moore's Law

A law predicted that the number of transistors on an integrated circuit would double every eighteen months/ the idea that the number of parts on a computer chip doubles about every 18 months  

New cards
12

kernel

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

New cards
13

system program

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

New cards
14

middleware

A set of software frameworks that provide additional services to application developers.

New cards
15

bus

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.

New cards
16

device driver

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

New cards
17

interrupt

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

New cards
18

interrupt vector

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.

New cards
19

interrupt-request line

The hardware connection to the CPU on which interrupts are signaled

New cards
20

interrupt-handler routine

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

New cards
21

interrupt-controller hardware

Computer hardware components for interrupt management.

New cards
22

nonmaskable interrupt

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

New cards
23

maskable

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

New cards
24

interrupt chaining

A mechanism by which each element in an interrupt vector points to the head of a list of interrupt handlers, which are called individually until one is found to service the interrupt request.

New cards
25

interrupt priority level

Prioritization of interrupts to indicate handling order.

New cards
26

random-access memory (RAM)

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

New cards
27

dynamic random-access memory (DRAM)

The common version of RAM, which features high read and write speeds

New cards
28

bootstrap program

The program that allows the computer to start running by initializing hardware and loading the kernel.

New cards
29

volatile

Describes storage whose content can be lost in a power outage or similar event.

New cards
30

firmware

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

New cards
31

bit

The basic unit of computer storage. A bit can contain one of two values, 0 or 1.

New cards
32

byte

Eight bits

New cards
33

word

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.

New cards
34

kilobyte (KB)

1,024 bytes

New cards
35

megabyte (MB)

1,024^2 bytes

New cards
36

gigabyte (GB)

1,024^3 bytes

New cards
37

terabyte (TB)

1,024^4 bytes.

New cards
38

petabyte (PB)

1,024^5 bytes.

New cards
39

von Neumann architecture

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

New cards
40

secondary storage

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

New cards
41

hard disk drive (HDD)

A secondary storage device based on mechanical components, including spinning magnetic media platters and moving read-write heads.

New cards
42

nonvolatile memory (NVM)

Persistent storage based on circuits and electric charges.

New cards
43

tertiary storage

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

New cards
44

semiconductor memory

The various types of memory constructed from semiconductors

New cards
45

memory

Volatile storage within a computer system

New cards
46

nonvolatile storage (NVS)

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

New cards
47

nonvolatile memory (NVM)

Persistent storage based on circuits and electric charges.

New cards
48

direct memory access (DMA)

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

New cards
49

bus

a pathway that moves data and instructions between parts of a computer, like the CPU and devices 

New cards
50

device driver

software that helps the operating system talk to and control hardware like printers or keyboards 

New cards
51

interrupt

a signal from a device telling the computer’s brain (the CPU) that something important needs attention right away

New cards
52

interrupt vector

a list that shows where the computer should go to handle different kinds of interruptions 

New cards
53

interrupt-request line

a wire or circuit that lets devices send signals to the CPU to ask for attention  

New cards
54

interrupt-handler routine

a special program that the computer runs when it gets an interrupt signal  

New cards
55

interrupt-controller hardware

parts of the computer that manage when and how interrupts are handled  

New cards
56

non-maskable interrupt

an urgent signal that the CPU must deal with immediately, like a major error 

New cards
57

maskable

describes an interrupt that the CPU can choose to ignore briefly, usually when it’s busy doing something very important

New cards
58

interrupt chaining

a method where the computer checks a list of programs to find the right one to handle an interrupt  

New cards
59

interrupt priority level

a way of deciding which interrupts are most urgent, so that the computer can handle them in the right order

New cards
60

random-access memory (RAM)

a computer's main memory that can be used quickly to run programs 

New cards
61

dynamic random-access memory (DRAM)

a type of RAM that is fast and used a lot in computers  

New cards
62

volatile

describes memory that loses its information when the computer turns off 

New cards
63

electrically erasable programmable read-only memory (EEPROM)

a type of nonvolatile memory that can be electrically erased and reprogrammed to store data 

New cards
64

bootstrap program

the first program that starts a computer by getting everything ready for the main software to run when the computer is turned on 

New cards
65

bit

the smallest unit of data storage containing one of two values, 0 (off) or 1 (on) 

New cards
66

byte

eight bits  

New cards
67

word

a unit of data representing multiple bytes, such as 4 bytes in a 32-bit system or 8 bytes in a 64-bit system 

New cards
68

hard disk drive (HDD)

a storage device that uses spinning disks and read/write heads to store and retrieve data 

New cards
69

nonvolatile memory (NVM)

memory that retains data even when power is turned off 

New cards
70

nonvolatile storage (NVS)

storage that keeps data without needing power, such as hard drives and SSDs

New cards
71

solid state drive (SSD)

a storage device that uses flash memory to store data with no moving parts 

New cards
72

big data

Extremely large sets of data; distributed systems are well suited to working with big data.

New cards
73

MapReduce

A Google-created big data programming model and implementation for parallel processing across nodes in a distributed cluster. A layer on top of the Google file system (GFS), it allows developers to carry out large-scale parallel computations easily.

New cards
74

system daemon

A service that is provided outside the kernel by system programs that are loaded into memory at boot time and run continuously.

New cards
75

trap

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.

New cards
76

exception

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.

New cards
77

system call

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

New cards
78

multiprogramming

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

New cards
79

process

A program loaded into memory and executing.

New cards
80

multitasking

The concurrent performance of multiple jobs. A CPU executes multiple jobs by switching among them, but the switches occur so frequently that users can interact with the processes.

New cards
81

response time

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

New cards
82

CPU scheduling

The process by which the system chooses which job will run next if several jobs are ready to run at the same time.

New cards
83

virtual memory

A technique that allows the execution of a process that is not completely in memory. Also, separation of computer memory address space from physical into logical, allowing easier programming and larger name space.

New cards
84

logical memory

Memory as viewed by the user; usually a large uniform array, not matching physical memory in virtual memory systems.

New cards
85

user mode

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

New cards
86

kernel mode

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

New cards
87

supervisor mode

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

New cards
88

system mode

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

New cards
89

privileged mode

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

New cards
90

mode bit

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

New cards
91

privileged instructions

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

New cards
92

protection rings

A model of privilege separation consisting of a series of rings, with each successive ring representing greater execution privileges.

New cards
93

virtual machine manager (VMM)

The computer function that manages the virtual machine; also called a hypervisor.

New cards
94

timer

A hardware component that can be set to interrupt the computer after a specified period.

New cards
95

batch operating system

executes similar jobs in batches to optimize CPU use without user interaction 

New cards
96

multiprogramming

keeps multiple programs in memory to maximize CPU usage by switching between them

New cards
97

main memory management

the process of handling the system's primary memory (RAM) to ensure efficient use by programs 

New cards
98

CPU scheduling

the method used by an operating system to decide which process gets to use the CPU and for how long

New cards
99

time-sharing system

an operating system that allows multiple users to share computer resources simultaneously 

New cards
100

multitasking

the ability of an operating system to run multiple tasks or programs at the same time 

New cards
robot