Ch 2 Flashcards
types of user interfaces
Command line interface - or command interpreter (a shell) Batch - commands are entered into files and those files are executed Grafical (GUI) -
system calls
interface to services generally write in C, C++, or assembly (a system of tasks)
API
the “menu” in the restaurant analogy Specifies a set of functions that are available to programers. An API invokes a System Call i.e. read(), fork(), open(), etc.
System Call Interface
link between System Calls and API (a set of functions built into libraries included with a compiler)
System Program or Program Utility pg 77
provides a convenient environment for program development and execution i.e. background services, language support, file modification
Operating-System Structure
Simple - written to provide the most functionality in the least space. Vulnerable to errant users. Layered - easy to debug. Not efficient, bottom layer only accessed by top. Microkernel - Unessential task taken away from kernel. optimizes comm. b/w client and services (message passing) . Mods are easy. Not efficient; system func overhead Module (best) - loadable kernel
policy vs mechanism
policies - what to do mechanisms - how to do it
important for flxibility, in best case scenario, when mechanisims are incensitive to policies, a change in policy only requires the redefinitont of a few parmeters.
monolithic kernel
when the entire OS is working in kernel space
crash (“blue screen,” not application crash)
failure in kernel
Typical microkernel architecture
![](https://s3.amazonaws.com/brainscape-prod/system/cm/208/801/861/a_image_thumb.png?1488990105)
Typical layered operating system
![](https://s3.amazonaws.com/brainscape-prod/system/cm/208/801/882/a_image_thumb.png?1488990133)
typical module os
![](https://s3.amazonaws.com/brainscape-prod/system/cm/208/801/916/a_image_thumb.png?1488990153)
Typical simple OS
![](https://s3.amazonaws.com/brainscape-prod/system/cm/208/801/919/a_image_thumb.png?1488990187)
Passing parameters to OS
may be done by passing in registers, address of parameter stored in a block, pushed into a stack and popped of by the OS
process control (system call examples)
end, abort, load, execute, create/terminate process, wait, allocate/free memory