1 / 51

Operating System Concepts

Operating System Concepts. Ku-Yaw Chang canseco@mail.dyu.edu.tw Assistant Professor, Department of Computer Science and Information Engineering Da-Yeh University. Chapter 1 Introduction. An Operating System (OS) A program that manages the computer hardware

selinaj
Download Presentation

Operating System Concepts

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 Concepts Ku-Yaw Chang canseco@mail.dyu.edu.tw Assistant Professor, Department of Computer Science and Information Engineering Da-Yeh University

  2. Chapter 1 Introduction • An Operating System (OS) • A program that manages the computer hardware • Provides a basis for application programs • Acts as an intermediary between a user of a computer and the computer hardware • Some operating systems are designed to be • Convenient • Efficient • Some combination of the above Chapter 1 Introduction

  3. Chapter 1 Introduction • To understand how they have developed • Trace the development of operating systems • Operating system variations • Parallel systems • Real-time systems • Embedded systems Chapter 1 Introduction

  4. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  5. 1.1 What Is an Operating System? • A computer system can be divided into: • The hardware • The operating system • The application programs • The users Chapter 1 Introduction

  6. Abstract view of the componentsof a computer system Chapter 1 Introduction

  7. Computer System Components 1. Hardware– provides basic computing resources (CPU, memory, I/O devices). 2. Operating system– controls and coordinates the use of the hardware among the various application programs for the various users. 3. Applications programs– define the ways in which the system resources are used to solve the computing problems of the users (compilers, database systems, video games, business programs). 4. Users (people, machines, other computers). Chapter 1 Introduction

  8. Two Viewpoints1.1.1 User View • PC • Monopolize its resources • Maximize the work • Designed for ease of use - convenient • Mainframe or minicomputer • Terminal • Share resources and may exchange information • Maximize resource utilization – efficient • Workstation • Compromise between individual usability and resource utilization • Embedded computer • Little or no user view Chapter 1 Introduction

  9. Two Viewpoints1.1.2 System View • 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) Chapter 1 Introduction

  10. 1.1.3 System Goals • Tradeoffs • Convenience • Efficiency • Operating systems have also evolved over time. • Graphical User Interfaces (GUIs) Chapter 1 Introduction

  11. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  12. 1.2 Mainframe Systems • First computers used to tackle many commercial and scientific applications • Batch systems • Multiprogrammed Systems • Time-Sharing Systems Chapter 1 Introduction

  13. Early computer Physically enormous machine run from a console Input devices Card readers Tape drives User prepared a job and submitted it to the computer operator At some time later, the output appeared. Output devices Line Printer Tape drives Card punches 1.2.1 Batch Systems Chapter 1 Introduction

  14. 1.2.1 Batch Systems • First rudimentary operating system • Always resident in memory • To speed up processing • Batch similar jobs • Automatic job sequencing – transfers control from one job to another • Introduction of disk technology • Keep all jobs on disk • Job scheduling Chapter 1 Introduction

  15. Memory Layoutfor a Simple Batch System Chapter 1 Introduction

  16. 1.2.2 Multiprogrammed Systems • Increase CPU utilization • Keep several jobs in memory simultaneously • CPU is multiplexed among them. Chapter 1 Introduction

  17. Memory Layoutfor a Multiprogramming System Chapter 1 Introduction

  18. 1.2.2 Multiprogrammed Systems • Job scheduling • All the jobs enter the system are kept in the job pool • Processes residing on disk awaiting for allocation of main memory • If there is not enough room for all the jobs, the system must choose among them. • CPU scheduling • If several jobs are ready to run at the same time, the system must choose among them. Chapter 1 Introduction

  19. 1.2.3 Time-Sharing Systems • Multiprogrammed, batch systems • Utilize system resources effectively • CPU, memory, peripheral devices • Do not provide user interaction with computer system. • Time-sharing (Multitasking) system • A logical extension of multiprogramming • Switch CPU among multiple jobs frequently • The user can interact with each program while it is running. Chapter 1 Introduction

  20. 1.2.3 Time-Sharing Systems • Response time • The amount of time it takes to start responding(not output that response) • An interactive (hands-on) computer system • Direct communication • The response time should be short – typically with 1 second or so. Chapter 1 Introduction

  21. 1.2.3 Time-Sharing Systems • A time-sharing system • Allow many users to share the computer simultaneously • Switch rapidly from one user to the next • Give each user the impression that the entire computer system is dedicated to his/her use Chapter 1 Introduction

  22. 1.2.3 Time-Sharing Systems • Multiprogramming and time sharing systems are the central themes of modern operating systems • Process and Thread concepts • Virtual / Physical memory • File system Chapter 1 Introduction

  23. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  24. 1.3 Desktop Systems • Personal computers (PCs) • Computer system dedicated to a single user. • Appear in the 1970s • Maximizing user convenience and responsiveness • Instead of maximizing CPU and peripheral utilization • May run several different types of operating systems (Windows, MacOS, UNIX, Linux) Chapter 1 Introduction

  25. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  26. More than one CPU in close communication Also known as parallel systems or tightly coupled systems Processors share Computer bus Clock Main Advantages Increased throughput Economy of scale Increased reliability graceful degradation fault tolerant Memory Peripheral devices 1.4 Multiprocessor Systems Chapter 1 Introduction

  27. 1.4 Multiprocessor Systems • Symmetric multiprocessing (SMP) • Each processor runs an identical copy of the operating system. • Many processes can run simultaneously without performance deterioration. • Most modern operating systems support SMP. • Asymmetric multiprocessing • Each processor is assigned a specific task; master processor schedules and allocated work to slave processors. • More common in extremely large systems Chapter 1 Introduction

  28. Symmetric Multiprocessing Architecture Chapter 1 Introduction

  29. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  30. 1.5 Distributed Systems • Depends on network functionality • TCP/IP is the most common network protocol • Local-area network (LAN) • Within a room, a floor, or a building • Wide-area network (WAN) • Between buildings, cities, or countries • Metropolitan-area network (MAN) • Buildings within a city • Small-area network (SAN) • Short distance of several feet : BlueTooth Chapter 1 Introduction

  31. 1.5.1 Client-Server Systems • Centralized systems • Terminals • Supplanted by PCs • Server systems • Satisfy requests generated by client systems • Two categories (broadly) • Compute-server systems • File-server systems Chapter 1 Introduction

  32. General Structure ofa Client-Server System Chapter 1 Introduction

  33. 1.5.2 Peer-to-Peer Systems • Distribute the computation among several physical processors. • Loosely coupled system • each processor has its own local memory • processors communicate with one another through various communications lines, such as high-speed buses or telephone lines. • Network operating system • Provide features such as file sharing across the network Chapter 1 Introduction

  34. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  35. 1.6 Clustered Systems • Gather multiple CPUs to accomplish computational work • Provide high availability • General accepted definition • Clustered computers share storage and are closely linked via LAN networking Chapter 1 Introduction

  36. 1.6 Clustered Systems • Asymmetric clustering • one server runs the application while other servers standby. • Symmetric clustering • all N hosts are running the application. Chapter 1 Introduction

  37. 1.6 Clustered Systems • Parallel clusters • Multiple hosts to access the same data on the shared storage • Most OSs lack such support • Clustering over a WAN • Global clusters – the machines could be anywhere in the world • Cluster technology is rapidly changing. • Storage-Area-Networks (SANs) Chapter 1 Introduction

  38. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  39. 1.7 Real-Time Systems • Well-defined, fixed time constraints • Processing must be done within the defined constraints, or the system will fail. • Often used as a control device in a dedicated application • Weapon systems • Medical imaging systems • Industrial control systems Chapter 1 Introduction

  40. Two Flavors • Hard real-time system • Secondary storage limited or absent, data stored in short term memory, or read-only memory (ROM) • Conflicts with time-sharing systems, not supported by general-purpose operating systems • Soft real-time system • Limited utility in industrial control of robotics • Useful in applications (multimedia, virtual reality) requiring advanced operating-system features Chapter 1 Introduction

  41. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  42. 1.8 Handheld Systems • Personal Digital Assistants (PDAs) • Palm • Cellular telephones • Limited size • Small amount of memory • Slow processor • Small display screens Chapter 1 Introduction

  43. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  44. Migration of OS Concepts and Features Chapter 1 Introduction

  45. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  46. 1.10 Computing Environments • Traditional computing • Web-based computing • Embedded computing Chapter 1 Introduction

  47. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  48. Summary • P.23 – P.24 Chapter 1 Introduction

  49. What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real-Time Systems Handheld Systems Feature Migration Computing Environments Summary Exercises Chapter 1 Introduction Chapter 1 Introduction

  50. Exercises • 1.3 • 1.4 • 1.5 • 1.9 • 1.10 Chapter 1 Introduction

More Related