Module 1 Flashcards

1
Q

A program that acts as an intermediary between a user of a computer and the computer hardware.

A

Operating System

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

Operating system is a program that acts as an intermediary between a ___ of a computer and the computer ___.

A

user, hardware

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

Operating system goals:
* ___
* ___
* ___

A
  • Execute user programs and make solving user problems easier
  • Make the computer system convenient to use
  • Use the computer hardware in an efficient manner
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Computer system can be divided into four components:
* ___
* ___
* ___
* ___

A
  • Hardware - provides basic computing resources (e.g. CPU, memory, I/O devices)
  • Operating system - controls and coordinates use of hardware among various applications and users
  • Application programs - define the ways in which the system resources are used to solve the computing problems of the users (e.g. Word processors, compilers, web browsers, database systems, video games)
  • Users - e.g. people, machines, other computers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Computer System Components

Provides basic computing resources (e.g. CPU, memory, I/O devices)

A

Hardware

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

Computer System Components

Controls and coordinates use of hardware among various applications and users

A

Operating system

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

Computer System Components

Define the ways in which the system resources are used to solve the computing problems of the users (e.g. Word processors, compilers, web browsers, database systems, video games)

A

Application programs

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

Computer System Components

People, machines, other computers

A

Users

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

Abstract view of computer components

A

user
|
application programs
(compilers, web browsers, development kits, etc.)
|
operating system
|
computer hardware
(CPU, memory, I/O devices, etc.)

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

What the operating systems do depends on the ___.

A

point of view

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

What Operating Systems Do

Users want ___, ___ and ___.

A

convenience,
ease of use,
good performance

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

What Operating Systems Do

Users does not care about ___.

A

resource utilization

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

What Operating Systems Do

Shared computer such as ___ or ___ must keep all users happy.

A

mainframe, minicomputer

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

What Operating Systems Do

Operating system is a ___ program, making efficient use of hardware and managing execution of user programs.

A

resource allocator and control

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

___ is a resource allocator and control program, making efficient use of hardware and managing execution of user programs.

A

Operating system

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

What Operating Systems Do

Users of dedicate systems such as ___ have dedicated resources but frequently use shared resources from ___.

A

workstations, servers

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

What Operating Systems Do

___ are resource poor and optimized for usability and battery life.

A

Mobile devices

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

What Operating Systems Do

Mobile devices, such as smartphones and tablets, are ___ and optimized for usability and battery life.

A

resource poor

resource-constrained

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

What Operating Systems Do

Mobile devices, such as smartphones and tablets, are resource poor and optimized for ___ and ___.

A

usability, battery life

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

What Operating Systems Do

Mobile user interfaces include ___ and ___.

A

touchscreens, voice recognition

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

What Operating Systems Do

Some computers have little or no ___, such as embedded computers in devices and automobiles.

A

user interface

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

What Operating Systems Do

___ primarily run without user intervention to perform specialized functions.

A

Embedded systems

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

Defining Operating Systems

The term OS covers many roles because of myriad ___ and ___ of operating systems.

A

designs, uses

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

Defining Operating Systems

The term OS covers many roles, as it is found in everything from:
* ___
* ___
* ___
* ___
* ___
* ___

A
  • Toasters
  • Ships
  • Spacecraft
  • Gaming machines
  • TVs
  • Industrial control systems
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Defining Operating Systems

The term OS was born when fixed-use computers for ___ became more general purpose and needed resource management and program control.

A

military

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

The term OS was born when fixed-use computers for military became more general purpose and needed ___ and ___.

A

resource management,
program control

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

___ has no universally accepted definition.

A

Operating System

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

Operating System Definition

“Everything a ___ ships when you order an operating system” is a good approximation but varies wildly.

A

vendor

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

Operating System Definition

“The one program running at all times on the computer” is the ___, part of the operating system.

A

kernel

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

Operating System Definition

“The one program running at all times on the computer” is the kernel, a core part of the operating system. Everything else is either:

  • ___
  • ___
A
  • A system program (ships with the operating system but is not part of the kernel), or
  • An application program, which includes all programs not associated with the operating system.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

Operating System Definition

Ships with the operating system but is not part of the kernel

A

System program

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

Operating System Definition

Includes all programs not associated with the operating system.

A

Application program

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

Operating System Definition

Today’s operating systems for general purpose and mobile computing also include ___ – a set of software frameworks that provide additional services to application developers such as databases, multimedia, and graphics.

A

middleware

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

Computer System Organization

Computer-system operation involves one or more ___ and ___ connected through a common bus, providing access to shared memory.

A

CPUs, device controllers

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

Computer System Organization

Computer-system operation involves one or more CPUs and device controllers connected through a ___, providing access to shared memory.

A

common bus

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

The CPUs and devices execute ___, competing for memory cycles.

A

concurrently

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

The CPUs and devices execute concurrently, competing for ___.

A

memory cycles

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

Computer-System Operation

___ and the ___ can execute concurrently, with each device controller managing a specific type of device.

A

I/O devices, CPU

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

Computer-System Operation

Each ___ is in charge of a particular device type.

A

device controller

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

Computer-System Operation

Every device controller has a ___ and is managed by an operating system device driver.

A

local buffer

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

Computer-System Operation

Every device controller has a local buffer and is managed by an operating system ___.

A

device driver

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

Computer-System Operation

The CPU moves data between ___ and ___.

A

main memory, local buffers

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

Computer-System Operation

I/O operations occur from the ___ to the controller’s ___.

A

device, local buffer

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

Computer-System Operation

Once an operation is complete, the device controller notifies the CPU by triggering an ___.

A

interrupt

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

Common Functions of Interrupts

Interrupt transfers control to the interrupt service routine generally, through the ___, which contains the addresses of all the service routines.

A

interrupt vector

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

Common Functions of Interrupts

Interrupt architecture must save the ___ of the interrupted instruction.

A

address

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

Common Functions of Interrupts

A ___ or ___ is a software-generated interrupt caused either by an error or a user request.

A

trap, exception

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

Common Functions of Interrupts

An operating system is ___ driven.

A

interrupt

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

The ___ diagram shows how the CPU and I/O devices interact using interrupts.

A

Interrupt Timeline

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

The Interrupt Timeline diagram illustrates how the CPU and I/O devices interact using interrupts.

  1. Initially, the CPU runs a user program, while the I/O device remains idle.
  2. When an I/O request is made, the device starts transferring data. Once the transfer is complete, the device signals an interrupt to notify the CPU.
  3. The CPU then pauses its current task, processes the interrupt, and resumes execution after handling it.

This cycle repeats for each I/O request, ensuring efficient multitasking without the CPU constantly checking the device status.

A

Noted

  1. I/O request is made.
  2. I/O device starts transferring data while the CPU continues executing the user program.
  3. Transfer is completed, and the I/O device signals an interrupt.
  4. CPU stops the user program to handle the interrupt.
  5. Interrupt is processed, and the CPU resumes the user program.
  6. Next I/O request occurs, repeating the cycle.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

Interrupt Timeline

