Module 1 Flashcards

(301 cards)

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
# Defining Operating Systems The term OS was born when fixed-use computers for ___ became more general purpose and needed resource management and program control.
military
26
The term OS was born when fixed-use computers for military became more general purpose and needed ___ and ___.
resource management, program control
27
___ has no universally accepted definition.
Operating System
28
# Operating System Definition “Everything a ___ ships when you order an operating system” is a good approximation but varies wildly.
vendor
29
# Operating System Definition “The one program running at all times on the computer” is the ___, part of the operating system.
kernel
30
# 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 **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.
31
# Operating System Definition Ships with the operating system but is not part of the kernel
System program
32
# Operating System Definition Includes all programs not associated with the operating system.
Application program
33
# 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.
middleware
34
# Computer System Organization Computer-system operation involves one or more ___ and ___ connected through a common bus, providing access to shared memory.
CPUs, device controllers
35
# Computer System Organization Computer-system operation involves one or more CPUs and device controllers connected through a ___, providing access to shared memory.
common bus
36
The CPUs and devices execute ___, competing for memory cycles.
concurrently
37
The CPUs and devices execute concurrently, competing for ___.
memory cycles
38
# Computer-System Operation ___ and the ___ can execute concurrently, with each device controller managing a specific type of device.
I/O devices, CPU
39
# Computer-System Operation Each ___ is in charge of a particular device type.
device controller
40
# Computer-System Operation Every device controller has a ___ and is managed by an operating system device driver.
local buffer
41
# Computer-System Operation Every device controller has a local buffer and is managed by an operating system ___.
device driver
42
# Computer-System Operation The CPU moves data between ___ and ___.
main memory, local buffers
43
# Computer-System Operation I/O operations occur from the ___ to the controller's ___.
device, local buffer
44
# Computer-System Operation Once an operation is complete, the device controller notifies the CPU by triggering an ___.
interrupt
45
# Common Functions of Interrupts Interrupt transfers control to the interrupt service routine generally, through the ___, which contains the addresses of all the service routines.
interrupt vector
46
# Common Functions of Interrupts Interrupt architecture must save the ___ of the interrupted instruction.
address
47
# Common Functions of Interrupts A ___ or ___ is a software-generated interrupt caused either by an error or a user request.
trap, exception
48
# Common Functions of Interrupts An operating system is ___ driven.
interrupt
49
The ___ diagram shows how the CPU and I/O devices interact using interrupts.
Interrupt Timeline
50
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**. 1. 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. 1. 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.
Noted ## Footnote 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.
51
# Interrupt Timeline 1.) Initially, the CPU runs a ___, while the I/O device remains ___.
user program, idle
52
# 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.
request, interrupt
53
# Interrupt Timeline 3.) The CPU then ___ its current task, processes the ___, and ___ execution after handling it.
pauses, interrupt, resumes
54
# 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.
registers, program counter
55
___ are small, high-speed memory locations inside the CPU that store data, instructions, and addresses temporarily for quick processing.
Registers
56
# Interrupt Handling ___ contains the address of the next instruction to be executed.
Program Counter (PC)
57
# Interrupt Handling Separate segments of ___ handle each type of interrupt, ensuring the appropriate action is taken.
code
58
# 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.
Noted
59
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.
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
60
# I/O Structure There are two methods for handling I/O: * ___ * ___
* **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.
61
# I/O Structure After I/O starts, control returns to the user program only upon I/O completion.
Synchronous I/O
62
# I/O Structure After I/O starts, control returns to the user program immediately, without waiting for I/O completion.
Asynchronous I/O
63
# 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.
wait instruction, wait loop
64
# 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.
wait instruction
65
# 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.
wait loop
66
# 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.
system call
67
# 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.
device-status table
68
# 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 ___.
type, address, state
69
# 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.
I/O device table
70
# Storage Structure ___ is the only large storage medium that the CPU can access directly.
Main memory
71
# Storage Structure The main memory features ___, and is typically ___.
random access, volatile
72
# Storage Structure The main memory is commonly implemented as ___.
Dynamic Random-Access Memory (DRAM)
73
# Storage Structure ___ serves as an extension of main memory, providing a large ___ storage capacity for long-term data retention.
Secondary storage, nonvolatile
74
# Storage Structure (Cont.) ___ consist of rigid metal or glass platters coated with magnetic recording material.
Hard disk drives (HDD)
75
# Storage Structure (Cont.) Hard disk drives (HDD) consist of ___ or ___ coated with magnetic recording material.
rigid metal, glass platters
76
# Storage Structure (Cont.) Hard disk drives (HDD) consist of rigid metal or glass platters coated with ___.
magnetic recording material
77
# Storage Structure (Cont.) [Hard disk drives (HDD)] The disk surface is logically divided into ___, which are further subdivided into ___.
tracks, sectors
78
# Storage Structure (Cont.) [Hard disk drives (HDD)] A ___ manages the logical interaction between the device and the computer.
disk controller
79
# Storage Structure (Cont.) ___ devices are faster than hard disks while maintaining non-volatile storage.
Non-volatile memory (NVM)
80
# Storage Structure (Cont.) These utilize various technologies and are becoming increasingly popular as their capacity and performance improve while prices continue to drop.
Non-volatile memory (NVM)
81
# Storage Definitions and Notation Review The basic unit of computer storage is the ___.
bit
82
# Storage Definitions and Notation Review A bit can contain one of two values, ___ and ___.
0, 1
83
# Storage Definitions and Notation Review All other storage in a computer is based on ___.
collections of bits
84
# Storage Definitions and Notation Review Given enough bits, it is amazing how many things a computer can represent: * ___ * ___ * ___ * ___ * ___ * ___ * ___
* numbers * letters * images * movies * sounds * documents * programs
85
# Storage Definitions and Notation Review A ___ is 8 bits, and on most computers, it is the smallest convenient chunk of storage.
byte
86
# Storage Definitions and Notation Review It is the smallest convenient chunk of storage on most computers.
byte ## Footnote For example, most computers don’t have an instruction to move a bit but do have one to move a byte.
87
# Storage Definitions and Notation Review A less common term is ___, which is a given computer architecture’s native unit of data.
word
88
# Storage Definitions and Notation Review A word is made up of ___ or more bytes.
one ## Footnote 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.
89
# Storage Definitions and Notation Review Computer storage, along with most computer throughput, is generally measured and manipulated in ___ and collections of bytes.
bytes
90
# Storage Definitions and Notation Review A kilobyte (KB) is ___ bytes.
1,024
91
# Storage Definitions and Notation Review A megabyte (MB) is ___ bytes.
1,024^2
92
# Storage Definitions and Notation Review A gigabyte (GB) is ___ bytes.
1,024^3
93
# Storage Definitions and Notation Review A terabyte (TB) is ___ bytes.
1,024^4
94
# Storage Definitions and Notation Review A petabyte (PB) is ___ bytes.
1,024^5
95
# Storage Definitions and Notation Review Computer manufacturers often round off these numbers and say that a megabyte is ___ bytes and a gigabyte is ___ bytes.
1 million, 1 billion
96
# 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.
bit(s)
97
# Storage Hierarchy Storage systems are organized in a hierarchy based on ___, ___, and ___.
* speed * cost * volatility ## Footnote *hierarchy matters
98
# Storage Hierarchy ___ improves performance by copying information into a faster storage system, allowing main memory to function as a cache for secondary storage.
Caching
99
# Storage Hierarchy Each device controller is managed by a ___, which provides a uniform interface between the controller and the operating system kernel.
device driver
100
# Storage Hierarchy Each device controller is managed by a device driver, which provides a uniform interface between the ___ and the operating system ___.
controller, kernel
101
# Storage-Device Hierarchy The **Storage-Device Hierarchy** is as follows (from fastest and smallest to slowest and largest): 1. ___ 1. ___ 1. ___ 1. ___ 1. ___ 1. ___ 1. ___
1. **Registers** (Primary Storage, Volatile, Fastest, Smallest) 1. **Cache** (Primary Storage, Volatile) 1. **Main Memory** (Primary Storage, Volatile) 1. **Nonvolatile Memory** (Secondary Storage, Nonvolatile) 1. **Hard-Disk Drives (HDD)** (Secondary Storage, Nonvolatile) 1. **Optical Disk** (Tertiary Storage, Nonvolatile) 1. **Magnetic Tapes** (Tertiary Storage, Nonvolatile, Slowest, Largest) ## Footnote *hierarchy matters (smallest to largest; faster to slower)
102
# Storage-Device Hierarchy Primary Storage
1. Registers 1. Cache 1. Main Memory ## Footnote *hierarchy matters (smallest to largest; faster to slower)
103
# Storage-Device Hierarchy Secondary Storage
1. Nonvolatile Memory (NVM) 1. Hard-Disk Drives (HDD) ## Footnote *hierarchy matters (smallest to largest; faster to slower)
104
# Storage-Device Hierarchy Tertiary Storage
1. Optical Disk 1. Magnetic Tapes ## Footnote *hierarchy matters (smallest to largest; faster to slower)
105
# Storage-Device Hierarchy Volatile Storage
1. Registers 1. Cache 1. Main Memory ## Footnote *hierarchy matters (smallest to largest; faster to slower)
106
# Storage-Device Hierarchy Nonvolatile Storage
1. Nonvolatile Memory 1. Hard-Disk Drives 1. Optical Disk 1. Magnetic Tapes ## Footnote *hierarchy matters (smallest to largest; faster to slower)
107
# Storage-Device Hierarchy Smallest and Fastest Storage
Registers
108
# Storage-Device Hierarchy Largest and Slowest Storage
Magnetic Tapes
109
# How a Modern Computer Works The Von Neumann architecture separates ___ and ___, enabling faster processing.
memory, CPU
110
# How a Modern Computer Works In the Von Neumann architecture, ___ enhances processing efficiency by enabling data transfers without CPU intervention.
Direct Memory Access (DMA)
111
# 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.
Noted
112
# Direct Memory Access Structure ___ is used for high-speed I/O devices capable of transmitting data at speeds close to that of memory.
Direct Memory Access (DMA)
113
# Direct Memory Access Structure The ___ handles data transfer by moving entire blocks from buffer storage directly to main memory without CPU intervention.
device controller
114
# Direct Memory Access Structure Instead of generating an interrupt for each byte, DMA reduces CPU overhead by generating only ___ interrupt per block of data.
one
115
# Operating-System Operations The ___ is a simple code that initializes the system and loads the kernel.
bootstrap program
116
# 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.
kernel, daemons
117
# Operating-System Operations The operating system is interrupt-driven, responding to both ___ and ___ interrupts.
hardware, software
118
# Operating-System Operations A ___ interrupt occurs when triggered by a device.
hardware
119
# 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.
exception, trap
120
# 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.
system call
121
# 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.
division by zero, infinite loops
122
# Multiprogramming (Batch System) A single user cannot always keep the CPU and I/O devices ___.
busy
123
# 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.
Multiprogramming
124
# Multiprogramming (Batch System) Multiprogramming improves system efficiency by organizing ___, ensuring the CPU always has a task to execute.
jobs ## Footnote 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
# 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.
job scheduling
126
# 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.
Multitasking
127
# 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.
interactive
128
# Multitasking (Timesharing) Response time should be ___ second to ensure a smooth user experience.
less than one (< 1)
129
# Multitasking (Timesharing) Each user has at least ___ executing process in memory.
one
130
# Multitasking (Timesharing) When multiple jobs are ready to run simultaneously, ___ determines which job gets processor time.
CPU scheduling
131
# 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.
swapping
132
# Multitasking (Timesharing) ___ further enhances efficiency by enabling processes to run even if they are not entirely loaded into memory.
Virtual memory
133
# 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 -:-:-:-:-:-:-:-:-:-:-:-:-:-
memory space
134
# Dual-Mode Operation ___ enables the operating system to protect itself and other system components.
Dual-mode operation
135
# Dual-Mode Operation Dual-mode operation operates in two modes: ___ and ___.
user mode, kernel mode
136
Dual-mode operation operates in two modes: user mode and kernel mode, with a ___ provided by hardware to differentiate between them.
mode bit
137
# Dual-Mode Operation When a user program runs, the mode bit is set to ___.
user mode
138
# Dual-Mode Operation When kernel code is executed, the mode bit switches to ___.
kernel mode
139
# 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.
system call
140
# Dual-Mode Operation Certain ___ instructions can only be executed in kernel mode, ensuring controlled access to critical system operations.
privileged
141
# 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**. 1. 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. 1. Once completed, control returns to **user mode**, restoring the **mode bit to 1**, allowing the user process to continue execution.
Noted
142
# 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 ___. 1. 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. 1. Once completed, control returns to ___ mode, restoring the mode bit to ___, allowing the user process to continue execution.
1. user, 1 2. trap, kernel, 0 3. user, 1
143
# Timer A ___ is used to prevent infinite loops or processes from monopolizing system resources.
timer
144
# Timer A timer is set to ___ the computer after a specified time period.
interrupt
145
# 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.
decremented, privileged
146
# Timer When the counter reaches ___, an ___ is generated.
zero, interrupt
147
The timer is set before ___ to ensure the operating system can regain control or terminate a program that exceeds its allotted time.
scheduling a process
148
# Process Management A ___ is a program in execution and serves as a unit of work within the system.
process
149
# 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.
passive, active
150
# 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.
single program counter
151
# Process Management A multi-threaded process has a ___ for each thread, allowing multiple sequences of execution.
separate program counter
152
# Process Management A typical system runs multiple processes simultaneously, including both ___ and ___.
user processes, operating system processes
153
# Process Management ___ is achieved by multiplexing the CPUs among processes and threads, ensuring efficient execution on one or more CPUs.
Concurrency
154
# Process Management Activities The operating system is responsible for the following activities in connection with process management: * ___ * ___ * ___ * ___ * ___
* 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
# Memory Management To execute a program, all or part of its ___ and required ___ must be loaded into memory.
instructions, data
156
# Memory Management ___ is responsible for determining what is in memory and when, ensuring optimal CPU utilization and system responsiveness for users.
Memory management
157
# Memory Management Memory management involves several key activities, including: * ___ * ___ * ___
* 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
# 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 ___.
file
159
# 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).
disk drive, tape drive
160
# 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).
* access speed, * capacity, * data transfer rate, * access methods
161
# File-System Management Files are typically organized into ___, with access control mechanisms determining user permissions.
directories
162
# File-System Management The operating system handles several file-system management activities, including: * ___ * ___ * ___ * ___
* 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
# 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.
Disks
164
# 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 ___.
disk subsystem, algorithms
165
The operating system performs several key mass-storage management activities, including: * ___ * ___ * ___ * ___ * ___ * ___
* mounting and unmounting storage devices * managing free space * allocating storage * scheduling disk access * partitioning disks * ensuring data protection.
166
# Caching ___ is a fundamental principle applied at multiple levels in a computer, including hardware, the operating system, and software.
Caching
167
# Caching Caching works by temporarily copying ___ information from slower storage to faster storage, improving access speed.
frequently used
168
# 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.
cache
169
# 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.
cache, slower storage
170
# 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.
cache management, cache size, replacement policies
171
# 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
# 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
[Level 1] Registers
173
# 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
[Level 2] Cache
174
# 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
[Level 3] Main Memory
175
# 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
[Level 4] Solid-State Disk (SSD)
176
# 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
[Level 5] Magnetic Disk
177
# Characteristics of Various Types of Storage Movement between levels of the storage hierarchy can be ___ or ___.
explicit, implicit
178
# 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.
most recent
179
# 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] ➡ ___ → ___ → ___ → ___
Magnetic Disk → Main Memory → Cache → Hardware Register
180
# 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.
cache coherency
181
# 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.
multiple copies
182
# I/O Subsystem One of the key functions of the operating system is to hide the ___ from the user.
complexities of hardware devices
183
# I/O Subsystem The ___ plays a crucial role in managing various aspects of input and output operations.
I/O subsystem
184
# 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.
buffering, caching, spooling
185
# I/O Subsystem I/O subsystem handles memory management for I/O, including ___, which temporarily stores data during transfers.
buffering
186
# I/O Subsystem I/O subsystem handles memory management for I/O, including ___, which keeps frequently accessed data in faster storage for improved performance.
caching
187
# 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.
spooling
188
# I/O Subsystem The I/O subsystem provides a ___, along with ___, ensuring seamless communication between the operating system and connected peripherals.
general device-driver interface, drivers specific to each hardware device
189
# 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.
Protection
190
# 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.
Security
191
# Protection and Security To enforce protection and security, systems first identify ___ to determine ___.
users, access privileges
192
# Protection and Security Each user is assigned a user identity (User ID or security ID), which includes a ___ and ___.
unique name, number
193
# Protection and Security Each user is assigned a ___, which includes a unique name and number.
user identity (User ID or security ID)
194
# Protection and Security The ID is linked to all ___ and ___ belonging to the user, defining their access permissions.
files, processes
195
# Protection and Security A ___ enables managing access for multiple users collectively, allowing controlled interactions with files and processes.
group identifier (Group ID)
196
# Protection and Security ___ allows a user to temporarily switch to a higher-privileged identity, granting them additional rights when necessary.
Privilege escalation
197
# Virtualization ___ enables an operating system to run applications within another OS, making it a rapidly growing industry.
Virtualization
198
# Virtualization When the source and target CPU types differ, ___ is used to bridge the gap, such as translating PowerPC instructions to Intel x86.
emulation
199
# Virtualization However, emulation is generally the ___ method, especially when programs are ___ rather than compiled into native machine code.
slowest, interpreted (Interpretation)
200
# Virtualization In virtualization, the ___ is natively compiled for the CPU, and ___ also run natively compiled.
operating system, guest operating systems ## Footnote For example, VMware can run multiple Windows XP guest systems, each executing its own applications, on a Windows XP host OS.
201
# Virtualization A ___ provides the necessary virtualization services, enabling efficient resource sharing between the host and guest systems.
Virtual Machine Manager (VMM)
202
# Virtualization (cont.) Virtualization is widely used in laptops and desktops to run multiple operating systems for ___ and ___.
compatibility, exploration ## Footnote 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
# Virtualization (cont.) A Virtual Machine Manager (VMM) can run ___, meaning it acts as the ___ system itself.
natively, host
204
# Virtualization (cont.) In such cases, there is no general-purpose host OS, as seen in platforms like ___ and ___.
VMware ESX, Citrix XenServer
205
# 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.
Noted
206
# Computing Environments - Virtualization In a traditional computing environment, processes interact directly with the kernel through a ___, which manages hardware resources.
programming interface
207
# Computing Environments - Virtualization In a virtualized environment, a ___ is introduced between the hardware and multiple virtual machines (VMs).
Virtual Machine Manager (VMM)
208
# Computing Environments - Virtualization In a virtualized environment, a Virtual Machine Manager (VMM) is introduced between the ___ and multiple ___.
hardware, virtual machines (VMs)
209
# 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.
kernel
210
# Distributed Systems A ___ consists of multiple networked systems, which may be heterogeneous and function as a unified environment.
distributed system
211
# Distributed Systems A ___ serves as the communication path, with ___ being the most commonly used protocol.
network, TCP/IP
212
# Distributed Systems Networks can be categorized based on their scope, including: * ___ * ___ * ___ * ___
* Local Area Networks (LANs) * Wide Area Networks (WANs) * Metropolitan Area Networks (MANs) * Personal Area Networks (PANs).
213
# 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.
Network Operating System
214
# 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.
communication scheme, illusion
215
# Computer-System Architecture Most computer systems operate with a ___ processor, though many also incorporate ___ processors for specific tasks.
single general-purpose, special-purpose
216
# Computer-System Architecture ___ are becoming increasingly important due to their efficiency and performance benefits.
Multiprocessor systems
217
# 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.
parallel systems, tightly coupled systems
218
# Computer-System Architecture Parallel systems or tightly coupled systems offer several advantages, including: * ___ * ___ * ___
* increased throughput * economy of scale * improved reliability through graceful degradation or fault tolerance
219
# Computer-System Architecture Multiprocessor systems are categorized into two types: * ___ * ___
* **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
# Computer-System Architecture In ___, each processor is assigned a specific task, leading to a structured division of labor.
Asymmetric Multiprocessing
221
# Computer-System Architecture In ___, all processors share the workload equally, performing the same types of tasks to optimize system performance.
Symmetric Multiprocessing
222
# 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.
Noted
223
In Symmetric Multiprocessing (SMP), multiple ___ share the same ___ and operate under a single ___.
processors, main memory, operating system
224
In Symmetric Multiprocessing (SMP), each processor has its own ___, ___, and ___, allowing independent execution of tasks while accessing shared memory.
CPU, registers, cache
225
# Dual-Core Design A ___ processor consists of two CPU cores integrated within a single processor chip.
dual-core
226
# Dual-Core Design Each core has its own ___ and ___, allowing independent execution of tasks.
registers, L1 cache
227
# Dual-Core Design Both cores share an ___ which helps coordinate data access before reaching main memory.
L2 cache
228
# Dual-Core Design In addition to multicore processors, some systems use a ___ approach, where multiple processor chips work together.
multi-chip ## Footnote Other configurations include systems containing all chips within a **chassis that holds multiple separate systems**, optimizing computational power for high-performance computing environments.
229
# 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.
Noted
230
# Non-Uniform Memory Access System In a Non-Uniform Memory Access (NUMA) system, multiple CPUs are connected to their own ___.
local memory modules
231
# 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
232
# Non-Uniform Memory Access System Memory access time varies depending on whether a CPU is accessing its ___ or ___ from another CPU.
local memory, remote memory
233
# Clustered Systems ___ function similarly to multiprocessor systems, but instead of multiple processors within a single system, they consist of multiple systems working together.
Clustered systems
234
# Clustered Systems Clustered systems function similarly to multiprocessor systems, but instead of multiple processors within a single system, they consist of ___ working together.
multiple systems
235
# Clustered Systems These systems typically share storage through a ___ and provide high-availability services that ensure continued operation even in the event of failures.
Storage Area Network (SAN)
236
# 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.
high-availability
237
# Clustered Systems In ___, one system remains in hot-standby mode, ready to take over if the active system fails.
asymmetric clustering
238
# Clustered Systems In ___, multiple nodes actively run applications while monitoring each other, ensuring load balancing and fault tolerance.
symmetric clustering
239
# Clustered Systems Some clusters are designed for ___, where applications must be optimized for parallel execution to maximize performance.
high-performance computing (HPC)
240
# Clustered Systems Additionally, certain clustered systems incorporate a ___ to prevent conflicts when multiple nodes access shared resources simultaneously.
Distributed Lock Manager (DLM)
241
# 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.
Noted
242
# Clustered Systems A clustered system consists of multiple ___ connected via an ___, sharing access to a ___.
computers, interconnect, Storage Area Network (SAN)
243
# 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.
Noted
244
# PC Motherboard [Image] A ___ is a fully functioning computer once its slots are populated.
desktop PC motherboard
245
# PC Motherboard [Image] A desktop PC motherboard includes a ___ for the CPU, ___ for memory, ___ for expansion cards, and various ___.
processor socket, DRAM slots, PCI bus slots, I/O and power connectors
246
# PC Motherboard [Image] Even ___ general-purpose CPUs contain multiple cores.
low-cost
247
# 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.
NUMA (Non-Uniform Memory Access)
248
# Computing Environments Computing Environments * ___ * ___ * ___ * ___ * ___ * ___
* Traditional * Mobile * Client Server * Peer-to-Peer * Cloud computing * Real-time Embedded
249
# 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.
Traditional
250
# Traditional ___ provide access to internal systems, enabling remote interactions.
Web portals
251
# Traditional ___, or ___, function similarly to web terminals, relying on external resources rather than local processing power.
Network computers, thin clients
252
# Traditional Mobile computers enhance connectivity by using ___ for seamless communication.
wireless networks
253
As networking becomes ___, even home systems implement ___ to protect against Internet-based threats, ensuring security in interconnected environments.
ubiquitous, firewalls
254
# Computing Environments ___, such as smartphones and tablets, differ from traditional laptops in functionality and design.
Mobile [devices]
255
# Mobile Mobile devices incorporate additional operating system features, including ___ and ___, enabling applications like augmented reality.
GPS, gyroscopes
256
# Mobile Connectivity is provided through ___ networks or ___ networks, ensuring seamless communication.
IEEE 802.11 wireless, cellular data
257
# Mobile The leading mobile operating systems are ___ and ___, dominating the industry with extensive app ecosystems and continuous advancements.
Apple iOS, Google Android
258
# Computing Environments In ___ computing, traditional dumb terminals have been replaced by smart PCs that can process data independently.
Client-Server
259
# Client-Server Many modern systems function as ___, responding to requests generated by ___.
servers, clients
260
# Client-Server A ___ provides an interface for clients to request services, such as database access.
compute-server system
261
# Client-Server A ___ allows clients to store and retrieve files, enabling efficient data management and resource sharing across a network.
file-server system
262
# 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.
Noted
263
# Client-Server In a client-server model, a ___ is connected to multiple ___ through a ___, providing services such as data storage, processing, or application hosting.
server, clients, network
264
# Client-Server Clients can include ___, ___, and ___, all communicating with the server to request and receive data.
desktops, laptops, smartphones
265
# 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.
Peer-to-Peer (P2P)
266
# Peer-to-Peer (P2P) To participate in a P2P network, a node must first join the network by either: * ___ * ___
* registering its services with a central lookup service; or * broadcasting service requests using a **discovery protocol**.
267
# Peer-to-Peer (P2P) Well-known examples of P2P applications include ___, ___, and Voice over IP (VoIP) services like ___.
Napster, Gnutella, Skype
268
# Computing Environments ___ delivers computing power, storage, and applications as a service across a network.
Cloud computing
269
# Cloud computing Cloud computing is a logical extension of ___, using it as the foundation for its functionality.
virtualization
270
# 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.
Amazon EC2
271
# Cloud computing A ___ is accessible over the Internet to anyone willing to pay.
public cloud
272
# Cloud computing A ___ is operated exclusively for a single organization.
private cloud
273
# Cloud computing A ___ combines both public and private cloud components.
hybrid cloud
274
# Cloud computing Cloud services are also classified based on their offerings: * ___ * ___ * ___
* **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
# Cloud computing Provides applications like word processors over the Internet.
Software as a Service (SaaS)
276
# Cloud computing Offers ready-to-use software stacks such as database servers.
Platform as a Service (PaaS)
277
# Cloud computing Supplies resources like servers and storage for various computing needs.
Infrastructure as a Service (IaaS)
278
# Cloud computing A cloud computing environment consists of ___, ___, and ___.
* traditional operating systems, * virtual machine managers (VMMs) * cloud management tools
279
# Cloud computing To maintain security, ___ are essential for Internet connectivity, while ___ distribute traffic across multiple applications, ensuring efficiency and reliability.
firewalls, load balancers
280
# 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.
Noted
281
# Cloud computing **Cloud Computing Architecture [Image]** The ___ connects users to the cloud customer interface, which processes requests and sends cloud management commands.
Internet
282
# Cloud computing **Cloud Computing Architecture [Image]** A ___ secures the network by filtering incoming traffic, while a ___ distributes workloads across available resources.
firewall, load balancer
283
# Cloud computing **Cloud Computing Architecture [Image]** Within the cloud, multiple ___ run on servers, providing computing power, while ___ manage data.
virtual machines, storage systems
284
# 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.
Real-time embedded systems
285
# Real-time embedded systems Real-time embedded systems are among the most prevalent forms of computers, designed for specialized and limited purposes with ___.
real-time operating systems (RTOS)
286
# 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.
real-time OS
287
# 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.
time
288
# Abbreviations VMM stands for ___.
Virtual Machine Manager ## Footnote Provides virtualization services
289
# Acronyms API stands for ___.
Application Programming Interface ## Footnote Allows different software applications to communicate and exchange data
290
# Acronyms ALU stands for ___.
Arithmetic Logic Unit ## Footnote Performs arithmetic and logical operations.
291
# Acronyms CU stands for ___.
Control Unit ## Footnote Directs the operations of the ALU and manages the execution of instructions.
292
# Acronyms RAM stands for ___.
Random Access Memory ## Footnote Volatile memory; loses data when power is off.
293
# Acronyms ROM stands for ___.
Read-Only Memory ## Footnote Permanent memory; retains data even when power is off.
294
# Acronyms PC stands for ___.
Program Counter ## Footnote Contains the address of the next instruction to be executed.
295
# Acronyms BASIC stands for ___.
Beginner’s All-purpose Symbolic Instruction Code ## Footnote An early programming language designed to help beginners and non-technical users solve simple problems.
296
# Acronyms UNIX stands for ___.
UNiplexed Information Computing System ## Footnote A highly popular, powerful, multitasking OS introduced in 1969.
297
# Acronyms IPC stands for ___.
Inter-Process Communication ## Footnote Mechanism that allows processes to exchange data and synchronize their actions while running independently within an operating system.
298
# Extra Notes - The process of switching between different applications or processes. - Involves kernel mode (system control) and user mode (user control).
Context Switching
299
# Extra Notes C: Errors (Traps) * ___ * ___ * ___ * ___ * ___
* **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
# 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](https://www.gnu.org/philosophy/open-source-misses-the-point.en.html). - 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](http://www.virtualbox.com))** allow users to **run guest operating systems** for testing and exploration.
Notes
301
# 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.
Noted