340 Final

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/205

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 3:32 PM on 5/20/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

206 Terms

1
New cards

Von Neumann architecture

Computer structure where instructions and data are stored in the same main memory.

2
New cards

Operating system

Software that manages hardware, provides services for programs, and acts as intermediary between user and hardware.

3
New cards

Kernel

The one program always running in memory that controls the system.

4
New cards

Control program

Program that manages execution of user programs and controls I/O devices.

5
New cards

CPU

Hardware component that executes instructions.

6
New cards

Processor

Physical chip containing one or more CPUs.

7
New cards

Core

Basic computational unit within a CPU.

8
New cards

Multiprocessor system

System with two or more processors or cores sharing resources.

9
New cards

Multicore processor

Single CPU chip with multiple processing cores.

10
New cards

Parallelization

Dividing a program into components that run in parallel.

11
New cards

Trap

Software-generated interrupt caused by error or system-call request.

12
New cards

Interrupt

Hardware mechanism that signals the CPU for attention.

13
New cards

Interrupt vector

Kernel structure containing addresses of interrupt handlers.

14
New cards

System call

Software-triggered interrupt used by a process to request OS service.

15
New cards

Multiprogramming

Technique of keeping multiple jobs in memory to maximize CPU utilization.

16
New cards

Multitasking

Switching CPU between jobs so users can interact with processes.

17
New cards

Degree of multiprogramming

Number of processes in memory.

18
New cards

Process

A program in execution.

19
New cards

CPU scheduler

Kernel routine selecting next ready thread/process for execution.

20
New cards

CPU-bound process

Spends more time computing than performing I/O.

21
New cards

I/O-bound process

Spends more time performing I/O than computing.

22
New cards

CPU burst

Period when process executes on CPU.

23
New cards

I/O burst

Period when process waits for I/O.

24
New cards

Virtual memory

Technique allowing execution of process not fully in physical memory.

25
New cards

Logical memory

Memory as viewed by user.

26
New cards

User mode

Restricted CPU mode preventing privileged instructions.

27
New cards

Kernel mode

CPU mode allowing execution of privileged instructions.

28
New cards

Program counter

Register containing address of next instruction.

29
New cards

Cache

Fast temporary storage improving memory performance.

30
New cards

Cache coherency

Ensuring consistent copies of data across multiple caches.

31
New cards

Cache-consistency problem

Challenge of maintaining identical cached data.

32
New cards

Caching

Using temporary storage to improve access speed.

33
New cards

Process states

New, Ready, Running, Waiting, Terminated.

34
New cards

New state

Process being created and not yet admitted for execution.

35
New cards

Ready state

Process waiting in Memory for CPU.

36
New cards

Running state

Process executing instructions on CPU.

37
New cards

Waiting state

Process waiting for event or I/O completion.

38
New cards

Terminated state

Process finished execution.

39
New cards

Text section

Executable code portion of process memory.

40
New cards

Data section

Global variables of process.

41
New cards

Heap

Dynamically allocated memory.

42
New cards

Stack

Temporary storage for function calls and local variables.

43
New cards

Activation record

Stack frame containing parameters, return address, locals.

44
New cards

Process Control Block (PCB)

OS data structure representing a process and stores all the info about the process.

45
New cards

What does the PCB process state hold

Current state of process.

46
New cards

What does the PCB program counter hold

Address of next instruction.

47
New cards

What do the PCB CPU registers hold

Saved register contents.

48
New cards

What does the PCB scheduling information hold

Priority and queue pointers.

49
New cards

What does the PCB memory-management information hold

Base/limit registers or page table info.

50
New cards

What does the PCB accounting information hold

CPU time used, job number.

51
New cards

What does the PCB I/O status information hold

Open files and allocated devices.

52
New cards

Context switch

Saving current process state and restoring another.

53
New cards

Context-switch time

Overhead time where no useful work is done.

54
New cards

Independent process

Does not share data with others.

55
New cards

Cooperating process

Can affect or be affected by other processes.

56
New cards

Interprocess communication (IPC)

Mechanism allowing processes to exchange data.

57
New cards

Shared memory

IPC model where processes share memory region.

58
New cards

Message passing

IPC model where processes exchange messages.

59
New cards

Producer-consumer problem

Classic example of synchronization using shared buffer.

60
New cards

Empty buffer condition

in == out.

61
New cards

Full buffer condition

(in + 1) % BUFFER_SIZE == out.

62
New cards

Pipe

Communication conduit between processes.

63
New cards

fork()

Creates new process copy of calling process.

64
New cards

fork() return values

0 in child, child PID in parent, -1 on failure.

65
New cards

open()

Opens file and returns file descriptor.

66
New cards

O_RDONLY

Open file for reading only.

67
New cards

O_WRONLY

Open file for writing only.

68
New cards

O_RDWR

Open file for both reading and writing.

69
New cards

O_CREAT

Create file if not exists.

70
New cards

O_TRUNC

Truncate file to length 0.

71
New cards

O_APPEND

Append writes to end of file.

72
New cards

read()

Reads bytes from file descriptor.

73
New cards

write()

Writes bytes to file descriptor.

74
New cards

close()

Closes file descriptor.

75
New cards

wait()

Parent waits for child process to finish.

76
New cards

Thread

Basic unit of CPU utilization consisting of thread ID, program counter, register set, and stack.

77
New cards

Multithreaded process

A process containing multiple threads sharing code, data, and resources.

78
New cards

Responsiveness benefit

Multithreading allows application to remain responsive while part is blocked.

79
New cards

Resource sharing benefit

Threads share memory and OS resources by default within same process.

80
New cards

Economy benefit

Thread creation and context switching are cheaper than processes.

81
New cards

Scalability benefit

Threads can run in parallel on multicore systems.

82
New cards

Multicore system

System with multiple cores appearing as separate CPUs.

83
New cards

Concurrency

System supports more than one task making progress.

84
New cards

Parallelism

System performs more than one task simultaneously.

85
New cards

Concurrency without parallelism

Possible on single-core systems via context switching.

86
New cards

Data parallelism

Distributing subsets of same data across cores performing identical operations.

87
New cards

Task parallelism

Distributing different tasks across cores.

88
New cards

Pthreads

POSIX thread standard defining API for thread creation and synchronization.

89
New cards

pthread_t

Data type for thread identifier.

90
New cards

pthread_create()

Creates new thread; takes pointer to thread ID, attributes, function pointer, and argument.

91
New cards

pthread_join()

Waits for specified thread to terminate.

92
New cards

pthread_self()

Returns ID of currently executing thread.

93
New cards

CPU scheduling

Process of selecting which ready process runs next.

94
New cards

Multiprogramming objective

Keep CPU busy at all times.

95
New cards

CPU–I/O burst cycle

Process alternates between CPU bursts and I/O bursts.

96
New cards

Ready queue

Queue of processes waiting for CPU.

97
New cards

Preemptive scheduling

OS may interrupt running process.

98
New cards

Nonpreemptive scheduling

Running process keeps CPU until it blocks or terminates.

99
New cards

What are the Scheduling criteria?

CPU utilization, throughput, turnaround time, waiting time, response time.

100
New cards

CPU utilization

Percentage of time CPU is busy.