Learning Objectives After completing this chapter, you should be able to describe: Innovations in operating systems development The basic role of an operating system Structure of operating system The major operating system software subsystem managers and their functions identify the major characteristics of different types of operating systems
What is Operating System? Computer System Software (programs) Hardware (physical machine and electronic components ) Operating System Part of computer system (software ) Operating system is a software, which makes a computer to actually work . The OS organize and controls the hardware. OS acts as an interface between the application programs and machine hardware. Examples: Windows, Linux, Android and IOS, etc.
What OS does? An operating system performs basic tasks such as, Controlling and allocating memory , Prioritizing system requests, Controlling input and outputs devices, Facilitating networking and Managing files systems.
Structure of operating system The structure of OS consists of 4 layers: Hardware Hardware consist of CPU, Main Memory, I/O Devices, etc , Software (Operating System) Software includes process management routines, memory management routines, I/O control routines, file management routines.
Structure of operating system System Programs This layer consists o f compilers, Assemblers, Linker etc. Application programs This is dependent on users need.
Two primary objectives of os The two primary objectives of an operating s ystem are: Make a computer system easier to use: An operating system hides details of hardware resources from programmers and other users and provides them with a convenient interface for using a computer system. Manage the resources of a computer system: An operating system manages all resources of a computer system. Efficient and fair sharing of system resources among users and/or programs is a key goal for all operating systems.
Main Function of Operating system A separate module of operating system software performs each of the function: Process management : - Process management module takes care of creation and deletion of processes, and providing mechanism for synchronization and communication among processes. Memory management : - Memory management module takes care of allocation and de-allocation of memory space to programs in need of this resources. File management : - It takes care of file-related activities such as organization storage, retrieval, naming, sharing, and protection of files.
Main Function of Operating system Security: - Security module protects the resources and information of a computer system against destruction and unauthorized access. Command interpretation: - Command interpretation module takes care of interpreting user commands, and directing system resources to process the commands.
Operating System Software Includes four essential subsystem managers Memory Manager Processor Manager Device Manager File Manager Network Manager (fifth subsystem manager) In all modern operating systems Assumes responsibility for networking tasks
Operating System Software (cont'd.)
Operating System Software (cont'd.) Each manager: Works closely with other managers Performs a unique role Manager tasks Monitor its resources continuously Enforce policies determining: Who gets what, when, and how much Allocate the resource (when appropriate) Deallocate the resource (when appropriate)
Operating System Software (cont'd.) Network Manager Operating systems with networking capability Fifth essential manager Convenient way for users to share resources Retains user access control Resources include: Hardware (CPUs, memory areas, printers, tape drives, modems, and disk drives) Software (compilers, application programs, and data files)
Operating System Software (cont'd.)
Main Memory Management In charge of main memory Random Access Memory (RAM) Responsibilities include: Preserving space in main memory occupied by operating system Checking validity and legality of memory space request Setting up memory tracking table Tracks usage of memory by sections Needed in multiuser environment Deallocating memory to reclaim it
Processor Management In charge of allocating Central Processing Unit (CPU) Tracks process status An instance of program execution Two levels of responsibility: Handle jobs as they enter the system Handled by Job Scheduler Manage each process within those jobs Handled by Process Schedule
Device Management In charge of monitoring all resources Devices, channels, and control units Responsibilities include: Choosing most efficient resource allocation method Printers, ports, disk drives, etc . Allocating the device Starting device operation Deallocating the device
File Management In charge of tracking every file in the system Data files, program files, compilers, application programs Responsibilities include: Enforcing user/program resource access restrictions Uses predetermined access policies Controlling user/program modification restrictions Read-only, read-write, create, delete Allocating resource Opening the file Deallocating file
Types of Operating System Single User Multi-user Multi-tasking Interactive Real Time Batch Processing Distributed Systems
Single User standard OS for a standalone computer systems only one person can use the computer system at any one time - can support multiple accounts but only one used at a time processing power of CPU dedicated to the user - so multi-tasking can be performed
Multi User more than one user accessing the system at the same time most commonly: network operating system - server computer connected to a number of terminals - client-server LAN, ATM, ticket booking O/S allocates a time slice to each user - switches from user to user - the larger the number of users the slower the system works can run several programs simultaneously
Multi-Tasking CPU carries out more than one task at the same time - several programs can be loaded and running at the same time e.g. using a word processor whilst browsing the Internet processor switches between tasks - completes part of one task then switches to do part of another task - this process happens very fast
Interactive direct user interaction whilst a program is running accepts and responds to input from user computer gives the user an immediate response Interactive Processing : Examples: Booking concert tickets Ordering books online Handling bank accounts
Real Time must respond to events with no discernible delay responds immediately to the data entered used where response time by the system is critical - where delays in processing would prove unacceptable used for control systems - raffic lights, air traffic control, aircraft navigation
Batch Processing data can be collected over a period of time when all data collected it is processed at the same time does not need staff intervention suitable for situations where there is a lot of similar data to be processed & the processing can wait: - cheque processing in a bank, gas bill printing, payroll processing
Distributed Systems complex task split into a number of smaller, similar tasks a series of computers connected together via network - computers can be in different physical locations each computer performs part of the processing results from individual machines are combined to achieve the overall task - film animation & CGI via "render farms“ - analysis of large datasets
Activity Name Five types of Operating Systems. List the operating system software subsystem and their functions. List three situations that might demand a real-time operating system and explain why? What is the 4 layers consist in OS structure. Explain the functions of operating system. Explain the fundamental difference between interactive, batch and real-time.
Activity What is the fifth essential manager in OS. Explain the function of Memory management. What is the two primary objectives of operating system. Explain the file management.