Introduction to OS Flashcards
- a program that acts as an intermediary between a user of a computer and the computer hardware
- controls and coordinates use of hardware among various applications and users.
- is a resource allocator and control program making efficient use of HW and managing executing of user programs.
operating system
- execute user programs and make solving user problems easier.
- make the computer system convenient to use.
- use the computer hardware in an efficient manner.
OG goals
(computer system structure)
- provides basic computing resources
- CPU, memory, I/O devices
hardware
(computer system structure)
- define the ways in which the system resource are used to solve the computing problems of the users.
- word processors, compilers, web browsers, database systems, video games
- all programs not associated with the operating system.
application programs
(computer system structure)
- people, machines, other computers.
- want convenience, ease of use and good performance.
users
-mainframe or minicoputer must keep all users happy.
shared computer
the one program running at all times on the computer-part of the operating system.
kernel
-ships with the operating system, but not part of the kernel
system program
- today’s OS for general purpose and mobile computing also includes this.
- a set of software frameworks that provide addition services to application developers such as databases, multimedia, graphics.
middleware
- one or more CPUs, device controllers connect through common bus providing access to shared memory.
- concurrent execution of CPUs and devices competing for memory cycles.
computer-system operation
- is in charge of a particular device type
- has a local buffer.
- each type has an operating system device driver to manage it.
- informs CPU that it has finished its operation by causing an interrupt.
device controller
each device controller type has an operating system this to manage it
device driver
(common functions of interrupts)
-control to the interrupt service routine.
interrupt transfers
(common functions of interrupts)
-contains the addresses of all the service routines.
interrupt vector
(common functions of interrupts)
-must save the address of the interrupted instruction
interrupt architecture
(common functions of interrupts)
-is a software-generated caused either by an error or a user request.
trap/exception
(common functions of interrupts)
-an operating system is.
interrupt driven
- the operating system preserves that state of the CPU by storing the registers and the program counter.
- determienes which type of interrupt has occurred.
interrupt handling
types of interrupt
polling/vectored interrupt system
-determine what action should be taken for each type of interrupt.
separate segments of code
- after I/O starts, control returns to user program only upon I/O completion
- after I/O starts, control returns to user program without waiting for I.O completion.
two methods (for handling I/O)
-request the OS to allow user to wait for I/O completion
system call
- contains entry for each device I/O device indicating its type, address, and state
- OS indexes into I.O device table to determine device status and to modify table entry to include interrupt.
device-status update
- the computer cannot handle too many processes occurring simultaneously.
- all memory is being used up.
- too many threads.
hanging computer
- if the process is waiting for too long
- once the process has acquired the resources, it will not release it unless it is done with the execution.
starvation
-you are requesting for process that are waiting for you
>deadlock
>no release of resource and no acquiring of resource
>hanging
cyclical waiting
- copying information into faster storage system; main memory can be viewed as a cache for secondary storage
- important principle, performed at many levels in a computer (in hardware, operating system, software).
- information is use copied from slower to faster storage temporarily.
- faster storage (cache) checked first to determine if information is there.
- -its is, information used directly from the cache (fast).
- -if not, data copied to cache and used there.
caching
(I/O Structure)
-it will not proceed with the execution of the remaining code for the user programs without compleing the interrupt.
synchronous
- (I/O Structure)
- it will resume the operating of the CPU for the execution of user program without for I/O completion.
asynchronous
- CPU is running the user program and it processes I/O interrupts.
- If the I/O device is idle, the CPU is kept busy on the user program execution.
- every device in a computer system has an interrupt address or interrupt request.
interrupt timeline
(storage structure)
- only large storage media that the CPU can access directly.
- random access
- typically volatile-temporary storage, it requires power.
- typically random-access memory in the form of Dynamic Random-access memory (DRAM)
main memory
(storage structure)
-extension of main memory that provides large nonvolatile storage capacity.
secondary storage
(storage structure|secondary storage)
-rigid metal or glass platters overed with magnetic recording material
hard disk drives (HDD)
(storage structure|secondary storage|HDD)
-is logically divided into tracks, which are subdivided into sectors.
disk surface
(storage structure|secondary storage|HDD)
-determines the logical interaction between the device and the computer.
disk controller
(storage structure)
- faster than hard disks, nonvolatile
- various technologies
- becoming more popular as capacity and performace increases, price drops.
non-volatile memory (NVM)
(operating-system operations)
-simple code to initialize system, load the kernel
boostrap program