Operating Systems Exam 1

0.0(0)
studied byStudied by 1 person
full-widthCall with Kai
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/39

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

40 Terms

1
New cards

Operating system

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

2
New cards

Roles of the operating system

  • Resource allocator

  • Control program: controls executions of programs to prevent errors and improper use

  • Protection and security

3
New cards

Non-virtual machine vs. virtual machine

  • In a non-virtual machine, the operating system communicates normally between the hardware and the processes

  • In a virtual machine, the operating system communicates with the hardware through a virtual machine manager

4
New cards

Process

A program in execution

5
New cards

Address space

Contains all of the memory state of the running program

6
New cards

Text section

Program code, located at the bottom of the stack (address space)

7
New cards

Data section

Contains all the global variables, located at the second to last block of the stack

8
New cards

Heap

Contains memory dynamically allocated during runtime, located above the data in the address space

9
New cards

Stack

Contains temporary data, such as function parameters, return addresses, and local variables

10
New cards

New state

The process is being created

11
New cards

Running state

Instructions are being executed

12
New cards

Waiting state

The process is waiting for some event to occur, such as input/output

13
New cards

Ready state

The process is waiting to be assigned to a processor

14
New cards

Terminated state

The process has finished execution

15
New cards

Process control block

Information associated with each process:

  • Process state

  • Process number

  • Program counter

  • Registers

  • Memory limits

  • List of open files

16
New cards

Context switch

When a process switches to another process on the CPU mid-execution. The CPU will attempt to save as much data from the process as possible before ending one process and load the data of the next one about to start

17
New cards

Thread

Short for thread of control/execution

18
New cards

Data parallelism

Distributes subsets of the same data across multiple cores, same operation on each

19
New cards

Task parallelism

Distributing threads across cores, each performing a unique operation

20
New cards

User threads

Management done by user-level threads, created by the user

21
New cards

Kernel threads

Threads supported/created by the kernel

22
New cards

Thread control block

A data structure in an operating system kernel that contains thread-specific information needed to manage the thread

23
New cards

Semaphore

An integer value that represents the number of resources available

24
New cards

Semaphore with Queue

When a semaphore has a queue, process waiting to acquire the resource but cannot because it is in use by another process will enter the semaphore queue. When the thread obtains the resource, it enters the ready queue after waking up.

25
New cards

Atomic operation

An operation that can only occur completely from start to finish. If the process cannot be completed fully, it will not be ran at all

26
New cards

wait / P()

Used to obtain a semaphore resource

27
New cards

Signal / V()

Releases a semaphore after use

28
New cards

Deadlock

A situation where no further process can occur. Happens when all 4 of its conditions are true.

29
New cards

Mutual exclusion

Only one process at a time can use a resource

30
New cards

Hold and wait

A process holding at least one resource is waiting to acquire an additional resource held by other processes

31
New cards

No preemption

A resource can be released only voluntarily by the process holding it, after that process has completed its task

32
New cards

Circular wait

A process is waiting for a resource that is being used by the process in front of it and so on

33
New cards
34
New cards

Domain

Set of access rights

35
New cards

Access rights

A subset of all valid operations that can be performed on the object, such as read, write, and execute

36
New cards

Domain switching

Can be performed by changing file system, using passwords, or through commands

37
New cards

Global table

Used to store ordered triples that contain permissions in a table, but could be too large to fit into main memory

38
New cards

Access control lists

Each column is implemented as an access list for one object

39
New cards

Capability list

Each row of the table can be kept as a list of the capabilities of that domain

40
New cards

Lock key

  • Each object has a list of unique bit patterns, called locks

  • Each domain has a list of unique bit patterns, called keys

  • Process in a domain can only access object if domain has key that matches one of the locks