Multiprogramming. IT 3123 Hardware and Software Concepts. Program Dispatching. Multiprogramming. Program Dispatching. Program Dispatching



Similar documents
CHAPTER 15: Operating Systems: An Overview

Chapter 3. Operating Systems

Chapter 2 System Structures

Computers: Tools for an Information Age

Kernel. What is an Operating System? Systems Software and Application Software. The core of an OS is called kernel, which. Module 9: Operating Systems

How To Understand The History Of An Operating System

OPERATING SYSTEM SERVICES

Chapter 5: System Software: Operating Systems and Utility Programs

Operating Systems OBJECTIVES 7.1 DEFINITION. Chapter 7. Note:

theguard! ApplicationManager System Windows Data Collector

Unit 4 Objectives. System Software. Component 4: Introduction to Information and Computer Science. Unit 4: Application and System Software Lecture 2

Chapter 8 Objectives. Chapter 8 Operating Systems and Utility Programs. Operating Systems. Operating Systems. Operating Systems.

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture

Chapter 4. System Software. What You Will Learn... Computers Are Your Future. System Software. What You Will Learn... Starting the Computer

Chapter 3 Operating-System Structures

Example of Standard API

Chapter 3: Operating Systems

Click to view Web Link, click Chapter 8, Click Web Link from left navigation, then click BIOS below Chapter 8 p. 395 Fig. 8-4.

OPERATING SYSTEMS Software in the Background. Chapter 2

ELEC 377. Operating Systems. Week 1 Class 3

Chapter Contents. Operating System Activities. Operating System Basics. Operating System Activities. Operating System Activities 25/03/2014

Operating System Structures

Chapter 3: Operating-System Structures. Common System Components

Operating Systems. and Windows

OPERATING SYSTEMS STRUCTURES

Operating Systems 4 th Class

Chapter 2: OS Overview

Operating System Components and Services

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

Components of a Computer System

Technology in Action. Alan Evans Kendall Martin Mary Anne Poatsy. Eleventh Edition. Copyright 2015 Pearson Education, Inc.

Process Description and Control william stallings, maurizio pizzonia - sistemi operativi

Operating System Today s Operating Systems File Basics File Management Application Software

Cisco Networking Academy Program Curriculum Scope & Sequence. Fundamentals of UNIX version 2.0 (July, 2002)

Lecture 6: Operating Systems and Utility Programs

4.1 Introduction 4.2 Explain the purpose of an operating system Describe characteristics of modern operating systems Control Hardware Access

Operating System Software

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.

After studying this lesson, you will have a clear understanding of, what an Operating System is. functions of an Operating System

Introduction. What is an Operating System?

Chapter 5: Fundamental Operating Systems

CSE 120 Principles of Operating Systems. Modules, Interfaces, Structure

Page 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems

Operating System Organization. Purpose of an OS

1/5/2013. Technology in Action

Lesson Objectives. To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization

Upon completion of this chapter, you will able to answer the following questions:

Outline: Operating Systems

System Structures. Services Interface Structure

EUCIP IT Administrator - Module 2 Operating Systems Syllabus Version 3.0

CS420: Operating Systems OS Services & System Calls

Learning Objectives. Chapter 1: Networking with Microsoft Windows 2000 Server. Basic Network Concepts. Learning Objectives (continued)

OS Concepts and structure

ESM s management across multi-platforms eliminates the need for various account managers.

UNISOL SysAdmin. SysAdmin helps systems administrators manage their UNIX systems and networks more effectively.

Chapter 8 Operating Systems and Utility Programs

IT Essentials v4.1 LI Upgrade and configure storage devices and hard drives. IT Essentials v4.1 LI Windows OS directory structures

Chapter 15 Windows Operating Systems

HP-UX System and Network Administration for Experienced UNIX System Administrators Course Summary

Operating System Structures

Installing a Second Operating System

Networking Operating Systems (CO32010)

EUCIP - IT Administrator. Module 2 Operating Systems. Version 2.0

Lectures 9 Advanced Operating Systems Fundamental Security. Computer Systems Administration TE2003

USB 2.0 Flash Drive User Manual

Kernel Types System Calls. Operating Systems. Autumn 2013 CS4023

How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself

Chapter 4. Operating Systems and File Management

Operating Systems. Notice that, before you can run programs that you write in JavaScript, you need to jump through a few hoops first

Operating System Tutorial

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 2 Introducing Operating Systems

Operating System Structure

LSN 10 Linux Overview

System Software. 2.1 The Operating System (OS) %%describe the characteristics of different types

Module 5 Introduction to Processes and Controls

Operating Systems Overview As we have learned in working model of a computer we require a software system to control all the equipment that are

Operating Systems: Basic Concepts and History

How To Understand And Understand An Operating System In C Programming

Symantec NetBackup Backup, Archive, and Restore Getting Started Guide. Release 7.5

Star System Deitel & Associates, Inc. All rights reserved.

Chapter 5 System Software: Operating Systems and Utility Programs

CS3600 SYSTEMS AND NETWORKS

Using Symantec NetBackup with Symantec Security Information Manager 4.5

Operating system Dr. Shroouq J.

CHAPTER 17: File Management

CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study

Lecture 25 Symbian OS

Operating System Fundamentals Robert Power & Robert Ford

