Presentation is loading. Please wait.

Presentation is loading. Please wait.

What is an Operating System? A historical Perspective

Similar presentations


Presentation on theme: "What is an Operating System? A historical Perspective"— Presentation transcript:

1 What is an Operating System? A historical Perspective
CSCE 410/611 Operating Systems What is an Operating System? Utilities? APIs? Services? Brief historical journey Operational definition Historic Perspective

2 First-Generation Computers (1949-1956)
CSCE 410/611 Operating Systems First-Generation Computers ( ) Re-Wiring the ENIAC with a new program (U.S. Army) Historic Perspective

3 First-Generation Computers (1949-1956)
CSCE 410/611 Operating Systems First-Generation Computers ( ) EDVAC (Ballistic Research Laboratory) Historic Perspective

4 First-Generation Computers (1949-1956)
CSCE 410/611 Operating Systems First-Generation Computers ( ) “The IBM-701 meets a future President” (IBM) Historic Perspective

5 First-Generation Computers (1949-1956)
CSCE 410/611 Operating Systems First-Generation Computers ( ) Single user writes program, operates computer through console. Absolute machine language. I/O devices Development of libraries; device drivers Relocatable code memory space user program area libraries & dev.drivers rest of user program area Historic Perspective

6 Second-Generation Computers (1956-1963)
CSCE 410/611 Operating Systems Second-Generation Computers ( ) UNIVAC at the Census Bureau Historic Perspective

7 Second-Generation Computers (1956-1963)
CSCE 410/611 Operating Systems Second-Generation Computers ( ) Observation: Efficient operation of computing infrastructure is critical! Need to reduce setup time! Solution: Separate programming from operation Move programming off-line Automate Load/Translate/Load/Execute process Computer Operator Batch Operation Monitor Programs Historic Perspective

8 Second-Generation Computers (1956-1963)
CSCE 410/611 Operating Systems Second-Generation Computers ( ) Separate programming from operation: Automation: “Job Entry Control” $$ JOB JNM=JOB1,DISP=K,CLASS=2 $ FTN <Program> $ LOAD $ RUN $ DATA <Data> $$ EOJ $$ JOB JNM=JOB2,DISP=K,CLASS=2 <Next job> <...> Punch card (public domain) IBM 705 at Texas A&M University (Cushing Memorial Library and Archives) job sequencer and loader memory space control card interpreter libraries & dev.drivers Monitor user program area user program area rest of user program area device drivers Historic Perspective

9 Second-Generation Computers (1956-1963)
CSCE 410/611 Operating Systems Second-Generation Computers ( ) Separate programming from operation: Observations: Monitor loads and executes user programs. Monitor stays resident in memory. Misbehaving user program can affect execution of subsequent user programs. Punch card (public domain) Need to protect Monitor memory from user program! IBM 705 at Texas A&M University (Cushing Memorial Library and Archives) job sequencer and loader memory space control card interpreter Monitor libraries & dev.drivers user program area user program area rest of user program area device drivers Historic Perspective

10 Third-Generation Computers (1964-1973)
CSCE 410/611 Operating Systems Third-Generation Computers ( ) Ken Thompson (sitting) and Dennis Ritchie at the PDP-11 (Peter Hamer) Historic Perspective

11 Third-Generation Computers (1964-1973)
CSCE 410/611 Operating Systems Third-Generation Computers ( ) Observations: I/O devices are very slow. I/O operations are very expensive. Chronology of an I/O operation: Zzz.. CPU J2 J4 J3 J5 I/O I/O operation Multiprogramming: Use idle time created by self-suspension to execute other workloads. Historic Perspective

12 Third-Generation Computers (1964-1973)
CSCE 410/611 Operating Systems Third-Generation Computers ( ) Multiprogramming: CPU I/O I/O operation J2 J3 J4 J5 We need to ... ... have several programs ready to execute. ... keep several programs in memory. memory space Monitor user program area libraries & dev.drivers user program area Job1 rest of user program area Job2 Job3 Job4 Historic Perspective

13 Third-Generation Computers (1964-1973)
CSCE 410/611 Operating Systems Third-Generation Computers ( ) New issues with Multiprogramming: How to schedule the jobs? How to allocate memory to the jobs? How to protect jobs from each other? memory space Monitor user program area libraries & dev.drivers Job1 user program area rest of user program area Job2 Job3 Job4 Historic Perspective

14 CSCE 410/611 Operating Systems
Time Sharing (mid 1960s on) Fernando Corbato with MIT’s CTSS IBM (MIT Museum) CTSS = Compatible Time Sharing System Historic Perspective

15 CSCE 410/611 Operating Systems
Time Sharing (mid 1960s on) Remote interactive access to computer: “Computing as Utility” How? OS interleaves execution of multiple user programs with time quantum CTSS (1961): time quantum 0.2 sec New aspects and issues: User “owns” machine: we need a persistent storage service (file systems) Multiple users access machine: we need to protect resources (e.g., passwords!) More programs than memory can handle: virtual memory Users are impatient: we need sophisticated process scheduling Advent of systematic techniques for designing and analyzing OSs. Historic Perspective

16 CSCE 410/611 Operating Systems
Time Sharing (mid 1960s on) Computing as Utility: “If computers of the kind I have advocated become the computers of the future, then computing may someday be organized as a public utility just as the telephone system is a public utility... The computer utility could become the basis of a new and important industry.” — John McCarthy, speaking at the MIT Centennial in 1961 Historic Perspective

17 CSCE 410/611 Operating Systems
More recently... PCs, Pi, Arduino History repeats itself Parallel systems Resource management Fault tolerance Real-Time Systems Computing on a deadline Secure Systems Distributed Systems Communication Resource sharing Coherency Privacy? Virtualization an old idea Cloud computing Data Centers Historic Perspective

18 What is, then, an Operating System?
CSCE 410/611 Operating Systems What is, then, an Operating System? The OS controls and coordinates the use of system resources. Resource control and coordination has two goals: Primary goal: Provide a convenient environment for a user to access the available resources (CPU, memory, I/O) Provide appropriate abstractions (files, processes, ...) Secondary goal: Ensure efficient operation of the computer system. Historic Perspective

19 What is, then, an Operating System?
CSCE 410/611 Operating Systems What is, then, an Operating System? A convenient environment for a user to access ... Ensure efficient operation of ... Resource Management approaches Transforming: Create virtual substitutes that are easier to use. Multiplexing: Create the illusion of multiple resources from a single resource. Scheduling: “Who gets the resource when?” Historic Perspective

20 Summary: What is an Operating System?
CSCE 410/611 Operating Systems What is an Operating System? Brief historical journey The OS controls and coordinates system resources. Historic Perspective


Download ppt "What is an Operating System? A historical Perspective"

Similar presentations


Ads by Google