what is an operating system?
asymmetric clustering
not actively running something, but can pick up if something fails. Essentaily, one machine is on standby mode
hardware
provides basic computing resources (CPU, memory, I/O devices)
common functions of interrupts
- Interrupt transfers control to the interrupt service routine generally, through the interrupt vector, which contains the addresses of all the service routines - Interrupt architecture must save the address of the interrupted instruction - Incoming interrupts are disabled while another interrupt is being processed to prevent a lost interrupt
direct memory access structure
- Used for high-speed I/O devices able to transmit information at close to memory speeds - Device controller transfers blocks of data from buffer storage directly to main memory without CPU intervention - Only one interrupt is generated per block, rather than the one interrupt per byte
goals of an oeprating system
- execute user programs and make solving user problems easier - makes the computer convenient to use - use the computer hardware in an efficient manner
Each device controller: (2 things)
- is in charge of a particular device type - has a local buffer
what determins which type of interrupt has occurred?
- polling - vectored interrupt system
what does mode bit do?
- provides ability to distinguish when system is running user code or kernel code - some instructions designated as privileged, only executable in kernel mode - system call changes mode to kernel, return from call resets it to user
clustered systems detailed how it works
- usually sharing storage via a storage-area network (SAN) - provides a high-availability service which survives failures (asymmetric clustering and symmetric clustering) - some clusters are for high-performance computing (applications must be written to use parallelization)
After I/O starts, control returns to user program without waiting for I/O completion. Describe this process
- wait instruction idles the CPU until the next interrupt - wait loop (contention for memory access) - at most one I/O request is outstandnig at a time, there's no simultaneous I/O processing
virtualization has 2 components
CPU and memory
computer-system operation
one or more CPuss, device controllers connect through common bus providng access to shared memory. There's a concurrent execution of CPUs and devices competing for memory cycles
True or false: only one i/O can be outstanding at a time, even on a modern computer
FALSE
what is an operating system (OS)?
operating system: acts as an intermediary between the user of a computer and the computer hardware
high-availability service
LOOK UP DEF
high-performance computing (HPC)
LOOK UP DEF
job scheduling
LOOK UP DEF
polling
LOOK UP DEF
storage-area network (SAN)
LOOK UP DEF
vectored interrupt system
LOOK UP DEF (from slide 22)
clustered systems
Like multiprocessor systems, but multiple systems working together
KNOW DEFINITIONS FOR CONCURRENCY AND PARALLELISM FOR EXAM!!!
parallelization: happening at the same time concurrency: interleaving instructions, feels like more than 1 thing is happening at the same time but does NOT mean they're happening at the same time
users
people, machines, other computers, etc
is there a universally accepted definition of an operating system??
NO!!!
OS is a _____ ______
OS is a control program. The OS controls the execution of programs to prevent errors and improper use of the computer (such as divie by zero errors - the OS takes back control)
OS is a ______ _____ and what does that do?
OS is a resource allocator. This means it manages all resources and decides between conflicting requests for efficient and fair resource use. For example, network traffic
symmetric clustering
has multiple nodes running applications monitoring each other
response time
how long it takes to get back to the user (should be less than 1 second)
swapping
if processes don't fit in memory, swapping moves them in and out to run
sectors
individual short pieces that figures out where we are
True or false: only one I/O request can be outstanding in a program at a time
TRUE
concurrency
interleaving instructions, feels like more than 1 thing is happening at the same time but does NOT mean they're happening at the same time
Device controller informs CPU that it has finished its operation by causing an ____
interrupt
trap
interrupt caused by an error
an operating system is _____ ______
interrupt driven. operating systems are event driven and most of those events are interrupts
tracks
look up def
what 2 things both have cycles?
memory and CPU both have cycles
___ ____ is provided by hardware
mode bit
multiprogramming
multiple programs ready to run on CPU
multitasking/timesharing
a logical extension in which the CPu switches jobs so frequently that users can interact with each job while it is running. For example, it allows us to write a paper at the same time as you watch a cat video
what is a challenge of persistency?
a machine can crash at any time. So a file system shoudl be consistent no matter when a crash happens
trap
a software-generated interrupt caused either by an error or a user request (ex. divide by zero, system call like System.out.print causes a trap)
persistency
after a machine is rebooted, we shouldn't lose data. RAM is not persistent bc data in RAM goes away when the power goes off. persistent != consistent
dual-mode operation
allows OS to protect itself and other system components
virtual memory
allows execution of processes not completely in memory
basically, what is an OS?
an OS is a program with extra privileges
virtualization
an OS running on top of an OS running on top of an OS ... etc. Multiple programs can run at the same time on a machine, multiple users can log into the same machine, etc. gives you the illusion that it's ready to run
what is virtualization (more detailed?)
an illusion of control - it only havs control of the CPU and memory but those are actually shared by many programs
I/O devices and the CPU can execute ____
concurrently
device-status table
contains entry for each I/O device indicating its type, address, and state
interrupt vector
contains the addresses of all the service routines
operating system (component def)
controls and coordinates use of hardware among various applications and users
exception
creates a trap to the OS (like divide by 0)
essentially, the CPU is in charge of making sure ...
data goes where it needs to go. However, the CPU doesn't know where the data needs to go. The OS directs data to go where it needs to go
the CPU moves what to what?
data to/from main memory to/from local buffers
application programs
define the ways in which the system reosurces are used to solve the computing problems of the users (compilers, web browsers, video games, etc)
the ____ _____ determines the ...
disc controller, logical interaction between the device and the computer
process
each user has at least one program executing in memroy
multiprogramming is needed for ___
efficiency
secondary storage
extension of main memory that provides large nonvolatile storage capacity
bootstrap program
first program that runs on your computer, usually stored in ROM (read only memory). Loads the OS kernel and starts execution. The bootstrap program is loaded when you turn on the computer/restart it
parallelization
happneing at the same time, must have 2 cores
system call
requtes to the OS to allow user to wait for I/O completion
magnetic disks
rigid metal or glass platters covered with magnetic recording material
CPU scheduling
several jobs ready to run at the same time
the operating system preserves the state of the CPu by ...
storing registers and the program counter
kernel
stream of execution of the OS. It might not run at all times on the computer
main memory
the only large storage media that the CPU can access directly
disk surface is divided into?
tracks, which are subdivided into sectors
bus
transmits 1 thing at a time
4 computer system components and their order?
user -> application -> OS -> hardware
2 modes in dual mode:
user mode and kernel mode
START ON PAGE 33
yee