1 / 30

Operating System History --- and maybe some future ?

Explore the journey of operating systems from vacuum tubes to modern times, highlighting key developments and future trends in technology. Learn about batch processing, multiprogramming, mainframe computing, and parallel systems. Delve into terms, concepts, and the potential of operating systems in the future.

johnsonb
Download Presentation

Operating System History --- and maybe some future ?

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Operating System History ---and maybe some future ?

  2. In the beginning there were vacuum tubes …

  3. Early Processors ~ 1950 • Three types of command • Arithmetic (add, subtract, and, or) • Load/store • Transfer of control • “Your” machine • No protection • You are operating system • Memory faster the CPU

  4. Bare Iron Era – early 1950s • Software • One program – one machine • Billing by hours of computer use • Innovations • Bigger, faster memory – 8k words • “Fast” input devices – paper tape, punch cards

  5. Simple Batch – late 50s … • Memory now slower than CPU • Sequence program (jobs) – save overhead • Monitor processing to bill by program • Device drivers to off-load I/O • Interrupts

  6. Memory Layout for a Simple Batch

  7. Efficiency of Early Batch • Read record from file (.0015 seconds) • Execute 100 instructions (.0001 seconds) • Write record to file (.0015 seconds) • Total (.0031 seconds)  3.2 %

  8. Batch Multiprogramming --- early 60s • Several jobs in memory at once • One job at a time “using” CPU • One program executes – others wait • Hardware includes supervisor mode • “Hybrid” OS (software and human) provides • Protection • Scheduling • Accounting • Resource allocation (files, software, … )

  9. Multiprogrammed Batch Several jobs are kept in main memory at the same time, and the CPU switched among them based on ?

  10. “Mainframe” Computing -- 1970s • Bigger (64k ??), faster memory • Much faster CPU • Memory hierarchies • Time sharing • All software OS provides • Interactive environment • File systems • Illusion of single-user machine

  11. Virtual Memory --- early to mid 1970s • Added during “mainframe era” • Subset of program in main memory during execution • OS (with hardware support) maintains “necessary” part of program in memory during execution

  12. Trends – Each Generation: • Reduces cost by 10x or more • Improves performance by 10x or more • Improves capacity by 10x or more • Improves “ease of computing” • Increase customer base by 100x or more • Increase “sharing” --- need for resource management and protection

  13. Operating System Terms • Resource allocator – manages and allocates resources. • Control program – controls the execution of user programs and operations of I/O devices . • Kernel – the one program running at all times (all else being application programs).

  14. Parallel Systems • Multiprocessor systems with parallel CPUs in “close” communication. • Advantages of parallel system: • Increased throughput • Economical • Increased reliability • graceful degradation • fail-soft systems

  15. A “Thought” “The key to the brain’s ability to make such good use of nighttime downtime is something it shares with your computer: the capacity to run multiple programs at once – to go on wrestling with a problem even when you’re turned your conscious attention elsewhere. … Conscious awareness is able to focus on only one thing at a time.” Kluger, Jeffrey “Shhh! Genius at Work”, Time, April 23, 2012, p. 46

  16. Parallel Systems (Cont.) • Terms overlap, BUT • Ways to categorize parallelism • Symmetric vs. Asymmetric • Flynn categorization • Granularity of parallelism • Distributed vs. Clustered

  17. Parallel Systems (Cont.) • Symmetric multiprocessing (SMP) • Each processor runs identical copy of operating system. • Many processes can run at once without performance deterioration. • Asymmetric multiprocessing • Each processor assigned a specific task; master processor schedules and allocates work to slave processors. • More common in extremely large systems

  18. Symmetric Multiprocessing Architecture

  19. Flynn’s Classification • Each of instructions and data can be parallel --- or not • 4 categories • SISD • SIMD • MIMD • MISD ???

  20. Granularity of Parallelism • Instruction-level • Data-level • Loop-level • Thread-level • Task-level

  21. Distributed Systems • Loosely coupled system – processors communicate through “available” communications lines • Advantages of distributed systems • Resources Sharing • Unlimited Resources ? • Reliability • Communications cheap • Disadvantages ?

  22. Real-Time Systems • Control, Sensors, Image Processing • Well-defined fixed-time constraints. • Real-Time systems may be either hard or soft real-time.

  23. Handheld Systems • Personal Digital Assistants (PDAs) • Cellular telephones • Mobile devices • Issues: • Limited memory • Slow (?) processors • Small display screens • Power constraints

  24. Operating System Types (current) • Mainframe Systems • Desktop Systems • Multiprocessor Systems • Distributed Systems • Clustered Systems • Real -Time Systems • Handheld Systems

  25. Operating Systems Types (future) • Heterogeneous multiprocessor systems on a chip • Multi-core • Many-core • SIMD/GPU • ?

  26. A Final Thought “For x86 computers, we expect to see two additional cores per chip every two years and the SIMD width to double every four years. Given these assumptions, over the next decade the potential speedup from SIMD parallelism is twice that of MIMD parallelism.” Hennessy, J.l. and Patterson, D.A., Computer Architecture – A Quantitative Approach, 5th edition, 2012 p. 263.

  27. OS Airlines – MAC • All stewards, stewardesses, captains, baggage handlers, ticket agents, look the same, talk the same, act the same • Anytime you ask about details you’re told you don’t need to know, don’t want to know, and everything will be done for you without your having to ask. So shut up and sit down.

  28. OS Airlines – Windows 3.1 • The airport terminal is nice and colorful with helpful stewards and stewardesses • Easy access to plane and uneventful takeoff … then • The plane blows up without any warning whatsoever

  29. OS Airlines – Windows xx • Planes are remarkably similar to ones used by Windows 3.1 OS • Environment is even nicer, but the plane takes 5 times as long to get started – or to stop • Plane flies well enough, smooth and quite fast • Then the plane blows up for no explainable reason

  30. OS Airlines -- UNIX • Each passenger brings one part of the plane to the airport • Passengers go to the runway and put the plane together piece by piece, constantly arguing over what type of plane they’re building

More Related