Operating Systems - Overview PDF
Document Details
Uploaded by ConsummateLapisLazuli7273
Tags
Summary
This document provides an overview of operating systems, including their basic services, functionalities, and types. It details concepts like multitasking, multiprocessing, file management, and I/O services, and explains the role of an operating system in managing computer hardware resources for efficient user access.
Full Transcript
System Software and Computing Concepts CT123-3-1Ver: VDE Operating System: Overview Topics we will cover The OS Concept Services and Facilities of the OS UIs and Command Execution Services File Management...
System Software and Computing Concepts CT123-3-1Ver: VDE Operating System: Overview Topics we will cover The OS Concept Services and Facilities of the OS UIs and Command Execution Services File Management I/O Services Network Communications Support Services Security Protection Services System Administration Support Organization of OS OS Types Module Code & Module Title Slide Title SLIDE 2 Learning Outcomes At the end of this section, YOU should be able to: Define an Operating System Explain how an Operating System functions and its requirements Module Code & Module Title Slide Title SLIDE 3 Key Terms Module Code & Module Title Slide Title SLIDE 4 Without an Operating System… Program instructions must be loaded into memory by hand No user interface except for I/O routines provided with executing program System is idle when waiting for user input No facility to store, retrieve, or manipulate files No ability to control peripheral devices Can run only one program at a time; computer halts at end of each program Module Code & Module Title Slide Title SLIDE 5 Integrated Computer Environment Module Code & Module Title Slide Title SLIDE 6 Definition of an Operating System “A collection of computer programs that integrate the hardware resources of the computer and make those resources available to a user and the user’s programs, in a way that allows the user access to the computer in a productive, timely, and efficient manner.” Module Code & Module Title Slide Title SLIDE 7 Operating System – Basic Services Accepts commands and requests from users and users’ programs and responds with appropriate output results Manages, loads, and executes programs Manages hardware resources of the computer including interfaces to networks and other external parts of the system Note: The operating system itself consists of hundreds or thousands of programs, each specialized for particular OS tasks. Module Code & Module Title Slide Title SLIDE 8 Concurrent Operations Multitasking (multiprogramming) – Use of concurrent processing to simulate simultaneous execution of multiple programs even when using only a single CPU – Supports multiuser systems Multiprocessing – Actual simultaneous processing of multiple programs using either multiple CPUs or multiple CPU cores Module Code & Module Title Slide Title SLIDE 9 Operating System – Additional Services Provides interfaces for the user and the user’s programs File management and support services I/O support services Means of starting the computer – Bootstrapping or booting the computer or Initial Program Load (IPL) Handles all interrupt processing Network services Services to allocate resources such as memory, CPU time, and I/O devices Security and protection services Systems administration Module Code & Module Title Slide Title SLIDE 10 Operating System Components Memory Resident – Always loaded in memory – Commonly called the kernel – Contains essential services required by other parts of the operating system and applications. – Typically responsible for managing memory management, processes and tasks, and secondary storage Memory Non-resident – Infrequently used programs – Software tools – Commands Bootstrap program Module Code & Module Title Slide Title SLIDE 11 Simplified Diagram of Operating System Services Module Code & Module Title Slide Title SLIDE 12 General Purpose Computing Systems Categories Single-user, single tasking (essentially obsolete) Single-user, multitasking Mainframes Network servers Distributed systems Real-time systems Operating systems for mobile devices Embedded systems Module Code & Module Title Slide Title SLIDE 13 OS Degree of Activity Interactive – Also known as conversational systems Batch processing – User submits programs or jobs for processing – Little to no user interaction Event driven – Interrupts or service requests Module Code & Module Title Slide Title SLIDE 14 Hardware and the OS A hardware platform may support a variety of operating systems An operating system may work on a variety of platforms A standard operating system that works on different hardware – Provides program and file portability – Enables user efficiency through recognizable interface – Is implemented through a systems programming language like C++ or Java as opposed to assembly language Module Code & Module Title Slide Title SLIDE 15 Services and Facilities Command processor File management system I/O control system Process control management and interprocess communication Memory management Scheduling system Secondary storage management Network management, communication support, and communication interfaces System protection management and security System administration Module Code & Module Title Slide Title SLIDE 16 User Interface and Command Execution Services Types of user interfaces – CLI - Command Line Interface – GUI - Graphical User Interface Shell – User interface and command processor that interacts with the kernel – UNIX/Linux: C, Bourne, bash and Korn shells Command Languages – IBM Mainframes – JCL – MS Windows –.BAT files, Windows Powershell – UNIX/Linux – shell scripts Module Code & Module Title Slide Title SLIDE 17 File Management File - logical unit of storage Basic file management system provides – Directory structures for each I/O device – Tools to copy, move, store, retrieve and manipulate files – Information about each file in the system and the tools to access that information – Security mechanisms to protects files and control access Additional file management features – Backup, emergency retrieval and recovery – File compression – Journaling – Transparent network file access – Auditing Module Code & Module Title Slide Title SLIDE 18 I/O Services Startup configuration – IBM-type PCs use BIOS (basic input/output system) Device drives that implement interrupts and provide other techniques for handling I/O Plug and play Module Code & Module Title Slide Title SLIDE 19 Process Control Management A process is an executing program Inter-process messaging services – Example: a pipe in UNIX or Windows that is a temporary software connection between two programs or commands Thread – An individually executable part of a process – Shares memory and other resources with other threads of the same process Module Code & Module Title Slide Title SLIDE 20 Memory Management Keeps track of memory – Identifies programs loaded into memory – Amount of space each program uses – Available remaining space – Prevents programs from reading and writing memory outside of their allocated space Maintains queues of waiting programs Allocates memory to programs to be loaded Deallocates a program’s memory space upon program completion Usually implemented with virtual storage Module Code & Module Title Slide Title SLIDE 21 Scheduling High-level scheduling – Placed in queue based on level of priority and eventually executed Dispatching – Actual selection of process(es) that will be executed at any given time – Nonpreemptive: program voluntarily gives up control – Preemptive: uses clock interrupt for multitasking Context switching – Transfer control to the process that is being dispatched Processing requirements: CPU vs. I/O bound Module Code & Module Title Slide Title SLIDE 22 Achieving Multitasking While one program is waiting for I/O to take place, another program is using the CPU to execute instructions. Time-slicing – The CPU may be switched rapidly back and forth between different programs Dispatcher – is activated by I/O operation or real time clock interrupt – selects next process to run Module Code & Module Title Slide Title SLIDE 23 Sharing the CPU during I/O Breaks I/O represents a large percentage of a typical program’s execution Module Code & Module Title Slide Title SLIDE 24 Time-sharing the CPU Time slicing Module Code & Module Title Slide Title SLIDE 25 Secondary Storage and Security Secondary storage management – Optimizes completion of I/O tasks for efficient disk usage – Combination of hardware and software Security and protection services – Protect OS from users – Protect users from other users – Prevent unauthorized entry to system – Prevent unauthorized system use by authorized users Module Code & Module Title Slide Title SLIDE 26 Network and Communication Services TCP-IP protocol suite – Locate and connect to other computers – Pass application data in packets to other systems – Access files, I/O devices, and programs from remote systems – Support distributed processing Network Applications – Email, remote login, Web services, streaming multimedia, voice over IP telephony, VPN Communication services – Interface between communication software and OS I/O control system that provides network access Module Code & Module Title Slide Title SLIDE 27 System Administration Support Network administration System configuration Backups and setting group configuration policies Software installations and upgrades Adding and deleting OS installations users (system generation), Controlling and patches, and upgrades modifying user System tuning and privileges optimization System security Monitoring Files systems performance management Recovering lost data Module Code & Module Title Slide Title SLIDE 28 Systems Tools Examples IBM z/OS – sysgen: reconfiguration to incorporate new equipment – Workload Manager: optimize system resources automatically Unix/Linux – superuser: system administrator account with privileges to override all restrictions and security built into the system – adduser: administer user accounts – mount/umount: mount and unmount a file system – fsck: check and repair a file system – ufsdump/ufsrestore: create and restore backups Windows – Control panel – Task manager (Ctrl-Alt-Del menu) Module Code & Module Title Slide Title SLIDE 29 Typical System Status Report Module Code & Module Title Slide Title SLIDE 30 OS Configurations Three main configurations for the organization of an operating system 1. Monolithic configuration Unix/Linux 2. Hierarchical (layered) configuration Multics Windows 2000 and later versions (approximately hierarchical) 3. Microkernel Macintosh OS X Module Code & Module Title Slide Title SLIDE 31 Monolithic Kernel Drawback: stability and integrity must be managed carefully Examples: UNIX, Linux Module Code & Module Title Slide Title SLIDE 32 Hierarchical Model of an OS Each layer is independent of the other layers Requests are passed down to the layer immediately below it Module Code & Module Title Slide Title SLIDE 33 Microkernel Minimum essential functionality Client-server system on same system – Clients request services from microkernel which passes message onto appropriate server Module Code & Module Title Slide Title SLIDE 34 8 Types of Operating Systems 1. Single user, single tasking (obsolete) 2. Single-user systems and workstations – Predominant systems in use – Macintosh OSX, versions of Windows, Linux and Sun Solaris 3. Mainframe systems – Designed to manage large scale computing resources – Extensive I/O capability to handle large numbers of transactions – Support batch data processing operations – Consist of clusters made up of multiprocessor units 4. Network servers – Focused on supporting clients connected to the server – Improved security, high reliability, backup facilities Module Code & Module Title Slide Title SLIDE 35 8 Types of Operating Systems 5. Mobile operating systems – Designed for small hand-held devices such as PDAs and smart phones – Features of single-user multitasking systems but with constraints on memory, storage, CPU execution speed and electrical power – Special keyboard handling 6. Real-time systems – One or more processes must be able to access the operating system immediately – Multitasking system where the real-time program’s interrupts have very high priority – Examples Air controller systems, rocket propulsion control systems, car brakes Module Code & Module Title Slide Title SLIDE 36 8 Types of Operating Systems 7. Embedded control systems – Specialized systems designed to control a single piece of equipment such as an automobile or a microwave oven – Software is usually provided in ROM – Real-time system dedicated to the particular application – Example: General Motors Delphi system 8. Distributed systems – Processing power distributed among computers in a cluster or network – Example: Distributed Computing Environment (DCE) Module Code & Module Title Slide Title SLIDE 37 Quick Review Questions The definition of an operating system specifies two primary purposes served by the operating system. What are they? Explain the major error in the following sentence: ‘‘One of the major tasks performed by the operating system program is to load and execute programs.’’ Explain concurrent processing. Briefly describe at least two services that an operating system must provide to support concurrent processing. What are the memory resident parts of an operating system called? When are these parts loaded into memory? What is a diskless workstation or thin client? What does API stand for? What is the purpose of an API? Operating systems are said to be event driven. Explain what this means. What is the difference between multiprogramming and multiprocessing? What tasks are performed by device drivers? Module Code & Module Title Slide Title SLIDE 38 Summary Modern operating systems provide an interface that is used by programs and by the user to interact with the system. The interface provides a variety of user and program services, including a user interface with command capability, program execution and control capability, I/O and file services for programs and for users, command languages for building programs of commands, system information, security features, and inter-user communication and file sharing capability. An application programming interface (API) provides a standard set of services that application programs use to access the operating system and to provide a common look and feel to their user interfaces. In this chapter we considered each of these services. Module Code & Module Title Slide Title SLIDE 39 END Q&A Module Code & Module Title Slide Title SLIDE 40 Next Operating System: User View Module Code & Module Title Slide Title SLIDE 41