Section 1

Preview this deck

What is multiprogramming?

Front

Star 0%
Star 0%
Star 0%
Star 0%
Star 0%

0.0

0 reviews

5
0
4
0
3
0
2
0
1
0

Active users

0

All-time users

0

Favorites

0

Last updated

6 years ago

Date created

Mar 1, 2020

Cards (46)

Section 1

(46 cards)

What is multiprogramming?

Front

It's needed for efficiency, organizes jobs so CPU always has one to execute

Back

Threads

Front

Separate, independent tasks within a job.

Back

Multithreading Models

Front

Many-to-One: many user threads to one kernel thread One-to-One: One user thread to one kernel thread Many-to-Many: many user level threads to be mapped to many kernel threads

Back

Schedulers

Front

Short-term scheduler selects which processes should be executed next and allocates the CPU Long-term scheduler selects which processes should be brought into the ready queue

Back

Multiple Queue with Dynamic Priority

Front

Priority of processes changes dynamically Slide 26 CH5

Back

What is a Kernel?

Front

Responsible for memory management, process and task management, and disk management.

Back

Remote Procedure Calls

Front

abstracts procedure calls between processes on networked systems

Back

UNIX

Front

System Programs, Kernel

Back

Layered Approach

Front

An operating system structure that can be broken into pieces that are smaller and more appropriate than those allowed by the original MS-DOS and UNIX systems.

Back

atomic operation

Front

An operation that is uninterruptible

Back

What are 4 components of a computer system

Front

Hardware, OS, Application Programs, Users

Back

Why is the design on an OS not solvable?

Front

Goals conflict Impossible to fulfill all requirements without sacrificing another goal

Back

Soft real-time systems vs. hard real-time systems

Front

Soft real-time systems: no guarantee as to when critical real-time process will be scheduled Hard real-time systems: task must be serviced by its deadlines

Back

Kernighan's Law

Front

"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it."

Back

context switch

Front

save the state of the old process and load the saved state for the new process

Back

Shortest-Job-First (SJF) Scheduling

Front

slide 16ish ch 5

Back

TSL

Front

Test and Set Lock

Back

Types of Parallelism

Front

Data Parallelism - Distributes subsets of the same data across multiple cores, same operation on each Task parallelism - distributing threads across cores, each thread performing unique operation

Back

Process vs. Program

Front

A process is active and a program is passive.

Back

Microkernel System Structure

Front

Moves as much from the kernel into user space

Back

I/O bound vs CPU bound

Front

I/O Bound Processes: Issue lots of I/O requests and little computation CPU Bound Processes: Use CPU frequently and I/O Infrequently

Back

Preemptive Scheduling

Front

A running process can be taken off the CPU for any (or no reason). Suspended by the scheduler

Back

what is emulation?

Front

used when source cpu type is different from the target

Back

processor affinity

Front

A standard in which a process that starts in a computer with more than one CPU is usually assigned to that CPU again the next time it runs.

Back

Process State

Front

(slide 9 ch3) New, running, waiting, ready, terminated

Back

Tasks of Process Management

Front

Create, load, execute, suspend, resume, and terminate processes Switch system among multiple processes in the main memory (process scheduling) Provide communication mechanisms between processes

Back

Preventing Race Conditions

Front

Slie 8 Ch 67P1

Back

Process Control Block (PCB)

Front

The data structure used by the operating system to manage information about a process Contains info about each process, sate, number, counter, registers, memory limits, list of open files

Back

Process Scheduler

Front

(slide 15 or 16 ch3)

Back

Gannt Chart

Front

sLIDE 20 CH5

Back

I/O Subsystem

Front

responsible for memory management of I/O including buffering, caching, spooling

Back

System Calls

Front

callback to the system using an API

Back

What is Timesharing?

Front

A logical extension in which the CPU switches jobs so frequently that users can interact with each job while it is running, creating interactive computing.

Back

Sockets

Front

an endpoint for communication

Back

What is an OS responsible for?

Front

Slide 24 or 25 Chap1

Back

What is a process?

Front

a program in execution, it is a unit of work within the system. multi-threaded processes have one program counter per thread

Back

FCFS Scheduling

Front

CPU is allocated to the process that requests it first

Back

What is an Operating System

Front

An operating system acts as an intermediary between the user of a computer and the computer hardware.

Back

Goals of Scheduler

Front

Fairness, CPU utilization, Response Time, Turanaround time, throughput

Back

Round Robin Scheduling

Front

Uses qauntums based on priority to ensure more pfairness

Back

Policy vs. Mechanism

Front

Policy - What will be done Mechanism - how to do it

Back

Types of a Process

Front

Either OS Process (e.g. System Call) or User Process Either I/O bound processes or CPU Bound Processes

Back

Thread Pools

Front

Create a number of threads in a pool where they await work.

Back

What happens when a process uses its quantum

Front

Ch5

Back

Monolithic OS

Front

a collection of functions which can call any other ones when needed includes system calls, system programs, enevery manager, device drivers, etc. (everything is included) Entire OS in main library Pro: High Performance, easy to implement Cons: Debug problems & Security

Back

Benefits of Threads

Front

responsiveness, resource sharing, economy, scalability

Back