Operating System (O.S.) Objectives & Functions

Slides:



Advertisements
Similar presentations
Chapter 2 Operating System Overview Operating Systems: Internals and Design Principles, 6/E William Stallings.
Advertisements

1 Operating Systems Overview Chapter 2. 2 Operating System n Is a program that controls the execution of application programs u OS must relinquish control.
CS 345 Computer System Overview
Lecture 1: History of Operating System
Operating System Overview
Chapter 8 Operating System Support
Chapter 1 and 2 Computer System and Operating System Overview
Chapter 1 and 2 Computer System and Operating System Overview
Computer Organization and Architecture
University of Pennsylvania 9/7/00CSE 3801 CSE 380 Introduction to Operating Systems Insup Lee Fall 00.
Operating System Objectives & Functions An operating system is a program that controls the execution of application programs and acts as an interface between.
A. Frank - P. Weisberg Operating Systems Evolution of Operating Systems.
Chapter 2 Operating System Overview Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Chapter 2 Operating System Overview Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Operating System Overview
Operating System A program that controls the execution of application programs An interface between applications and hardware 1.
Operating System Overview Dr. Sunny Jeong & Mr. M.H. Park Operating Systems: Internals and Design Principles, 6/E William Stallings.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 2: System Structures.
Operating Systems.
9/14/2015B.Ramamurthy1 Operating Systems : Overview Bina Ramamurthy CSE421/521.
Operating Systems.  Operating System Support Operating System Support  OS As User/Computer Interface OS As User/Computer Interface  OS As Resource.
CHAPTER 2 OPERATING SYSTEM OVERVIEW 1. Operating System Operating System Definition A program that controls the execution of application programs and.
Chapter 2 Operating System Overview Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Chapter 2 Operating System Overview Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
1 Operating System Overview Chapter 2 Advanced Operating System.
Chapter 2 Operating System Overview Operating Systems: Internals and Design Principles, 6/E William Stallings.
B.Ramamurthy9/19/20151 Operating Systems u Bina Ramamurthy CS421.
HERY H AZWIR Computer Software. Computer Software Outline Software and Programming Languages  Software  Programming  Programming language development.
Fall 2000M.B. Ibáñez Lecture 01 Introduction What is an Operating System? The Evolution of Operating Systems Course Outline.
Chapter 5 Operating System Support. Outline Operating system - Objective and function - types of OS Scheduling - Long term scheduling - Medium term scheduling.
Recall: Three I/O Methods Synchronous: Wait for I/O operation to complete. Asynchronous: Post I/O request and switch to other work. DMA (Direct Memory.
1 Lecture 2: Overview of Operating System Operating System Fall 2006.
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
Operating System 2 Overview. OPERATING SYSTEM OBJECTIVES AND FUNCTIONS.
1 Operating System Overview Chapter 2. 2 Operating System A program that controls the execution of application programs An interface between applications.
1 Operating System Overview Chapter 2. 2 Operating System A program that controls the execution of application programs An interface between applications.
Chapter 2 Operating System Overview Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
CIS250 OPERATING SYSTEMS Chapter One Introduction.
1 Operating System Overview Chapter 2. 2 Operating System A program that controls the execution of application programs An interface between applications.
CS 345 Computer System Overview
1 From: Operating Systems Internals and Design Principles by William Stallings Chapter 2 Operating System Overview.
Faculty of Sciences and Social Sciences HOPE Chapter 2 Operating System Overview Stewart Blakeway FML
1 Operating System Overview Chapter 2. 2 Operating System A program that controls the execution of application programs An interface between applications.
1 Overview Computer System/Operating System Overview.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Copyright Prentice Hall, Inc. 1 Operating System Overview.
Computer Architecture Chapter (8): Operating System Support
Chapter 2 Operating System Overview Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
Principles of Operating Systems Abhishek Dubey Daniel Balasubramanian Fall 2014 Slides Based On Power points and book material from William Stallings.
Operating System Overview
Operating System Overview
Operating System Overview
Operating System Interface between a user and the computer hardware
Evolution of Operating Systems
Operating System 2 Overview
CHAPTER 1: OPERATING SYSTEM OVERVIEW
Chapter 3: Operating System Overview
Introduction to Operating System (OS)
Operating System Overview
Operating Systems Bina Ramamurthy CSE421 11/27/2018 B.Ramamurthy.
Operating Systems.
Operating System Overview
Operating System 2 Overview
Operating Systems : Overview
Operating Systems : Overview
Chapter 2 Operating System Overview
Operating System 2 Overview
Operating System Overview
Chapter 2 Operating System Overview
Presentation transcript:

Operating System (O.S.) Objectives & Functions An operating system is a program that controls the execution of application programs and acts as an interface between the user of a computer and the computer hardware. Three Objectives can be observed: Convenience Efficiency Ability to evolve O.S. as a User / Computer Interface (Figure 2.1) Programmer

Services provided by the O.S. Program Creation --- editors, debuggers, ... etc.. These are in the forms of utility programs that are not actually part of the O.S. but are accessible through the O.S. Program Execution --- to execute a program, instructions and data must be loaded into the main memory, I/O devices and files must be initialized. Access to I/O devices --- as if simple read and write to the programmers Controlled Access to Files --- not only the control of I/O devices, but file format on the storage medium. System Access --- shared and public resources, protection of resources and data, resolve conflicts in the contention for resources. Error Detection and Response Internal/external hardware errors (memory error, device failures and mal-functions) Software errors (arithmetic overflows, attempt to access forbidden memory locations, inability of the O.S. to grant the request of an application) Ending a program, retrying , and reporting errors. Accounting --- collect usage statistics for various resources, billing, and monitoring performance.

The Evolution of O.S. Serial Processing 1940 - mid 1950 (no O.S.) display lights, toggle switches, input devices (card readers), & printers program in machine code error indicated by the lights debug by examining registers and main memory normal completion => output on the printer problems: Scheduling - sign-up sheet (by half an hour block) Setup time - loading compiler, mounting and dismounting tapes, setting up card decks. evolution of libraries of common functions, linkers, loaders, debuggers, and I/O driver routines.

The Evolution of O.S. (continue) Simple Batch Systems 1st batch system by General Motor (GM) in the mid 50’s on an IBM 701 to reduce the time wasted by scheduling and setup time the use of monitor Monitor loads programs one after another in a batch. Users have no direct access to computers. main memory divided into two parts (Figure 2.3) resident monitor user program area Machine time alternates between execution of user programs and execution of the monitor. Overhead: memory and machine time for monitor Interrupt Processing Device Drivers Job Sequencing Control Language Interpreter User Program Area Monitor Boundary

The Evolution of O.S. (continue.) The monitor / batch O.S. is simply a computer program. It relies on the ability of the processor to fetch instructions from various portions of main memory to alternately seize and relinquish control Hardware Features Memory Protection: User programs must not alter the monitor area User mode, kernel mode Timer: Prevent a single job from monopolizing the system Privileged Instructions: E.g., every I/O must be through the monitor Interrupts: Flexibility in relinquishing control to and regaining control from the user programs Job control language (JCL) a special type of language used to provide instructions to the monitor to setup jobs; predecessor of OS commands MS-DOS no memory protection no privileged I/O instructions

The Evolution of O.S. (continue..) Multi-programmed Batch Systems Multi-programming = Multi-tasking Figure 2.4 & 2.5 Table 2.1 & 2.2 Figure 2.6a & 2.6b Hardware Requirements I/O Interrupts and DMA (Dynamic Memory Access): With interrupt driven I/O or DMA, the processor can issue an I/O command for one job and proceed with the execution of another job while the I/O is carried out by the device controller. When I/O operation is completed, the processor is interrupted and control is passed to an interrupt handling program in the O.S. Software Requirements Memory management Job scheduling algorithm

The Evolution of O.S. (continue...) Time Sharing Systems the keyword is interactive the O.S. interleaving the execution of each program in a short burst, or quantum of computation. Batch Multiprogramming Vs. Time Sharing

The Evolution of O.S. (continue....) Compatible Time-Sharing System (CTSS) at MIT (in 60’s) 32 K main memory; 5 K monitor; time quantum = 0.2 sec, max 32 users Example JOB1: 15K JOB2: 20K JOB3: 5K JOB4: 10K refer to Figure 2.7 Simple => minimize the size of the monitor. A job was always loaded into the same location => no need for relocation at load time. Minimized disk activity. Problems Raised: Multiple jobs in memory => memory protection Multiple users in the system => file protection Contention for resources -- printers, mass storage media, and shared data (concurrency)

Major Achievements I --- Processes Processes Definitions A program in execution The “animated spirit” of a program That entity that can be assigned to and executed on a processor Three Major Lines of Development Multiprogramming Batch System (max. efficiency) Time Sharing System (responsiveness, multi-user support, program development, compilation and debugging, job execution) Real-time Transaction Processing System (1 or few applications, sharing resources, responsiveness) Main tool for all these three developments Interrupts Problems Improper synchronization Failed mutual exclusion Non-determinate program operations Deadlocks Implementation --- Figure 2.8

Major Achievements II --- Memory Management Objectives Users: modular programming and flexible use of data System Manager: efficient and orderly control of storage allocation Problems Process Isolation (independence, prevent interference) Automatic Allocation & Management (dynamic allocation, transparent, efficiency) Support of Modular Programming (create, destroy, & alter the size of modules dynamically) Protection and Access Control (sharing of memory needs protection & control) Long-term Storage Implementation --- Virtual Memory (Figure 2.9 & 2.10)

Major Achievements III --- Information Protection & Security Problems Obtain economic & market information (from government, and between competitive organizations) Information about individuals Intentional fraud through illegal access Invasion of individual rights (by intelligence community, government intrusion) Protection Policies (with increasing difficulties) No sharing Sharing originals of programs or data files Confined, or memoryless, sub-systems Controlled information dissemination (security levels) Implementation Access control Information flow control Certification

Major Achievements IV --- Scheduling & Resource Management Objectives Fairness Differential responsiveness Efficiency Operating Systems Design Hierarchy (Table 2.4) Section 2.4s --- 2.7 are very good sections for reading, especially Section 2.5 Major Achievements V --- System Structure Characteristics of Modern Operating Systems

CTSS: 32K, IBM OS/360: 1M instructions; Multis: 20M; Windows NT: 16M lines; Windows 2000: 32M lines Anomaly: (6) everything must undergo local secondary store – what about instructions in RAM? (4) Why do interrupts sit on top of procedures? (8) An extremely simple program has no data communication.

Multitasking; 32-bit; Object manager: processes, threads, synchronization objects for Windows Executive (kernel level)

GUI in kernel mode for speed; client/server computing Services and functions for distributed processing Service processes: event logger, accounting , etc.

Single processor, single type of file system, single file format

Key for success: open source code, free to everybody, high quality, stability, highly modular, easily configured for various applications; 20+% penetration in corporate world