1.) Initially, the CPU runs a ___, while the I/O device remains ___.

A

user program, idle

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

Interrupt Timeline

2.) When an I/O ___ is made, the device starts transferring data. Once the transfer is complete, the device signals an ___ to notify the CPU.

A

request, interrupt

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

Interrupt Timeline

3.) The CPU then ___ its current task, processes the ___, and ___ execution after handling it.

A

pauses, interrupt, resumes

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

Interrupt Handling

The operating system preserves the state of the CPU by storing the ___ and the ___.

It then determines the type of interrupt that has occurred.

Separate segments of code handle each type of interrupt, ensuring the appropriate action is taken.

A

registers, program counter

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

___ are small, high-speed memory locations inside the CPU that store data, instructions, and addresses temporarily for quick processing.

A

Registers

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

Interrupt Handling

___ contains the address of the next instruction to be executed.

A

Program Counter (PC)

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

Interrupt Handling

Separate segments of ___ handle each type of interrupt, ensuring the appropriate action is taken.

A

code

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

Interrupt-drive I/O Cycle

The Interrupt-driven I/O Cycle follows these steps:

  1. The device driver initiates I/O in the CPU.
  2. The I/O controller initiates I/O.
  3. When the operation is input ready, output complete, or an error occurs, an interrupt signal is generated.
  4. The CPU receives the interrupt and transfers control to the interrupt handler.
  5. The interrupt handler processes the data and returns from the interrupt.
  6. The CPU resumes processing of the interrupted task.
  7. The cycle repeats as needed.
A

Noted

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

The Interrupt-driven I/O Cycle follows these steps:

  1. The ___ initiates ___ in the ___.
  2. The ___ initiates ___.
  3. When the operation is ___, ___, or an ___ occurs, an ___ is generated.
  4. The ___ receives the ___ and transfers control to the ___.
  5. The ___ processes the ___ and returns from the ___.
  6. The ___ resumes processing of the ___.
  7. The cycle repeats as needed.
A
  1. device driver, I/O, CPU
  2. I/O controller, I/O
  3. input ready, output complete, error, interrupt signal
  4. CPU, interrupt, interrupt handler
  5. interrupt handler, data, interrupt
  6. CPU, interrupted task
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
60
Q

I/O Structure

There are two methods for handling I/O:

  • ___
  • ___
A
  • Synchronous I/O - After I/O starts, control returns to the user program only upon I/O completion.
  • Asynchronous I/O - After I/O starts, control returns to the user program immediately, without waiting for I/O completion.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
61
Q

I/O Structure

After I/O starts, control returns to the user program only upon I/O completion.

A

Synchronous I/O

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

I/O Structure

After I/O starts, control returns to the user program immediately, without waiting for I/O completion.

A

Asynchronous I/O

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

I/O Structure (Cont.)

In synchronous I/O, control returns to the user program only after I/O completion. During this period, the system may use a ___, which idles the CPU until the next interrupt, or a ___, causing contention for memory access. This method allows only one I/O request at a time, preventing simultaneous I/O processing.

A

wait instruction, wait loop

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

I/O Structure (Cont.)

In synchronous I/O, control returns to the user program only after I/O completion. During this period, the system may use a ___, which idles the CPU until the next interrupt.

A

wait instruction

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

I/O Structure (Cont.)

In synchronous I/O, control returns to the user program only after I/O completion. During this period, the system may use a ___, causing contention for memory access.

A

wait loop

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

I/O Structure (Cont.)

In asynchronous I/O, control returns to the user program immediately after I/O starts. A ___ can be used to request the OS to wait for I/O completion.

A

system call

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

I/O Structure (Cont.)

In asynchronous I/O, control returns to the user program immediately after I/O starts. The ___ maintains an entry for each I/O device, storing its type, address, and state.

A

device-status table

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

I/O Structure (Cont.)

In asynchronous I/O, control returns to the user program immediately after I/O starts. The device-status table maintains an entry for each I/O device, storing its ___, ___, and ___.

A

type, address, state

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

I/O Structure (Cont.)

In asynchronous I/O, control returns to the user program immediately after I/O starts. The OS indexes into the ___ to check the device status and updates the entry when an interrupt occurs.

A

I/O device table

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

Storage Structure

___ is the only large storage medium that the CPU can access directly.

A

Main memory

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

Storage Structure

The main memory features ___, and is typically ___.

A

random access, volatile

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

Storage Structure

The main memory is commonly implemented as ___.

A

Dynamic Random-Access Memory (DRAM)

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

Storage Structure

___ serves as an extension of main memory, providing a large ___ storage capacity for long-term data retention.

A

Secondary storage, nonvolatile

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

Storage Structure (Cont.)

___ consist of rigid metal or glass platters coated with magnetic recording material.

A

Hard disk drives (HDD)

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

Storage Structure (Cont.)

Hard disk drives (HDD) consist of ___ or ___ coated with magnetic recording material.

A

rigid metal, glass platters

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

Storage Structure (Cont.)

Hard disk drives (HDD) consist of rigid metal or glass platters coated with ___.

A

magnetic recording material

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

Storage Structure (Cont.)

[Hard disk drives (HDD)] The disk surface is logically divided into ___, which are further subdivided into ___.

A

tracks, sectors

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

Storage Structure (Cont.)

[Hard disk drives (HDD)] A ___ manages the logical interaction between the device and the computer.

A

disk controller

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

Storage Structure (Cont.)

___ devices are faster than hard disks while maintaining non-volatile storage.

A

Non-volatile memory (NVM)

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

Storage Structure (Cont.)

These utilize various technologies and are becoming increasingly popular as their capacity and performance improve while prices continue to drop.

A

Non-volatile memory (NVM)

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

Storage Definitions and Notation Review

The basic unit of computer storage is the ___.

A

bit

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

Storage Definitions and Notation Review

A bit can contain one of two values, ___ and ___.

A

0, 1

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

Storage Definitions and Notation Review

All other storage in a computer is based on ___.

A

collections of bits

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

Storage Definitions and Notation Review

Given enough bits, it is amazing how many things a computer can represent:
* ___
* ___
* ___
* ___
* ___
* ___
* ___

A
  • numbers
  • letters
  • images
  • movies
  • sounds
  • documents
  • programs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
85
Q

Storage Definitions and Notation Review

A ___ is 8 bits, and on most computers, it is the smallest convenient chunk of storage.

A

byte

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

Storage Definitions and Notation Review

It is the smallest convenient chunk of storage on most computers.

A

byte

For example, most computers don’t have an instruction to move a bit but do have one to move a byte.

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

Storage Definitions and Notation Review

A less common term is ___, which is a given computer architecture’s native unit of data.

A

word

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

Storage Definitions and Notation Review

A word is made up of ___ or more bytes.

A

one

For example, a computer that has 64-bit registers and 64-bit memory addressing typically has 64-bit (8-byte) words. A computer executes many operations in its native word size rather than a byte at a time.

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

Storage Definitions and Notation Review

Computer storage, along with most computer throughput, is generally measured and manipulated in ___ and collections of bytes.

