Chapter 3 provides an overview of operating systems, detailing various computing environments and their evolution, including batch processing, multiprogramming, time-sharing, real-time, and distributed systems. It emphasizes the importance of efficiency, system performance, and user service in operating systems. The chapter concludes by highlighting the characteristics of modern operating systems that incorporate elements from previous computing environments.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
14 views
Chapter_03
Chapter 3 provides an overview of operating systems, detailing various computing environments and their evolution, including batch processing, multiprogramming, time-sharing, real-time, and distributed systems. It emphasizes the importance of efficiency, system performance, and user service in operating systems. The chapter concludes by highlighting the characteristics of modern operating systems that incorporate elements from previous computing environments.
2 Introduction (continued) • Multiprogramming Systems • Time-Sharing Systems • Real-Time Operating Systems • Distributed Operating Systems • Modern Operating Systems
3 Computing Environments and Nature of Computations • A computing environment consists of a computer system, its interfaces with other systems, and the services provided by its operating system to its users and their programs • Evolution: – Noninteractive Computing Environments – Interactive Computing Environments – Real-Time, Distributed, and Embedded Environments – Modern Computing Environments
4 Computing Environments and Nature of Computations (continued) • Noninteractive Computing Environments – OS focuses on efficient use of resources – Computations in form of program or job • Interactive Computing Environments – OS focuses on reducing average amount of time required to implement an interaction between a user and his computation – Execution of a program is called a process
6 Computing Environments and Nature of Computations (continued) • Real-Time, Distributed, and Embedded Environments – A real-time computation has specific time constraints • OS ensures computations complete within constraints – Distributed computing environment: enables a computation to use resources located in several computer systems through a network – Embedded computing environment: computer system is a part of a specific hardware system • OS has to meet the time constraints arising from the nature of the system being controlled
7 Computing Environments and Nature of Computations (continued) • Modern Computing Environments – Has features of several of the computing environments described earlier • OS uses complex strategies to manage user computations and resources
9 Efficiency, System Performance, and User Service • Two of the fundamental goals of an OS: – Efficiency of use • Of a resource – User convenience • Measurable aspect: User service – Turnaround time – Response time • To a system administrator, performance of a system in its environment is more important – Typically measured as throughput
11 Batch Processing Systems • Batch: sequence of user jobs formed for processing by the OS • Batching kernel initiates processing of jobs without requiring computer operator’s intervention • Card readers and printers were a performance bottleneck in the 1960s – Virtual card readers and printers implemented through magnetic tapes were used to solve this problem • Control statements used to protect against interference between jobs • Command interpreter read a card when currently executing program in job wanted the next card
16 Multiprogramming Systems (continued) • An appropriate measure of performance of a multiprogramming OS is throughput – Ratio of the number of programs processed and the total time taken to process them • OS keeps enough programs in memory at all times, so that CPU and I/O devices are not idle – Degree of multiprogramming: number of programs – Uses an appropriate program mix of CPU-bound programs and I/O-bound programs – Assigns appropriate priorities to CPU-bound and I/O- bound programs
21 Time-Sharing Systems • Provide a quick response to user subrequests – Round-robin scheduling with time-slicing • Kernel maintains a scheduling queue • If time slice (δ) elapses before process completes servicing of a subrequest, kernel preempts it, moves it to end of queue, and schedules another process – Implemented through a timer interrupt
23 Time-Sharing Systems (continued) • Response time (rt): measure of user service – If processing of a subrequest requires δ CPU seconds rt = n × (δ + σ) η = δ / (δ + σ) where η: CPU efficiency, σ: scheduling overhead, n: number of users using system, δ: time required to complete a subrequest • Actual response time would be different because – Some users may be inactive – Some programs may require > δ CPU seconds
33 Summary • A computing environment consists of a computer system, its interfaces with other systems, and the services provided by its OS to users and programs – Evolved with advances in computer technology: • Batch processing systems • Multiprogramming operating system – Priority-based scheduling • Time-sharing operating systems – Round-robin scheduling with time-slicing
34 Summary (continued) • Evolution (continued) • Real-time operating systems – Priority-based scheduling and deadline-aware scheduling • Distributed operating system – Lets programs share resources across network • Modern operating system – Modern computing environment has elements of all the classic computing environments – Uses different techniques for different applications