After studying this chapter, you should be able to: Describe the basic elements of a computer system and their interrelationship, eplain the steps taken by a processor to execute an instruction, discuss the evolution of operating systems for early simple batch systems to modern complex systems. | Chapter 1 and 2 Computer System and Operating System Overview The Evolution of Operating Systems OS Objectives and Functions Instruction Execution Interrupts The Memory Hierarchy Cache Memory I/O Communication Techniques Evolution of Operating Systems It may be easier to understand the key requirements of an OS by considering the evolution of Operating Systems Stages include Serial Processing Simple Batch Systems Multiprogrammed Batch Systems Time Sharing Systems Serial Processing (late 1940s to mid-1950s) No operating system Machines run from a console with display lights, toggle switches, input device, and printer Problems include: Scheduling using a hardcopy sign-up sheet Setup time loading complier and source program into memory saving the object program loading and linking object program and common functions Simple Batch System (mid-1950s) Early computers were extremely expensive Important to maximize processor utilization Monitor Software that controls the sequence | Chapter 1 and 2 Computer System and Operating System Overview The Evolution of Operating Systems OS Objectives and Functions Instruction Execution Interrupts The Memory Hierarchy Cache Memory I/O Communication Techniques Evolution of Operating Systems It may be easier to understand the key requirements of an OS by considering the evolution of Operating Systems Stages include Serial Processing Simple Batch Systems Multiprogrammed Batch Systems Time Sharing Systems Serial Processing (late 1940s to mid-1950s) No operating system Machines run from a console with display lights, toggle switches, input device, and printer Problems include: Scheduling using a hardcopy sign-up sheet Setup time loading complier and source program into memory saving the object program loading and linking object program and common functions Simple Batch System (mid-1950s) Early computers were extremely expensive Important to maximize processor utilization Monitor Software that controls the sequence of events Batch jobs together Program returns control to monitor when finished Monitor’s perspective Monitor controls the sequence of events Resident Monitor is software always in memory Monitor reads in job and gives control Job returns control to monitor Multiprogrammed Batch Systems CPU is often idle Even with automatic job sequencing. I/O devices are slow compared to processor Uniprogramming Processor must wait for I/O instruction to complete before preceding Multiprogramming When one job needs to wait for I/O, the processor can switch to the other job Multiprogramming Time Sharing Systems (early 1960s) Using multiprogramming to handle multiple interactive jobs Processor’s time is shared among multiple users Multiple users simultaneously access the system through terminals Batch Multiprogramming vs. Time Sharing Early Example: CTSS Compatible Time-Sharing System (CTSS) Developed at MIT as project MAC Time Slicing: When control was passed to a user