A

bytes

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

Storage Definitions and Notation Review

A kilobyte (KB) is ___ bytes.

A

1,024

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

Storage Definitions and Notation Review

A megabyte (MB) is ___ bytes.

A

1,024^2

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

Storage Definitions and Notation Review

A gigabyte (GB) is ___ bytes.

A

1,024^3

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

Storage Definitions and Notation Review

A terabyte (TB) is ___ bytes.

A

1,024^4

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

Storage Definitions and Notation Review

A petabyte (PB) is ___ bytes.

A

1,024^5

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

Storage Definitions and Notation Review

Computer manufacturers often round off these numbers and say that a megabyte is ___ bytes and a gigabyte is ___ bytes.

A

1 million, 1 billion

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

Storage Definitions and Notation Review

Networking measurements are an exception to this general rule; they are given in ___ because networks move data a ___ at a time.

A

bit(s)

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

Storage Hierarchy

Storage systems are organized in a hierarchy based on ___, ___, and ___.

A
  • speed
  • cost
  • volatility

*hierarchy matters

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

Storage Hierarchy

___ improves performance by copying information into a faster storage system, allowing main memory to function as a cache for secondary storage.

A

Caching

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

Storage Hierarchy

Each device controller is managed by a ___, which provides a uniform interface between the controller and the operating system kernel.

A

device driver

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

Storage Hierarchy

Each device controller is managed by a device driver, which provides a uniform interface between the ___ and the operating system ___.

A

controller, kernel

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

Storage-Device Hierarchy

The Storage-Device Hierarchy is as follows (from fastest and smallest to slowest and largest):

  1. ___
  2. ___
  3. ___
  4. ___
  5. ___
  6. ___
  7. ___
A
  1. Registers (Primary Storage, Volatile, Fastest, Smallest)
  2. Cache (Primary Storage, Volatile)
  3. Main Memory (Primary Storage, Volatile)
  4. Nonvolatile Memory (Secondary Storage, Nonvolatile)
  5. Hard-Disk Drives (HDD) (Secondary Storage, Nonvolatile)
  6. Optical Disk (Tertiary Storage, Nonvolatile)
  7. Magnetic Tapes (Tertiary Storage, Nonvolatile, Slowest, Largest)

*hierarchy matters (smallest to largest; faster to slower)

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

Storage-Device Hierarchy

Primary Storage

A
  1. Registers
  2. Cache
  3. Main Memory

*hierarchy matters (smallest to largest; faster to slower)

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

Storage-Device Hierarchy

Secondary Storage

A
  1. Nonvolatile Memory (NVM)
  2. Hard-Disk Drives (HDD)

*hierarchy matters (smallest to largest; faster to slower)

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

Storage-Device Hierarchy

Tertiary Storage

A
  1. Optical Disk
  2. Magnetic Tapes

*hierarchy matters (smallest to largest; faster to slower)

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

Storage-Device Hierarchy

Volatile Storage

A
  1. Registers
  2. Cache
  3. Main Memory

*hierarchy matters (smallest to largest; faster to slower)

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

Storage-Device Hierarchy

Nonvolatile Storage

A
  1. Nonvolatile Memory
  2. Hard-Disk Drives
  3. Optical Disk
  4. Magnetic Tapes

*hierarchy matters (smallest to largest; faster to slower)

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

Storage-Device Hierarchy

Smallest and Fastest Storage

A

Registers

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

Storage-Device Hierarchy

Largest and Slowest Storage

A

Magnetic Tapes

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

How a Modern Computer Works

The Von Neumann architecture separates ___ and ___, enabling faster processing.

A

memory, CPU

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

How a Modern Computer Works

In the Von Neumann architecture, ___ enhances processing efficiency by enabling data transfers without CPU intervention.

A

Direct Memory Access (DMA)

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

How a Modern Computer Works

von Neumann architecture

  • CPU executes a thread of execution and interacts with cache for fast access.
  • Instruction execution cycle processes instructions and data stored in memory.
  • Data movement occurs between CPU and memory for processing.
  • I/O requests, data transfers, and interrupts facilitate communication between the CPU and devices.
  • Direct Memory Access (DMA) enables data transfer between devices and memory without CPU intervention.
A

Noted

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

Direct Memory Access Structure

___ is used for high-speed I/O devices capable of transmitting data at speeds close to that of memory.

A

Direct Memory Access (DMA)

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

Direct Memory Access Structure

The ___ handles data transfer by moving entire blocks from buffer storage directly to main memory without CPU intervention.

A

device controller

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

Direct Memory Access Structure

Instead of generating an interrupt for each byte, DMA reduces CPU overhead by generating only ___ interrupt per block of data.

A

one

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

Operating-System Operations

The ___ is a simple code that initializes the system and loads the kernel.

A

bootstrap program

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

Operating-System Operations

The bootstrap program is a simple code that initializes the system and loads the ___. Once it is loaded, it starts system ___, which provide services outside of it.

A

kernel, daemons

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

Operating-System Operations

The operating system is interrupt-driven, responding to both ___ and ___ interrupts.

A

hardware, software

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

Operating-System Operations

A ___ interrupt occurs when triggered by a device.

A

hardware

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

Operating-System Operations

A software interrupt (___ or ___) may result from a software error, such as division by zero, or a system call, where a process requests an operating system service. Other process-related issues include infinite loops and processes modifying each other or the operating system.

A

exception, trap

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

Operating-System Operations

A software interrupt may result from a software error, such as division by zero, or a ___, where a process requests an operating system service.

A

system call

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

Operating-System Operations

A software interrupt may result from a software error, such as ___. Other process-related issues include ___ and processes modifying each other or the operating system.

A

division by zero, infinite loops

122
Q

Multiprogramming (Batch System)

A single user cannot always keep the CPU and I/O devices ___.

123
Q

Multiprogramming (Batch System)

___ improves system efficiency by organizing jobs, ensuring the CPU always has a task to execute. A subset of jobs is kept in memory, and the operating system selects one to run using job scheduling. If a job needs to wait, such as for an I/O operation, the OS switches to another job, maximizing resource utilization.

A

Multiprogramming

124
Q

Multiprogramming (Batch System)

Multiprogramming improves system efficiency by organizing ___, ensuring the CPU always has a task to execute.

A

jobs

A subset of jobs is kept in memory, and the operating system selects one to run using job scheduling. If a job needs to wait, such as for an I/O operation, the OS switches to another job, maximizing resource utilization.

125
Q

Multiprogramming (Batch System)

A subset of jobs is kept in memory, and the operating system selects one to run using ___. If a job needs to wait, such as for an I/O operation, the OS switches to another job, maximizing resource utilization.

A

job scheduling

126
Q

Multitasking (Timesharing)

___ is a logical extension of batch systems, where the CPU switches between jobs frequently, allowing users to interact with their programs while they are running, creating an interactive computing environment.

A

Multitasking

127
Q

Multitasking (Timesharing)

Multitasking is a logical extension of batch systems, where the CPU switches between jobs frequently, allowing users to interact with their programs while they are running, creating an ___ computing environment.