Lesson 06: Basics of Software Development (W02D2

Remote Desktop Administration

Chapter 11 I/O Management and Disk Scheduling

IFSM 310 Software and Hardware Concepts. A+ OS Domain 2.0. A+ Demo. Installing Windows XP. Installation, Configuration, and Upgrading.

ERserver. iseries. Work management

NetBackup Backup, Archive, and Restore Getting Started Guide

Lecture 1 Operating System Overview

Overview of Operating Systems Instructor: Dr. Tongping Liu

Frequently Asked Questions

Operating Systems Overview

Transcription:

IT 3123 Hardware and Software Concepts Operating Systems II October 26 Multiprogramming Two or more application programs in memory. Consider one CPU and more than one program. This can be generalized to more than one CPU. Notice: This session is being recorded. Copyright 2005 by Bob Brown Multiprogramming A program may be in one of three states: Running: The program s instructions are being executed by the CPU I/O Wait: The program has requested I/O services from the operating system, and the I/O has not completed Ready: The program is not waiting for anything, but some other program is using the CPU. Program Dispatching The operating system keeps three queues: Running (one program per CPU) Ready Waiting Program Dispatching Programs in the running state are moved to: Waiting if they request I/O Ready if their time slice expires Programs in the waiting queue are moved to the ready queue when I/O completes Programs in the ready queue are moved to running when a CPU is available. Program Dispatching Running I/O Request Time Expired Waiting CPU Available Ready I/O Complete

Program Dispatching Running I/O Request Time Expired Waiting CPU Available Ready I/O Complete OS loads new program Program ends Priority Scheduling Programs can have priority attributes The same three queues (running, ready, waiting) are used Higher priority programs go to the front of the line. (Or there are several ready queues.) Problem: How to prevent a low-priority process from being starved of CPU time. (One way is to increase its priority if it has been waiting a long time.) Context Switching Context switching: changing what program is running on a CPU Save state of running program (registers, program counter) Establish state of new program Load program counter with starting address. I/O Bound and CPU Bound I/O bound: a program that requires mostly I/O resources; the other processes are not using all the CPU, so the limit on speed is I/O; generally waiting. Give I-O bound programs high priority for the CPU CPU bound: a program that requires a lot of CPU time and little I/O; generally ready or running. Give CPU-bound programs lower priority for the CPU. Operating System Services Command processor File management system I/O control system Network management, communication support, and communication interfaces System Administration Operating System Services Process control management and interprocess communication Memory management System protection management

File Management File a named logical unit of storage Basic file management system provides Directory structures for each I/O device Tools to copy and move 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 Facilities Backup, emergency retrieval and recovery File compression Transparent network file access Auditing Journaling (keeping a separate record of updates) I/O Services Startup configuration Device drivers that implement interrupts and provide other techniques for handling I/O Optimizes completion of I/O tasks Plug and play device recognition Hot swapping, hot plugging Process Control A process is an executing program A thread is an individually executable part of a process Inter-process messaging services Example: a pipe in Unix or DOS that is a temporary software connection between two programs or commands Memory Management Identifies programs loaded into memory Allocates space to programs Recovers space released by programs Explicit release End of program Prevents programs from reading and writing memory outside of their allocated space Security Management Protect OS from users Protect users from other users Prevent unauthorized entry to system Prevent unauthorized system use by authorized users

Network Services Interface between communication software and OS I/O control system that provides network access Locate and connect to other computers Access files, I/O devices, and programs from remote systems Support distributed processing System Administration System configuration and setting group configuration policies Adding and deleting users,modifying user privileges File system management, backups Network administration Software installations and upgrades OS installations, patches, and upgrades System tuning and optimization Operating System Organization Monolithic Hierarchical, layered Microkernel Monolithic Kernel Hierarchical Microkernel

Bootstrapping Execution begins with bootstrap loader (mini-loader, IPL) stored in ROM Looks for OS program in a fixed location Loads OS loader (small) into RAM Transfers control to starting location of OS loader Loader loads the rest of the OS OS loads and executes user programs User Interface Help the user use the computer system productively Provide consistent user interface services to application programs to lower learning curves and increase productivity Choice of user interface depends on the kind of user: Writing programs vs. running applications Server computer vs. single-user computer User Functions Program execution File commands Mount and un-mount devices Printer spooling Security Inter-user communication System Status Program Services DCOM, CORBA, Remote Procedure Call (RPC) Interface Design CLI - Command Line Interface Batch System Commands Menu-Driven Interfaces GUI - Graphical User Interface Web Interface Command Line Interface command <operand1> <operand2> <switch1> <switch2> Operands Positional: must be in a particular order Keyword: names and values, or names only; switches Advantages More flexible and powerful Faster for experienced users Can combine commands Command Line Interfaces

Command Languages Provide a mechanism to combine sequences of commands together. These pseudo-programs are known as scripts or batch files. Startup files: OS configuration, user preferences Now often XML encapsulated data Features of Command Languages Can accept input from the user and can output messages to I/O devices Provide ability to create and manipulate variables Include the ability to branch and loop Ability to specify arguments to the program command and to transfer those arguments to variables within the program MS-DOS Batch File UNIX Shell Script Menu-Driven Interface No need to memorize commands All available commands are listed Menus can be nested Low data requirements Slow and painful for experienced users Still used in many ATM and point-of-sale systems Menu Driven Interface

Windows Interfaces Also known as Graphical User Interfaces (GUIs) WIMP: windows, icons, mice, pointers Mouse-driven and icon-based Windows Are allocated to the use of a particular program or process Contain a title bar, menu bar, and widgets GUI Interface Windows XP GUI Interface Linux KDE GUI Interface - MacIntosh GUI Advantages Easy to learn and use Little training Amenable to multiprogramming Disadvantages Harder to implement More HW/SW requirements Requires lots of memory SW is complex and difficult to write GUI vs. CLI CLI Advantages More flexible and powerful Faster for experienced users Can combine commands Scripting is easy Disadvantages More difficult to learn and use Multiprogramming is awkward X-Windows

Docucentric Interface Focus on the document rather than the application being executed Expand role of OS by moving capabilities from the application to system services Example: click on document to run program Effort to assure that every application program responds in similar ways to user actions. Implemented in Windows XP by file associations using file extensions. Questions