Unformatted text preview:

Lecture 1OutlineIntroductionWhat is an OS? 1What is an OS? 2What is an OS? 3History of OS's - 1940's 1History of OS's - 1940's 2History of OS's - 1940's 3History of OS's - 1950'sHistory of OS's - 1960's 1History of OS's - 1960's 2History of OS's - 1970's, 1980'sHistory of OS's - 1980'sHistory of OS's - 1990'sHistory of OS's - 2000'sOS Services 1OS Services 2System StartupOS Interface 1OS Interface 2OS Design 1OS Design 2OS Design - Layered ApproachOS Design - MicrokernelsOS Design - ModulesVirtual Machines 1Virtual Machines 2Virtual Machines 3Monday, January 9 CS 470 Operating Systems - Lecture 1 1Lecture 1Course webpagehttp://csserver.evansville.edu/~hwang/s12-courses/cs470.htmlHandouts, assignmentsSyllabus and schedule, textbookMonday, January 9 CS 470 Operating Systems - Lecture 1 2OutlineWhat is an Operating System?History of OS'sOS servicesSystem startupOS interfaceOS designVirtual machinesMonday, January 9 CS 470 Operating Systems - Lecture 1 3IntroductionThree main areas drive research in computer improvements:ArchitectureOperating systemsProgramming languagesInnovations in each area drive the othersMonday, January 9 CS 470 Operating Systems - Lecture 1 4What is an OS?An operating system is the intermediary between hardware and user software that makes a computer usable. It is implemented in firmware and/or software.UserApplicationsOSHardwareMonday, January 9 CS 470 Operating Systems - Lecture 1 5What is an OS?Resource managers - goal of efficient use of hardwareprocesses - execution, synchronization, communicationmemory - caching, swappingstorage - file systems, disksI/O - buffering, driversProtection & securityMonday, January 9 CS 470 Operating Systems - Lecture 1 6What is an OS?User interface - goal of usability for usersWindows/(pre-OS X) Mac GUIs - Windows grew to include the web browser until lawsuit, smartphone OS's headed that way again.Unix/Mac OS X shells - actually a user-level program, but must have oneOther areas have been includedMonday, January 9 CS 470 Operating Systems - Lecture 1 7History of OS's - 1940'sHardware and OS development are linked closely starting in the 1940's.First computers had no OS and were very hard to program. Manually/mechanically load all instructions (e.g., using toggle switches) of an application.Soon came the resident loader (a simple OS loaded once and always in the machine until next reboot), paper tape/cards, assembly language.Monday, January 9 CS 470 Operating Systems - Lecture 1 8History of OS's - 1940'sThe loader simply loaded the instructions from a program and started it. Only one process running on the entire machine with access to everything, including the parts with the resident loader.Enter dual mode operationUser mode for user processesKernel mode for the OS. Also called supervisor, system, privileged, or monitor mode.Monday, January 9 CS 470 Operating Systems - Lecture 1 9History of OS's - 1940'sIn dual mode, instructions are divided into ordinary and privileged. Allow only the OS to execute privileged instructions.When user processes attempt to execute a privileged instruction (called a system call), it is trapped by the OS, checked for validity, then executed on behalf of the user process. Examples: I/O requests, timer requests, etc.Dual mode generally is supported in hardware with an instruction mode bit.Monday, January 9 CS 470 Operating Systems - Lecture 1 10History of OS's - 1950'sDuring the 1950's, computing was single stream, batch processing. One job (process) is executed at a time in the order received.Read tape/cardsExecute programPrint results on tape/cards/printerNo user interaction; output in minutes, hours, or days. CPU waited for I/O, so added a disk to spool jobs. Still used for printers.Monday, January 9 CS 470 Operating Systems - Lecture 1 11History of OS's - 1960'sDuring the 1960's, realize that the CPU could be executing another program when waiting for I/O.Batch multiprogramming combined several jobs together to be loaded and then run. Still no user interaction, but the OS scheduled CPU among the jobs in the batch for better utilization.Monday, January 9 CS 470 Operating Systems - Lecture 1 12History of OS's - 1960'sThe late 1960's brought time-sharing systems. These systems are multi-tasking, multi-user, and support interactive users that wait for "immediate" system response. Key systems included: CTSS, Multics, TSS, CP/CMS → VMOS switches rapidly between jobs and users giving each the appearance of being a single process/user. This is supported in hardware by a timer interrupt.Virtual memory and file systems also developedMonday, January 9 CS 470 Operating Systems - Lecture 1 13History of OS's - 1970's, 1980's1970's combined batch and time-sharing systems into multimode systems. E.g. Unix.Also the development of networking: Ethernet and LANs, ARPANET → Internet; remote computing1980's emphasized user convenience and responsiveness. Workstations and PCs - going back to single computer dedicated to a single user.Monday, January 9 CS 470 Operating Systems - Lecture 1 14History of OS's - 1980'sThe late 1980's brought two similar, but different innovations.Distributed systems - loosely-coupled, independent computers that co-operate. Client-server or peer-to-peer models.Parallel systems - tightly-coupled, single-controller systems executing symmetrically or asymmetrically.Increased throughput, economy of scale, increased reliability, graceful degradation.Monday, January 9 CS 470 Operating Systems - Lecture 1 15History of OS's - 1990'sThe 1990's combined distributed and parallel systems into clustered systems. Each machine is independent, but highly-connected (usually with a dedicated LAN) often with a single controller. E.g., Beowulf cluster.Led to blade servers (multiple motherboards in a single chassis) and now many core machines like the UE "supercomputer".Monday, January 9 CS 470 Operating Systems - Lecture 1 16History of OS's - 2000'sCurrent development is at two ends of the spectrum.Embedded smartphone OS's - single user, limited in resources, a lot like the first OS's!Grid/cloud computingParadigms for organizing distributed computingGoal is to make systems easier to use, OS support for abstracting away the infrastructureMonday, January 9 CS 470 Operating Systems - Lecture 1 17OS


View Full Document
Download Lecture 1
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture 1 and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture 1 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?