Exam practice Flashcards

1
Q

User

A

People, machines or other PC’s

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

Kernel

A

Central component of the OS that handles fundamental hardware operations.

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

Operating System

A

Interface for the Kernel. Acts as an interface for the hardware. Bridge between HW and SW. Provides sets of services to system users. Controls executions of programs and resource manager for CPU, memory and I/O devices.

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

I/O device

A

any operation, program or device that transfers data to and from the computer.

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

User mode

A

User has restricted access to the hardware

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

Kernel mode

A

User has unrestricted access to the hardware

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

BootStrap loader

A

a small piece of code that initialize and loads the kernel on startup.

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

Program

A

a passive entity stored on disk as an executable file

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

Process

A

a program in execution loaded into memory, which progresses in a sequential manner. Multiple processes can exist for one program.

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

Process states

A

new, ready, running, waiting, terminated

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

Context switch

A

Switching from one process to another, saving the data of the old process with the intention to be restored later.

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

PCB

A

Process Control Block, contains all information associated with each process. Ex process state, memory management info.

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

Process scheduling

A

handles resources for processes to maximize and optimize CPU usage. Has short term (CPU scheduler) and long term schedulers(job schedulers) depending on the process.

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

PID

A

Used to identify processes. Useful when creating child processes and handling resources.

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

Process creation

A

child is created, then the program from parent is loaded in as a copy.

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

Process termination

A

child is terminated. Data of child is returned to parent via wait() and its resources deallocated by OS.

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

Zombie process

A

a child process whose parent has not signaled to parent that it is terminated. The process stays active but with no resource usage.

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

IPC

A

Interprocess communication via Direct communication(directly addressing its sender and receiver) or Indirect communication(addressing a port which processes use to read and write to)

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

Blocking

A

synchronous message sending. The sender process is blocked until the message has been received, and the receiver process is blocked until the message is available.

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

Non-blocking

A

the sender process is free to continue sending messages once a message is sent, and the receiver process can receive multiple messages, including NULL.

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

Pipes

A

an IPC system which allows senders and receivers to communicate via indirect communication.

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

CPU cycle

A

Start, Fetch new instruction, execute instruction, (1)HALT or (2) execute cycle fetch cycle

23
Q

Thread

A

a lightweight process which carries out instructions for a process.

24
Q

Multi-threading

A

Execution model allowing multiple threads to exist within one process. These threads share resources but are able to execute independently.

25
Q

Multi-threaded server architecture

A

(1) Client makes a request to server. (2) server creates thread to service client request. (3) server resumes listening for additional client responses

26
Q

Parallelism

A

allowing multiple threads to execute parallel. Two types of parallelism: Data parallelism (distributes subsets of the same data across multiple cores) and Task parallelism(distributes threads across cores, each thread performing unique operations)

27
Q

Concurrency

A

multiple threads are not executed parallel, but can be processed at the same time.

28
Q

Amdahl’s Law

A

Identifies performance gains from adding additional cores to an application. Speedup <= 1/(s + (1-s)/N) where s is the serial portion and N the amount of cores.

29
Q

Many-to-one multithreading model:

A

many user level threads mapped to a single kernel thread.

30
Q

One-to-one multi-threading model:

A

one user level thread mapped to a single kernel thread.

31
Q

Many-to-many multi-threading model

A

many user level threads mapped to multiple kernel threads.

32
Q

Preemptive

A

the CPU is allocated to a process for a limited time.

33
Q

Non-preemptive

A

the CPU is allocated to a process until the process is terminated.

34
Q

Turnaround

A

the time between the submission of a process until its termination.

35
Q

FIFO

A

a non-preemptive scheduling algorithm which prioritizes processes based on arrival time.

36
Q

SJF

A

a non-preemptive scheduling algorithm which prioritize process based on shortest burst time

37
Q

SRT

A

a preemptive scheduling algorithm which prioritizes processes based on shortest time remaining until termination.

38
Q

CPU core

A

logical execution unit of CPU. A CPU may have multiple cores.

39
Q

Gang scheduling

A

groups of threads are scheduled as a gang with the same quantum.

40
Q

Critical section

A

a segment of code which is shared between processes.

41
Q

Mutual Exclusion

A

one one process/thread is allowed to execute its critical section at a time.

42
Q

Progress

A

the critical section which is being accessed by a process has a set time to execute.

43
Q

Fairness

A

all processes accessing the resource does so sequentially with priority.

44
Q

Safety

A

No deadlock and critical section is protected.

45
Q

Hold & wait

A

Condition met when deadlock occurs. Processes holding onto a resource do not release upon request from other processes or time expired.

46
Q

Circular wait

A

Condition met when deadlock occurs. A chain of processes waiting for resources to be released.

47
Q

Peterson’s Algorithm

A

algorithm for mutual exclusion using shared memory for communication. 2 semaphores, one for turn and one for allowing thread to access CS once the other thread is done.

48
Q

Bounded product-consumer buffer

A

The producer of items must wait if the buffer is full. The consumer of items must wait if the buffer is empty. Solved with Peterson’s algorithm.

49
Q

Deadlock

A

a set of processes blocking each other so none of them can proceed. Requires (1) mutual exclusion, (2) hold & wait, (3)no preemption and (4) circular wait.

50
Q

Deadlock prevention

A

eliminate deadlock by removing 1 of the 4 requirements of deadlock.

51
Q

Eliminating circular wait

A

means imposing fairness.

52
Q

Eliminating non-preemption

A

means processes release held resources while requesting others.

53
Q

Eliminating hold & wait

A

means requesting processes get their resources at once

54
Q

Lamport’s algorithm

A

Use of tickets for reading and writing the critical section.