A

interactive

128
Q

Multitasking (Timesharing)

Response time should be ___ second to ensure a smooth user experience.

A

less than one (< 1)

129
Q

Multitasking (Timesharing)

Each user has at least ___ executing process in memory.

130
Q

Multitasking (Timesharing)

When multiple jobs are ready to run simultaneously, ___ determines which job gets processor time.

A

CPU scheduling

131
Q

Multitasking (Timesharing)

When multiple jobs are ready to run simultaneously, CPU scheduling determines which job gets processor time. If processes cannot fit in memory, ___ moves them in and out to allow execution.

132
Q

Multitasking (Timesharing)

___ further enhances efficiency by enabling processes to run even if they are not entirely loaded into memory.

A

Virtual memory

133
Q

Memory Layout for Multiprogrammed System

In a multiprogrammed system, memory is divided into sections, with the operating system occupying the upper portion and multiple processes allocated below it. Each process is assigned a separate ___, allowing multiple programs to run concurrently.

This structure ensures efficient CPU utilization by keeping several processes in memory, enabling the operating system to switch between them as needed.

Diagram

max -:-:-:-:-:-:-:-:-:-:-:-
operating system
-:-:-:-:-:-:-:-:-:-:-:-:-:-:-
process 1
-:-:-:-:-:-:-:-:-:-:-:-:-:-:-
process 2
-:-:-:-:-:-:-:-:-:-:-:-:-:-:-
process 3
-:-:-:-:-:-:-:-:-:-:-:-:-:-:-
process 4
0 -:-:-:-:-:-:-:-:-:-:-:-:-:-

A

memory space

134
Q

Dual-Mode Operation

___ enables the operating system to protect itself and other system components.

A

Dual-mode operation

135
Q

Dual-Mode Operation

Dual-mode operation operates in two modes: ___ and ___.

A

user mode, kernel mode

136
Q

Dual-mode operation operates in two modes: user mode and kernel mode, with a ___ provided by hardware to differentiate between them.

137
Q

Dual-Mode Operation

When a user program runs, the mode bit is set to ___.

138
Q

Dual-Mode Operation

When kernel code is executed, the mode bit switches to ___.

A

kernel mode

139
Q

Dual-Mode Operation

To prevent users from explicitly setting the mode bit to kernel mode, a ___ automatically switches to kernel mode, and returning from the call resets it back to user mode.

A

system call

140
Q

Dual-Mode Operation

Certain ___ instructions can only be executed in kernel mode, ensuring controlled access to critical system operations.

A

privileged

141
Q

Transition from User to Kernel Mode

Transition from User to Kernel Mode Diagram

  1. A user process starts executing in user mode with the mode bit set to 1.
  2. When the process makes a system call, a trap occurs, switching execution to kernel mode by setting the mode bit to 0. The system call is then executed in kernel mode.
  3. Once completed, control returns to user mode, restoring the mode bit to 1, allowing the user process to continue execution.
142
Q

Transition from User to Kernel Mode

Transition from User to Kernel Mode Diagram

  1. A user process starts executing in ___ mode with the mode bit set to ___.
  2. When the process makes a system call, a ___ occurs, switching execution to ___ mode by setting the mode bit to ___. The system call is then executed in kernel mode.
  3. Once completed, control returns to ___ mode, restoring the mode bit to ___, allowing the user process to continue execution.
A
  1. user, 1
  2. trap, kernel, 0
  3. user, 1
143
Q

Timer

A ___ is used to prevent infinite loops or processes from monopolizing system resources.

144
Q

Timer

A timer is set to ___ the computer after a specified time period.

145
Q

Timer

A counter, ___ by the physical clock, is managed by the operating system through a ___ instruction. When the counter reaches zero, an interrupt is generated.

A

decremented, privileged

146
Q

Timer

When the counter reaches ___, an ___ is generated.

A

zero, interrupt

147
Q

The timer is set before ___ to ensure the operating system can regain control or terminate a program that exceeds its allotted time.

A

scheduling a process

148
Q

Process Management

A ___ is a program in execution and serves as a unit of work within the system.

149
Q

Process Management

While a program is a ___ entity, a process is ___, requiring resources such as CPU, memory, I/O, files, and initialization data to accomplish its task. When a process terminates, the system reclaims any reusable resources.

A

passive, active

150
Q

Process Management

A single-threaded process has a ___, which determines the next instruction to execute. It processes instructions sequentially, one at a time, until completion.

A

single program counter

151
Q

Process Management

A multi-threaded process has a ___ for each thread, allowing multiple sequences of execution.

A

separate program counter

152
Q

Process Management

A typical system runs multiple processes simultaneously, including both ___ and ___.

A

user processes, operating system processes

153
Q

Process Management

___ is achieved by multiplexing the CPUs among processes and threads, ensuring efficient execution on one or more CPUs.

A

Concurrency

154
Q

Process Management Activities

The operating system is responsible for the following activities in connection with process management:
* ___
* ___
* ___
* ___
* ___

A
  • Creating and deleting both user and system processes
  • Suspending and resuming processes
  • Providing mechanisms for process synchronization
  • Providing mechanisms for process communication
  • Providing mechanisms for deadlock handling
155
Q

Memory Management

To execute a program, all or part of its ___ and required ___ must be loaded into memory.

A

instructions, data

156
Q

Memory Management

___ is responsible for determining what is in memory and when, ensuring optimal CPU utilization and system responsiveness for users.

A

Memory management

157
Q

Memory Management

Memory management involves several key activities, including:
* ___
* ___
* ___

A
  • tracks memory usage and identifying which processes or data occupy memory.
  • decides which processes or data should be moved in and out of memory as needed.
  • handles the allocation and deallocation of memory space, ensuring efficient resource utilization.
158
Q

File-System Management

The operating system provides a uniform, logical view of information storage by abstracting physical storage properties into a logical storage unit called a ___.

159
Q

File-System Management

Storage medium is managed by a device controller such as a ___ or ___, with varying properties like access speed, capacity, data transfer rate, and access method (sequential or random).

A

disk drive, tape drive

160
Q

File-System Management

Storage medium is managed by a device controller such as a disk drive or tape drive, with varying properties like ___, ___, ___, and ___ (sequential or random).

A
  • access speed,
  • capacity,
  • data transfer rate,
  • access methods
161
Q

File-System Management

Files are typically organized into ___, with access control mechanisms determining user permissions.

A

directories

162
Q

File-System Management

The operating system handles several file-system management activities, including:
* ___
* ___
* ___
* ___

A
  • creating and deleting files and directories
  • providing operations to manipulate them
  • mapping files onto secondary storage
  • backing up data to non-volatile storage media
163
Q

Mass-Storage Management

___ are commonly used to store data that does not fit in main memory or needs to be retained for an extended period.

164
Q

disk subsystem

Proper management of mass storage is crucial, as the overall speed of computer operation depends heavily on the efficiency of the ___ and its ___.

A

disk subsystem, algorithms

165
Q

