1Copyright ©: Nahrstedt, Angrave, Abdelzaher 1Operating System OverviewTarek AbdelzaherLawrence AngraveCopyright ©: Nahrstedt, Angrave, Abdelzaher2Today’s Objectives By the end of the hour you should be able to: Explain the main purpose of operating systems and describe milestones of OS evolution Explain fundamental machine concepts such as: Instruction processing, Memory hierarchy, Interrupts, and I/O Explain fundamental OS concepts such as: System calls, processes, synchronization, Files Explain the POSIX standard (UNIX specification)2Copyright ©: Nahrstedt, Angrave, Abdelzaher3Today’s ApplicationsBrowser Second LifeYahooChat ClientPop MailApplication SoftwareHardware NetworkCopyright ©: Nahrstedt, Angrave, Abdelzaher4Application RequirementsBrowser Second LifeYahooChat ClientPop MailApplication SoftwareHardware NetworkRead/writeDisplayPrintStoreSend/receive3Copyright ©: Nahrstedt, Angrave, Abdelzaher5Browser Second LifeYahooChat ClientPop MailApplication SoftwareHardware NetworkRead/writeDisplayPrintStoreRead/writeDisplayPrintStoreSend/receiveSend/receiveApplication RequirementsCopyright ©: Nahrstedt, Angrave, Abdelzaher6Browser Second LifeYahooChat ClientPop MailApplication SoftwareHardware NetworkRead/writeDisplayPrintStoreRead/writeDisplayPrintStoreSend/receiveSend/receiveRead/writeDisplayPrintStoreSend/receiveApplication Requirements4Copyright ©: Nahrstedt, Angrave, Abdelzaher7Browser Second LifeYahooChat ClientPop MailApplication SoftwareHardware NetworkRead/writeDisplayPrintStoreRead/writeDisplayPrintStoreSend/receiveSend/receiveRead/writeDisplayPrintStoreSend/receiveSend/receiveDisplayStorePrintRead/writeApplication RequirementsCopyright ©: Nahrstedt, Angrave, Abdelzaher8Delegate Common Functions?Browser Second LifeYahooChat ClientPop MailApplication SoftwareHardware NetworkRead/writeDisplayPrintStoreRead/writeDisplayPrintStoreSend/receiveSend/receiveRead/writeDisplayPrintStoreSend/receiveSend/receiveDisplayStorePrintRead/write5Copyright ©: Nahrstedt, Angrave, Abdelzaher9Delegate Common Functions to an Operating SystemWeb Server Second LifeYahooChatPop MailApplication SoftwareOperating SystemNetworkHardwareRead/WriteStandardOutputDeviceControlFileSystemCommunicationCopyright ©: Nahrstedt, Angrave, Abdelzaher10OS Exports a Virtual Machine InterfaceWeb Server Second LifeYahooChatPop MailApplication SoftwareOperating SystemNetworkHardwareRead/WriteStandardOutputDeviceControlFileSystemCommunicationStandard Operating System Interface (Virtual Machine)6Copyright ©: Nahrstedt, Angrave, Abdelzaher11Increase Portability = Minimize Machine-Specific CodeWeb Server Second LifeYahooChatPop MailApplication SoftwareNetworkHardwareMachine specific partRead/WriteStandardOutputDeviceControlFileSystemCommunicationOperating System (machine independent part)Standard Operating System Interface (Virtual Machine)Copyright ©: Nahrstedt, Angrave, Abdelzaher12Web Server Second LifeYahooChatPop MailApplication SoftwareNetworkHardwareMachine specific partRead/WriteStandardOutputDeviceControlFileSystemCommunicationOperating System (machine independent part)Standard Operating System Interface (Virtual Machine)PortableIncrease Portability = Minimize Machine-Specific Code7Copyright ©: Nahrstedt, Angrave, Abdelzaher13Web Server Second LifeYahooChatPop MailApplication SoftwareRead/WriteStandardOutputDeviceControlFileSystemCommunicationOperating System (machine independent part)Standard Operating System Interface (Virtual Machine)PortableOS Runs on Multiple Platforms while Presenting same InterfaceCopyright ©: Nahrstedt, Angrave, Abdelzaher14Web Server Second LifeYahooChatPop MailApplication SoftwareNetworkHardwareMachine specific partRead/WriteStandardOutputDeviceControlFileSystemCommunicationOperating System (machine independent part)Standard Operating System Interface (Virtual Machine)PortableOS Runs on Multiple Platforms while Presenting same Interface8Copyright ©: Nahrstedt, Angrave, Abdelzaher15POSIX – The UNIX Interface StandardWeb Server Second LifeYahooChatPop MailApplication SoftwareNetworkHardwareMachine specific partRead/WriteStandardOutputDeviceControlFileSystemCommunicationOperating System (machine independent part)The POSIX Standard Specifies UNIX InterfaceThe POSIX Standard Specifies UNIX InterfaceThe POSIX Standard Specifies UNIX InterfaceThe POSIX Standard Specifies UNIX InterfacePortableCopyright ©: Nahrstedt, Angrave, Abdelzaher16A peek into UnixApplicationPortable OS LayerLibrariesMachine-dependent layerUser space/levelKernel space/level• User/kernel modes are supported by hardware •Some systems do not have clear user-kernel boundary9Copyright ©: Nahrstedt, Angrave, Abdelzaher17Unix: ApplicationApplication (E.g., emacs)Portable OS LayerLibrariesMachine-dependent layerWritten by programmerCompiled by programmerUses function callsCopyright ©: Nahrstedt, Angrave, Abdelzaher18Unix: LibrariesApplicationPortable OS LayerLibraries (e.g., stdio.h)Machine-dependent layerProvided pre-compiledDefined in headersInput to linker (compiler)Invoked like functionsMay be “resolved” when program is loaded10Copyright ©: Nahrstedt, Angrave, Abdelzaher19Typical Unix OS StructureApplicationPortable OS LayerLibrariesMachine-dependent layersystem calls (read, open..)All “high-level” codeCopyright ©: Nahrstedt, Angrave, Abdelzaher20Typical Unix OS StructureApplicationPortable OS LayerLibrariesMachine-dependent layerBootstrapSystem initializationInterrupt and exception I/O device driverMemory managementKernel/user mode switchingProcessor management11Copyright ©: Nahrstedt, Angrave, Abdelzaher21Summary:What is an Operating System? It is an extended machine Hides the messy details which must be performed Presents user with a virtual machine, easier to use It is a resource manager Each program gets time with the resource Each program gets space on the resource Copyright ©: Nahrstedt, Angrave, Abdelzaher22History of Operating Systems Early systems bring cards to 1401 read cards to tape put tape on 7094 which does computing put tape on 1401 which prints outputBatch Multiprogramming Time sharing Personal12Copyright ©: Nahrstedt, Angrave, Abdelzaher23History of Operating Systems Structure of a typical job – 2ndgenerationCopyright ©: Nahrstedt, Angrave, Abdelzaher24History of Operating Systems Multiprogramming/timesharing system– three jobs in memory – 3rdgeneration13Copyright ©:
View Full Document