CS270Systems SoftwareDr. Axel KringsJEB 320208 [email protected]://www.cs.uidaho.edu/~krings1Typical Computer SystemHardware:CPUBusRAM/ROMDisk(s)CD-ROM, DVDMonitorGraphics Card(s)KeyboardMousePrinterTapeModemNetwork int. NIC23456Operating System•Exploits the hardware resources of one or more processors•Provides a set of services to system users•Manages secondary memory and I/O devices7Operating System•Many different OSs-UNIX, Linux, OpenVMS, MacOS, Windows, DOS, ...•Different OS environments, e.g.-general purpose-real time-distributed8Operating System•Linux kernel-part of the OS that is running-provided core capabilities and interfaces•Running separately from kernel code-commands, editors programs, windowing system, etc.910Software•Hardware provides framework for executing programs and storing files-files, directories-program-start a program -- process -owner of file and process-protection against unauthorized access-attributes11Directory Hierarchy1213UNIX i-node14Resource Sharing•CPU-time-slicing•Memory-paging•Secondary Memory (disk)-blocks of equal size15Communication•Not practical to work in isolation: communicate!-displaying: process to graphics card-input: keyboard or mouse-network: email, ftp-interprocess communication-...16Communication•Different mechanisms, e.g.,-pipe: from one process to another-socket: two-way high-speed data channel17X-server and X-clients18Standards•Why do we need standards?-portability, portability & portability-POSIX 1003.1 is Unix and Unix-like OSs, maintained by IEEE and The Open Group-Linux implements POSIX
View Full Document