The operating system performs several key mass-storage management activities, including:
* ___
* ___
* ___
* ___
* ___
* ___

A
  • mounting and unmounting storage devices
  • managing free space
  • allocating storage
  • scheduling disk access
  • partitioning disks
  • ensuring data protection.
166
Q

Caching

___ is a fundamental principle applied at multiple levels in a computer, including hardware, the operating system, and software.

167
Q

Caching

Caching works by temporarily copying ___ information from slower storage to faster storage, improving access speed.

A

frequently used

168
Q

Caching

When data is needed, the system first checks the ___. If the data is found, it is used directly from the cache, resulting in faster access. If the data is not present, it is retrieved from the slower storage, copied to the cache, and then used.

169
Q

Caching

When data is needed, the system first checks the cache. If the data is found, it is used directly from the ___, resulting in faster access. If the data is not present, it is retrieved from the ___, copied to the cache, and then used.

A

cache, slower storage

170
Q

Caching

Since the cache is smaller than the storage it caches, ___ becomes a critical design challenge. Important factors include ___ and ___, which determine how data is stored and replaced within the cache.

A

cache management,
cache size, replacement policies

171
Q

Characteristics of Various Types of Storage

Storage Levels

1.) Registers
- Typical Size: < 1 KB
- Implementation Technology: Custom memory with multiple ports CMOS
- Access Time: 0.25 - 0.5 ns
- Bandwidth: 20,000 - 100,000 MB/sec
- Managed by: Compiler
- Backed by: Cache

2.) Cache
- Typical Size: < 16 MB
- Implementation Technology: On-chip or off-chip CMOS SRAM
- Access Time: 0.5 - 25 ns
- Bandwidth: 5,000 - 10,000 MB/sec
- Managed by: Hardware
- Backed by: Main memory

3.) Main Memory
- Typical Size: < 64 GB
- Implementation Technology: CMOS SRAM
- Access Time: 80 - 250 ns
- Bandwidth: 1,000 - 5,000 MB/sec
- Managed by: Operating system
- Backed by: Disk

4.) Solid-State Disk (SSD)
- Typical Size: < 1 TB
- Implementation Technology: Flash memory
- Access Time: 25,000 - 50,000 ns
- Bandwidth: 500 MB/sec
- Managed by: Operating system
- Backed by: Disk

5.) Magnetic Disk
- Typical Size: < 10 TB
- Implementation Technology: Magnetic disk
- Access Time: 5,000,000 ns
- Bandwidth: 20 - 150 MB/sec
- Managed by: Operating system
- Backed by: Disk or tape

Note: Movement between levels of the storage hierarchy can be explicit or implicit.

172
Q

Characteristics of Various Types of Storage

Determine storage type through these characteristics:

  • Typical Size: < 1 KB
    • Implementation Technology: Custom memory with multiple ports CMOS
    • Access Time: 0.25 - 0.5 ns
    • Bandwidth: 20,000 - 100,000 MB/sec
    • Managed by: Compiler
    • Backed by: Cache
A

[Level 1] Registers

173
Q

Characteristics of Various Types of Storage

Determine storage type through these characteristics:

  • Typical Size: < 16 MB
  • Implementation Technology: On-chip or off-chip CMOS SRAM
  • Access Time: 0.5 - 25 ns
  • Bandwidth: 5,000 - 10,000 MB/sec
  • Managed by: Hardware
  • Backed by: Main memory
A

[Level 2] Cache

174
Q

Characteristics of Various Types of Storage

Determine storage type through these characteristics:

  • Typical Size: < 64 GB
  • Implementation Technology: CMOS SRAM
  • Access Time: 80 - 250 ns
  • Bandwidth: 1,000 - 5,000 MB/sec
  • Managed by: Operating system
  • Backed by: Disk
A

[Level 3] Main Memory

175
Q

Characteristics of Various Types of Storage

Determine storage type through these characteristics:

  • Typical Size: < 1 TB
  • Implementation Technology: Flash memory
  • Access Time: 25,000 - 50,000 ns
  • Bandwidth: 500 MB/sec
  • Managed by: Operating system
  • Backed by: Disk
A

[Level 4] Solid-State Disk (SSD)

176
Q

Characteristics of Various Types of Storage

Determine storage type through these characteristics:

  • Typical Size: < 10 TB
  • Implementation Technology: Magnetic disk
  • Access Time: 5,000,000 ns
  • Bandwidth: 20 - 150 MB/sec
  • Managed by: Operating system
  • Backed by: Disk or tape
A

[Level 5] Magnetic Disk

177
Q

Characteristics of Various Types of Storage

Movement between levels of the storage hierarchy can be ___ or ___.

A

explicit, implicit

178
Q

Migration of Data “A” from Disk to Register

In multitasking environments, it is essential to always use the ___ value, regardless of where it is stored in the storage hierarchy.

A

most recent

179
Q

Migration of Data “A” from Disk to Register

Data moves through different levels of storage, starting from the ___ to ___, then to ___, and finally to a ___, ensuring faster access at each stage.

[Diagram Representation]
➡ ___ → ___ → ___ → ___

A

Magnetic Disk → Main Memory → Cache → Hardware Register

180
Q

Migration of Data “A” from Disk to Register

In multiprocessor systems, ___ must be maintained in hardware so that all CPUs have the latest value in their caches.

A

cache coherency

181
Q

Migration of Data “A” from Disk to Register

The complexity increases in distributed environments, where ___ of the same data may exist, requiring specialized solutions for consistency.

A

multiple copies

182
Q

I/O Subsystem

One of the key functions of the operating system is to hide the ___ from the user.

A

complexities of hardware devices

183
Q

I/O Subsystem

The ___ plays a crucial role in managing various aspects of input and output operations.

A

I/O subsystem

184
Q

I/O Subsystem

I/O subsystem handles memory management for I/O, including ___, which temporarily stores data during transfers; ___, which keeps frequently accessed data in faster storage for improved performance; and ___, which allows the output of one job to overlap with the input of another.

A

buffering, caching, spooling

185
Q

I/O Subsystem

I/O subsystem handles memory management for I/O, including ___, which temporarily stores data during transfers.

186
Q

I/O Subsystem

I/O subsystem handles memory management for I/O, including ___, which keeps frequently accessed data in faster storage for improved performance.

187
Q

I/O Subsystem

I/O subsystem handles memory management for I/O, including ___, which allows the output of one job to overlap with the input of another.

188
Q

I/O Subsystem

The I/O subsystem provides a ___, along with ___, ensuring seamless communication between the operating system and connected peripherals.

A

general device-driver interface,
drivers specific to each hardware device

189
Q

Protection and Security

___ refers to mechanisms that control access to system resources, ensuring that processes and users interact safely within the constraints defined by the operating system.

A

Protection

190
Q

Protection and Security

___ focuses on defending the system against internal and external threats, including denial-of-service attacks, worms, viruses, identity theft, and theft of service.

191
Q

Protection and Security

To enforce protection and security, systems first identify ___ to determine ___.

A

users, access privileges

192
Q

Protection and Security

Each user is assigned a user identity (User ID or security ID), which includes a ___ and ___.

