Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
Published byModified over 6 years ago
Presentation on theme: "Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating."— Presentation transcript:
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating Systems Development Conclusion Software Components Developed Hardware Components Developed Operating Systems Developed
Understanding Operating Systems 2 Brief History of Operating Systems Development 1940 1955 1965 1980 1990 First Generation Vacuum tube, single user, early operating systems Second Generation Job scheduling, JCL, faster I/O, spooling, batch, files Third Generation Shared processing, multiprogramming, virtual memory, DBMS Recent Developments Distributed computing, personal computers, high- speed communication, multi-media
Understanding Operating Systems 3 Operating Systems Operating Systems in Practice MS-DOS Operating System Windows 2000 UNIX/Linux Operating System OpenVMS Alpha Operating System IBM OS/390 Operating System
Understanding Operating Systems 4 What is an OS? Users Application programs Operating System Computer Hardware
Understanding Operating Systems 5 What is an OS? Clients or users (e.g., people or machines) trying to use the resources to solve problems Application programs (e.g., text editors, compilers, video games, databases, business software) which define how the resources can be used to solve computing problems An operating system (OS) (a computer program) which acts as an intermediary between the users and the hardware. The purpose of the OS is to provide an environment for a user to execute programs conveniently and efficiently A computer hardware (consisting of CPU, Memory, I/O devices) which provides the basic computing resources.
Understanding Operating Systems 6 Components of an Operating System Operating system – part of the computing system that manages all of the hardware and all of the software –Controls every file, device, section of main memory & every nanosecond of processing time Memory manager Processor manager Device manager File manager Operating system consists of
Understanding Operating Systems 7 What is an OS: A Pictorial View
Understanding Operating Systems 9 Tasks Performed by Each Subsystem 1.Monitor its resources continuously 2.Enforce the policies that determine who gets what, when and how much 3.Allocate the resource when appropriate 4.Deallocate the resource (reclaim it) when appropriate
Understanding Operating Systems 10 Machine Hardware Memory chips Input/output devices (monitor, keyboard, printer) Storage devices (disks, magnetic tape, card readers, drums) Central Processing Unit (Arithmetic Logic Unit, registers, internal control, bus control)
Understanding Operating Systems 11 Types of Operating Systems Batch (simple and multi-programmed) Interactive (time-sharing) Real-time systems Hybrid systems (combination of batch and interactive) Parallel (tightly coupled) Distributed (loosely coupled) Batch OS computer OS of the late 1950s did not allow human interaction with a job while the job was being processed processing in these older OS where only one job could be processed at a time is called batch processing with time, demand arose for interactive processing where a computer could respond to users while in a processing state since there is no interaction in batch systems, programs must be debug statically
Understanding Operating Systems 12 Types of OS Single-User, Single Task: Designed to manage the computer so that one user can effectively do one thing at a time. An example of a single-user, single task operating system is DOS, which allowed only one user to run a single program at one time. Single-User, Multi-Tasking: This is the type of operating system that most people use on their desktop and laptop computers today. Windows 98 and the Mac OS are examples of operating systems that allow a single user to have several programs in operation at the same time. For example, a Windows user can be writing an email message while downloading a file from the Internet, while printing a term paper from a word processor. Multi-User: Allows many different users to take advantage of the computers resources simultaneously. The operating system must make sure that the requirements of the various users are balanced, and that the programs they are using have sufficient and separate resources so that a problem with one user doesn't affect the entire community of users. Linux (free version of UNIX) is an example of a multi-users operating system Real-Time Operating System: Real-time operating systems are used to control machinery, scientific instruments, and industrial systems. A real-time operating system typically has very little user interface capability and no end- user utilities. A very important part of a real-time operating system is managing the resources of the computer so that a particular operation executes in precisely the same amount of time every time it occurs.
Understanding Operating Systems 13 Multi-User OS & Scheduling A multi-user OS consists of two main software components called the scheduler and the dispatcher The scheduler arranges the order in which commands are executed on the computer. The dispatcher gives control of the CPU to a job already scheduled by the scheduler Scheduling is the process of selecting a program from the ready queue that will take control of the CPU In other words, a scheduling algorithm determines access to the CPU Clearly, there are many possible job scheduling arrangements e.g., Allowing every job to execute to completion before the next job starts. Is there a potential problem with this scheme? A preemptive algorithm allows a job to be stopped after executing for some time or because a higher priority job has arrived. A Nonpreemptive algorithm does not allow such stoppage. Example Algorithms: FIFO, priority (e.g., shortest-job-first (SJF))