A

unique name, number

193
Q

Protection and Security

Each user is assigned a ___, which includes a unique name and number.

A

user identity (User ID or security ID)

194
Q

Protection and Security

The ID is linked to all ___ and ___ belonging to the user, defining their access permissions.

A

files, processes

195
Q

Protection and Security

A ___ enables managing access for multiple users collectively, allowing controlled interactions with files and processes.

A

group identifier (Group ID)

196
Q

Protection and Security

___ allows a user to temporarily switch to a higher-privileged identity, granting them additional rights when necessary.

A

Privilege escalation

197
Q

Virtualization

___ enables an operating system to run applications within another OS, making it a rapidly growing industry.

A

Virtualization

198
Q

Virtualization

When the source and target CPU types differ, ___ is used to bridge the gap, such as translating PowerPC instructions to Intel x86.

199
Q

Virtualization

However, emulation is generally the ___ method, especially when programs are ___ rather than compiled into native machine code.

A

slowest, interpreted (Interpretation)

200
Q

Virtualization

In virtualization, the ___ is natively compiled for the CPU, and ___ also run natively compiled.

A

operating system, guest operating systems

For example, VMware can run multiple Windows XP guest systems, each executing its own applications, on a Windows XP host OS.

201
Q

Virtualization

A ___ provides the necessary virtualization services, enabling efficient resource sharing between the host and guest systems.

A

Virtual Machine Manager (VMM)

202
Q

Virtualization (cont.)

Virtualization is widely used in laptops and desktops to run multiple operating systems for ___ and ___.

A

compatibility, exploration

A common example is an Apple laptop running macOS as the host OS and Windows as a guest OS. This setup is beneficial for developing applications across multiple operating systems without requiring separate machines. It also enables quality assurance testing in different environments and allows efficient execution and management of computing resources in data centers.

203
Q

Virtualization (cont.)

A Virtual Machine Manager (VMM) can run ___, meaning it acts as the ___ system itself.

A

natively, host

204
Q

Virtualization (cont.)

In such cases, there is no general-purpose host OS, as seen in platforms like ___ and ___.

A

VMware ESX, Citrix XenServer

205
Q

Computing Environments - Virtualization

[Diagram]

In a traditional computing environment, processes interact directly with the kernel through a programming interface, which manages hardware resources.

In a virtualized environment, a Virtual Machine Manager (VMM) is introduced between the hardware and multiple virtual machines (VMs). Each VM operates with its own kernel, allowing separate sets of processes to run independently.

206
Q

Computing Environments - Virtualization

In a traditional computing environment, processes interact directly with the kernel through a ___, which manages hardware resources.

A

programming interface

207
Q

Computing Environments - Virtualization

In a virtualized environment, a ___ is introduced between the hardware and multiple virtual machines (VMs).

A

Virtual Machine Manager (VMM)

208
Q

Computing Environments - Virtualization

In a virtualized environment, a Virtual Machine Manager (VMM) is introduced between the ___ and multiple ___.

A

hardware, virtual machines (VMs)

209
Q

Computing Environments - Virtualization

In a virtualized environment, a Virtual Machine Manager (VMM) is introduced between the hardware and multiple virtual machines (VMs). Each VM operates with its own ___, allowing separate sets of processes to run independently.

210
Q

Distributed Systems

A ___ consists of multiple networked systems, which may be heterogeneous and function as a unified environment.

A

distributed system

211
Q

Distributed Systems

A ___ serves as the communication path, with ___ being the most commonly used protocol.

A

network, TCP/IP

212
Q

Distributed Systems

Networks can be categorized based on their scope, including:
* ___
* ___
* ___
* ___

A
  • Local Area Networks (LANs)
  • Wide Area Networks (WANs)
  • Metropolitan Area Networks (MANs)
  • Personal Area Networks (PANs).
213
Q

Distributed Systems

A ___ facilitates interaction between systems across the network. It provides a communication scheme that allows systems to exchange messages and creates the illusion of a single, cohesive system, ensuring seamless integration and resource sharing.

A

Network Operating System

214
Q

Distributed Systems

Network Operating System provides a ___ that allows systems to exchange messages and creates the ___ of a single, cohesive system, ensuring seamless integration and resource sharing.

A

communication scheme, illusion

215
Q

Computer-System Architecture

Most computer systems operate with a ___ processor, though many also incorporate ___ processors for specific tasks.

A

single general-purpose, special-purpose

216
Q

Computer-System Architecture

___ are becoming increasingly important due to their efficiency and performance benefits.

A

Multiprocessor systems

217
Q

Computer-System Architecture

Multiprocessor systems, also known as ___ or ___, these architectures offer several advantages, including increased throughput, economy of scale, and improved reliability through graceful degradation or fault tolerance.

A

parallel systems, tightly coupled systems

218
Q

Computer-System Architecture

Parallel systems or tightly coupled systems offer several advantages, including:
* ___
* ___
* ___

A
  • increased throughput
  • economy of scale
  • improved reliability through graceful degradation or fault tolerance
219
Q

Computer-System Architecture

Multiprocessor systems are categorized into two types:
* ___
* ___

A
  • Asymmetric Multiprocessing - each processor is assigned a specific task, leading to a structured division of labor.
  • Symmetric Multiprocessing - all processors share the workload equally, performing the same types of tasks to optimize system performance.
220
Q

Computer-System Architecture

In ___, each processor is assigned a specific task, leading to a structured division of labor.

A

Asymmetric Multiprocessing

221
Q

Computer-System Architecture

In ___, all processors share the workload equally, performing the same types of tasks to optimize system performance.

A

Symmetric Multiprocessing

222
Q

Symmetric Multiprocessing Architecture

Symmetric Multiprocessing Architecture Diagram

In Symmetric Multiprocessing (SMP), multiple processors share the same main memory and operate under a single operating system. Each processor has its own CPU, registers, and cache, allowing independent execution of tasks while accessing shared memory. This architecture enhances performance, reliability, and load balancing by distributing computational tasks across multiple processors.

223
Q

In Symmetric Multiprocessing (SMP), multiple ___ share the same ___ and operate under a single ___.

A

processors, main memory, operating system

224
Q

In Symmetric Multiprocessing (SMP), each processor has its own ___, ___, and ___, allowing independent execution of tasks while accessing shared memory.

A

CPU, registers, cache

225
Q

Dual-Core Design

A ___ processor consists of two CPU cores integrated within a single processor chip.

226
Q

Dual-Core Design

Each core has its own ___ and ___, allowing independent execution of tasks.

A

registers, L1 cache

227
Q

Dual-Core Design

Both cores share an ___ which helps coordinate data access before reaching main memory.

228
Q

Dual-Core Design

In addition to multicore processors, some systems use a ___ approach, where multiple processor chips work together.

A

multi-chip

Other configurations include systems containing all chips within a chassis that holds multiple separate systems, optimizing computational power for high-performance computing environments.

229
Q

Non-Uniform Memory Access System

In a Non-Uniform Memory Access (NUMA) system, multiple CPUs are connected to their own local memory modules, but they can also access memory from other CPUs through an interconnect.

Memory access time varies depending on whether a CPU is accessing its local memory or remote memory from another CPU.

This architecture improves scalability and performance in multiprocessor systems by reducing memory access bottlenecks, though it requires optimized memory management for efficiency.

230
Q

Non-Uniform Memory Access System

In a Non-Uniform Memory Access (NUMA) system, multiple CPUs are connected to their own ___.

A

local memory modules

231
Q

Non-Uniform Memory Access System

In a Non-Uniform Memory Access (NUMA) system, multiple CPUs are connected to their own local memory modules, but they can also access memory from other CPUs through an ___.

A

interconnect

232
Q

Non-Uniform Memory Access System

Memory access time varies depending on whether a CPU is accessing its ___ or ___ from another CPU.

A

local memory, remote memory

233
Q

Clustered Systems

___ function similarly to multiprocessor systems, but instead of multiple processors within a single system, they consist of multiple systems working together.

A

Clustered systems

234
Q

Clustered Systems

Clustered systems function similarly to multiprocessor systems, but instead of multiple processors within a single system, they consist of ___ working together.

A

multiple systems

235
Q

Clustered Systems

These systems typically share storage through a ___ and provide high-availability services that ensure continued operation even in the event of failures.

A

Storage Area Network (SAN)

236
Q

Clustered Systems

These systems typically share storage through a Storage Area Network (SAN) and provide ___ services that ensure continued operation even in the event of failures.

A

high-availability

237
Q

Clustered Systems

In ___, one system remains in hot-standby mode, ready to take over if the active system fails.

A

asymmetric clustering

238
Q

Clustered Systems

In ___, multiple nodes actively run applications while monitoring each other, ensuring load balancing and fault tolerance.

A

symmetric clustering

239
Q

Clustered Systems

Some clusters are designed for ___, where applications must be optimized for parallel execution to maximize performance.

A

high-performance computing (HPC)

240
Q

Clustered Systems

Additionally, certain clustered systems incorporate a ___ to prevent conflicts when multiple nodes access shared resources simultaneously.

A

Distributed Lock Manager (DLM)

241
Q

Clustered Systems

Clustered Systems Diagram

A clustered system consists of multiple computers connected via an interconnect, sharing access to a Storage Area Network (SAN).

This setup enhances performance, availability, and fault tolerance by allowing systems to work together. If one computer fails, others can take over its tasks, ensuring continued operation. Clustered systems are commonly used for high-availability services and high-performance computing (HPC) applications.

242
Q

Clustered Systems

A clustered system consists of multiple ___ connected via an ___, sharing access to a ___.

A

computers, interconnect, Storage Area Network (SAN)

243
Q

PC Motherboard [Image]

A desktop PC motherboard is a fully functioning computer once its slots are populated. It includes a processor socket for the CPU, DRAM slots for memory, PCI bus slots for expansion cards, and various I/O and power connectors. Even low-cost general-purpose CPUs contain multiple cores. Some motherboards support multiple processor sockets, and advanced systems can integrate more than one system board, enabling NUMA (Non-Uniform Memory Access) architectures for high-performance computing.

244
Q

PC Motherboard [Image]

A ___ is a fully functioning computer once its slots are populated.

A

desktop PC motherboard

245
Q

PC Motherboard [Image]

A desktop PC motherboard includes a ___ for the CPU, ___ for memory, ___ for expansion cards, and various ___.

A

processor socket, DRAM slots, PCI bus slots, I/O and power connectors

246
Q

PC Motherboard [Image]

Even ___ general-purpose CPUs contain multiple cores.

247
Q

PC Motherboard [Image]

Some motherboards support multiple processor sockets, and advanced systems can integrate more than one system board, enabling ___ architectures for high-performance computing.

A

NUMA (Non-Uniform Memory Access)

248
Q

Computing Environments

Computing Environments

  • ___
  • ___
  • ___
  • ___
  • ___
  • ___
A
  • Traditional
  • Mobile
  • Client Server
  • Peer-to-Peer
  • Cloud computing
  • Real-time Embedded
249
Q

Computing Environments

___ computing systems are stand-alone general-purpose machines, but the distinction has become blurred as most systems now interconnect with others, primarily through the Internet.

A

Traditional

250
Q

Traditional

___ provide access to internal systems, enabling remote interactions.

A

Web portals

251
Q

Traditional

___, or ___, function similarly to web terminals, relying on external resources rather than local processing power.

A

Network computers, thin clients

252
Q

Traditional

Mobile computers enhance connectivity by using ___ for seamless communication.

A

wireless networks

253
Q

As networking becomes ___, even home systems implement ___ to protect against Internet-based threats, ensuring security in interconnected environments.

A

ubiquitous, firewalls

254
Q

Computing Environments

___, such as smartphones and tablets, differ from traditional laptops in functionality and design.

A

Mobile [devices]

255
Q

Mobile

Mobile devices incorporate additional operating system features, including ___ and ___, enabling applications like augmented reality.

A

GPS, gyroscopes

256
Q

Mobile

Connectivity is provided through ___ networks or ___ networks, ensuring seamless communication.

A

IEEE 802.11 wireless, cellular data

257
Q

Mobile

The leading mobile operating systems are ___ and ___, dominating the industry with extensive app ecosystems and continuous advancements.

A

Apple iOS, Google Android

258
Q

Computing Environments

In ___ computing, traditional dumb terminals have been replaced by smart PCs that can process data independently.

A

Client-Server

259
Q

Client-Server

Many modern systems function as ___, responding to requests generated by ___.

A

servers, clients

260
Q

Client-Server

A ___ provides an interface for clients to request services, such as database access.

A

compute-server system

261
Q

Client-Server

A ___ allows clients to store and retrieve files, enabling efficient data management and resource sharing across a network.

A

file-server system

262
Q

Client-Server

Client-Server Model

In a client-server model, a server is connected to multiple clients through a network, providing services such as data storage, processing, or application hosting. Clients can include desktops, laptops, and smartphones, all communicating with the server to request and receive data. This architecture enables efficient resource sharing, centralized management, and seamless connectivity across different devices.

263
Q

Client-Server

In a client-server model, a ___ is connected to multiple ___ through a ___, providing services such as data storage, processing, or application hosting.

A

server, clients, network

264
Q

Client-Server

Clients can include ___, ___, and ___, all communicating with the server to request and receive data.

A

desktops, laptops, smartphones

265
Q

Computing Environments

___ is a distributed system model where there is no distinction between clients and servers. Instead, all nodes function as peers, capable of acting as clients, servers, or both depending on the situation.

A

Peer-to-Peer (P2P)

266
Q

Peer-to-Peer (P2P)

To participate in a P2P network, a node must first join the network by either:
* ___
* ___

A
  • registering its services with a central lookup service; or
  • broadcasting service requests using a discovery protocol.
267
Q

Peer-to-Peer (P2P)

Well-known examples of P2P applications include ___, ___, and Voice over IP (VoIP) services like ___.

A

Napster, Gnutella, Skype

268
Q

Computing Environments

___ delivers computing power, storage, and applications as a service across a network.

A

Cloud computing

269
Q

Cloud computing

Cloud computing is a logical extension of ___, using it as the foundation for its functionality.

A

virtualization

270
Q

Cloud computing

Services like ___ operate at massive scales, with thousands of servers, millions of virtual machines, and petabytes of storage, all accessible via the Internet on a pay-as-you-use basis.

A

Amazon EC2

271
Q

Cloud computing

A ___ is accessible over the Internet to anyone willing to pay.

A

public cloud

272
Q

Cloud computing

A ___ is operated exclusively for a single organization.

A

private cloud

273
Q

Cloud computing

A ___ combines both public and private cloud components.

A

hybrid cloud

274
Q

Cloud computing

Cloud services are also classified based on their offerings:

  • ___
  • ___
  • ___
A
  • Software as a Service (SaaS) provides applications like word processors over the Internet,
  • Platform as a Service (PaaS) offers ready-to-use software stacks such as database servers, and
  • Infrastructure as a Service (IaaS) supplies resources like servers and storage for various computing needs.
275
Q

Cloud computing

Provides applications like word processors over the Internet.

A

Software as a Service (SaaS)

276
Q

Cloud computing

Offers ready-to-use software stacks such as database servers.

A

Platform as a Service (PaaS)

277
Q

Cloud computing

Supplies resources like servers and storage for various computing needs.

A

Infrastructure as a Service (IaaS)

278
Q

Cloud computing

A cloud computing environment consists of ___, ___, and ___.

A
  • traditional operating systems,
  • virtual machine managers (VMMs)
  • cloud management tools
279
Q

Cloud computing

To maintain security, ___ are essential for Internet connectivity, while ___ distribute traffic across multiple applications, ensuring efficiency and reliability.

A

firewalls, load balancers

280
Q

Cloud computing

Cloud Computing Architecture [Image]

A cloud computing architecture consists of multiple components working together to handle customer requests efficiently. The Internet connects users to the cloud customer interface, which processes requests and sends cloud management commands. A firewall secures the network by filtering incoming traffic, while a load balancer distributes workloads across available resources. Within the cloud, multiple virtual machines run on servers, providing computing power, while storage systems manage data. Cloud management services oversee resource allocation and system operations, ensuring scalability and performance.

281
Q

Cloud computing

Cloud Computing Architecture [Image]

The ___ connects users to the cloud customer interface, which processes requests and sends cloud management commands.

282
Q

Cloud computing

Cloud Computing Architecture [Image]

A ___ secures the network by filtering incoming traffic, while a ___ distributes workloads across available resources.

A

firewall, load balancer

283
Q

Cloud computing

Cloud Computing Architecture [Image]

Within the cloud, multiple ___ run on servers, providing computing power, while ___ manage data.

A

virtual machines, storage systems

284
Q

Computing Environments

___ are among the most prevalent forms of computers, designed for specialized and limited purposes with real-time operating systems (RTOS).

Their use continues to expand across various industries, supporting applications that require precise timing and reliability.

A

Real-time embedded systems

285
Q

Real-time embedded systems

Real-time embedded systems are among the most prevalent forms of computers, designed for specialized and limited purposes with ___.

A

real-time operating systems (RTOS)

286
Q

Real-time embedded systems

Beyond real-time systems, other special computing environments exist, some operating with dedicated operating systems, while others perform tasks without an OS.

A ___ operates under fixed time constraints, ensuring that processing is completed within predefined limits. The system functions correctly only if these constraints are consistently met, making precise execution critical for its operation.

A

real-time OS

287
Q

Real-time embedded systems

A real-time OS operates under fixed ___ constraints, ensuring that processing is completed within predefined limits.

The system functions correctly only if these constraints are consistently met, making precise execution critical for its operation.

288
Q

Abbreviations

VMM stands for ___.

A

Virtual Machine Manager

Provides virtualization services

289
Q

Acronyms

API stands for ___.

A

Application Programming Interface

Allows different software applications to communicate and exchange data

290
Q

Acronyms

ALU stands for ___.

A

Arithmetic Logic Unit

Performs arithmetic and logical operations.

291
Q

Acronyms

CU stands for ___.

A

Control Unit

Directs the operations of the ALU and manages the execution of instructions.

292
Q

Acronyms

RAM stands for ___.

A

Random Access Memory

Volatile memory; loses data when power is off.

293
Q

Acronyms

ROM stands for ___.

A

Read-Only Memory

Permanent memory; retains data even when power is off.

294
Q

Acronyms

PC stands for ___.

A

Program Counter

Contains the address of the next instruction to be executed.

295
Q

Acronyms

BASIC stands for ___.

A

Beginner’s All-purpose Symbolic Instruction Code

An early programming language designed to help beginners and non-technical users solve simple problems.

296
Q

Acronyms

UNIX stands for ___.

A

UNiplexed Information Computing System

A highly popular, powerful, multitasking OS introduced in 1969.

297
Q

Acronyms

IPC stands for ___.

A

Inter-Process Communication

Mechanism that allows processes to exchange data and synchronize their actions while running independently within an operating system.

298
Q

Extra Notes

  • The process of switching between different applications or processes.
  • Involves kernel mode (system control) and user mode (user control).
A

Context Switching

299
Q

Extra Notes

C: Errors (Traps)

  • ___
  • ___
  • ___
  • ___
  • ___
A
  • Division by zero – Causes a runtime error (trap).
  • Infinite loop – Can be interrupted using Ctrl + Break.
  • Null pointer assignment – Error occurs when a pointer is assigned to NULL and dereferenced.
  • Uninitialized pointer (int *a;) – Using an uninitialized pointer, especially in a linked list, can cause undefined behavior.
  • Dereferencing an invalid pointer (*a) – Accessing an invalid or unallocated memory address results in an error.
300
Q

Extra Notes

Free and Open-Source Operating Systems

  • Operating systems are made available in source-code format, rather than just binary closed-source and proprietary versions.
  • Developed as a counter-movement to copy protection and Digital Rights Management (DRM) restrictions.
  • Initiated by the Free Software Foundation (FSF), which introduced the “copyleft” GNU Public License (GPL).
  • Free software and open-source software are distinct concepts, advocated by different groups. More details can be found at GNU Philosophy.
  • Examples include GNU/Linux and BSD UNIX (which forms the core of Mac OS X) and many other open-source OSes.
  • Virtual Machine Managers (VMMs) such as VMware Player (free on Windows) and VirtualBox (open-source and free on multiple platforms - VirtualBox) allow users to run guest operating systems for testing and exploration.
301
Q

Extra Notes

Java: Exception Handling & Garbage Collection

  • Exception Handling – Manages runtime errors to prevent crashes and ensure smooth program execution.
  • Garbage Collection – Automatically frees unused memory by reclaiming space from objects no longer in use, improving efficiency.
  • Memory is automatically allocated for declared variables and arrays, and garbage collection ensures it is reclaimed and reused when no longer needed.