• Non ci sono risultati.

Chapter 13

N/A
N/A
Protected

Academic year: 2021

Condividi "Chapter 13"

Copied!
35
0
0

Testo completo

(1)

Chapter 13

Operating Systems: An Overview

The Architecture of Computer Hardware and Systems Software:

An Information Technology Approach 3rd Edition, Irv Englander

John Wiley and Sons 2003

Wilson Wong, Bentley College

Linda Senne, Bentley College

(2)

Bare Bones Computer System

 Does not load instructions into main memory

 No user interface except for I/O routines provided with executing program

 Is idle when waiting for user input

 No facility to store, retrieve, or manipulate files

 No ability to control peripheral devices

(3)

Integrated Computer Environment

(4)

Operating System – Basic Services

 Programs that accept commands and requests from a user and a user’s

program

 Manages, loads, and executes programs

 Manages hardware resources of the computer

 Act as an interface between the user

(5)

Operating System – Additional Services

 Provides interfaces for the user and the user’s programs

 File support services

 I/O support services

 Means of starting the computer

 Bootstrapping or booting the computer

 Initial Program Load (IPL)

 Handles all interrupt processing

 Network services

 Provides tools and services for concurrent processing

(6)

Additional Services Required by Concurrent Processing

 Allocates resources such as memory, CPU time, and I/O devices to programs

 Protects users and programs from each other and provides for inter-program

communication

 Provides feedback to the system

administrators to permit performance

(7)

OS Parts

 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

 Applications

 Infrequently used programs, software tools, and commands

 Bootstrap program

 Diskless workstations or thin clients

 Programs, including the OS, are located on another computer on the

network

(8)

Simplified Diagram of Operating

System Services

(9)

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

(10)

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 C++ as opposed to assembly language

(11)

Single Job Processing

 Only one program is loaded into memory and executed

 Example: MS-DOS

 Memory resident components

 Command interface shell

 I/O routines, including BIOS

 File management system

 User program in control

(12)

OS Regains Control

 When program is finished control is transferred back to the command interpreter

 If the user’s program requests I/O

 The user wishes to stop the program execution via a keyboard interrupt

 System malfunctions

(13)

Single Job Processing

Disadvantages

 Lack of security

 Programs can overwrite the resident OS

 Programs can write directly to I/O devices

 System provides minimum memory management and no scheduling

 CPU is often idle awaiting the completion of

I/O operations

(14)
(15)

Concurrent Operations

 Multitasking (multiprogramming) vs.

multiprocessing which implies multiple CPUs

 Concurrent processing vs. simultaneous

processing

(16)

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

 Dispatching is the process of selecting

which program to run at any given

(17)

Sharing the CPU during I/O Breaks

 I/O represents a large percentage of a

typical program’s execution

(18)

Time-sharing the CPU

Time slicing

(19)

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

 System protection management

 Network management, communication support, and

communication interfaces

(20)

User Interface and

Command Execution Services

 Types of user interfaces

 CLI - Command Line Interface

 GUI - Graphical User Interface

 Menu environment

 Shell

 User interface and command processor that interacts with the kernel

 UNIX: C, Bourne and Korn shells

 Command Languages

 IBM Mainframes – JCL

 MS Windows – BAT files, Windows Scripting Host

(21)

File Management

 File - 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 management features

 Backup, emergency retrieval and recovery

 File compression

 Transparent network file access

 auditing

(22)

I/O Services and

Process Control Management

 I/O services

 Startup configuration

 Device drives that implement interrupts and provide other techniques for handling I/O

 Plug and play: hot swapping, hot plugging

 Process control management

 A process is an executing program

 A thread is an individually executable part of a process

 Interprocess messaging services

(23)

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 that are next to be loaded

 Deallocates a program’s memory space upon

(24)

Scheduling

 High-level scheduling

 Placed in queue based on level of priority and eventually executed

 Dispatching

 Actual selection of processes that will be executed at any given time

 Preemptive – uses clock interrupts

 Non-preemptive – program voluntarily gives up control

 Context switching

 Transfer control to the process that is being dispatched

 Nonpreemptive: program voluntarily gives up control

 Preemptive: uses clock interrupt for multitasking

 Processing requirements

(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

(26)

Network and Communication Services

 TCP-IP protocol suite

 Locate and connect to other computers

 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

 Interface between communication software

(27)

System Administration Support

 System configuration and setting group

configuration policies

 Adding and deleting users

 Modifying user privileges

 System security

 Files systems management

 Network administration

 Backups

 Software installations and upgrades

 OS installations

(system generation), patches, and upgrades

 System tuning and

optimization

(28)

Monolithic Kernel

 Drawback: stability and integrity

 Examples:

 UNIX

 Windows NT

(29)

Hierarchical

 Requests pass through

intermediate layers

 Examples

 Multics

 Data General

(30)

Microkernel

 Minimum essential functionality

 Client-server system on same system

 Clients request services from microkernel which

passes message onto appropriate server

(31)

Mach OS Kernel

 Microkernel implementation

 Includes

 Message passing

 Interrupt processing

 Virtual memory management

 Scheduling

 Basic set of I/O drivers

 Macintosh OS X, IBM AIX on RS/6000

(32)

Types of Operating Systems

 Single user, single tasking

 Single user, multitasking

 Multi-user, multitasking

 Distributed systems

 Processing power distributed among computers in a cluster or network

 Network servers

 Real-time systems

(33)

Bootstrapping

 Execution begins with bootstrap loader (mini-loader, IPL) stored in ROM

 Looks for OS program in a fixed location

 Loads OS into RAM

 Transfers control to starting location of OS

 Loader program in OS used to load and

execute user programs

(34)

Bootstrapping

 Cold vs.

warm boot

(does not

retest the

system)

(35)

Copyright 2003 John Wiley & Sons

All rights reserved. Reproduction or translation of this work beyond that permitted in Section 117 of the 1976 United States Copyright Act without express permission of the copyright owner is unlawful. Request for further information should be addressed to the permissions Department, John Wiley & Songs, Inc. The purchaser may make back-up copies for his/her own use only and not for distribution or resale. The Publisher assumes no responsibility for errors, omissions, or damages caused by the use of these programs or from the use of the

information contained herein.”

Riferimenti

Documenti correlati

(interleaving) of atomic actions selected once a time from the various concurrent processes (there are some analogies with the management of concurrent transations in database

Fig. 8.7 shows the alternatives we consider for the master/worker template after the Kuchen paper. The Figure actually shows alternative implementation activity graphs rather

[r]

z A local “naming” and “discovery” service, to enable services to share Java objects (attributes). {

The Architecture of Computer Hardware, Systems Software & Networking:.. An Information Technology Approach 4th Edition,

This means that the expert surgeon will be capable of entering the operating room as a “robotic” surgeon and performing surgical actions, assisting the team there (Figure 13.3)..

Both bilobed placentas and succenturiate lobes are associated with multi- parity, antenatal bleeding, placenta previa, and retained placental tissue.. Succenturiate Lobes

Oblique multiplanar reconstructions performed on the workstation and surface-rendered images without segmentation are reviewed (Table 13.3 and Figure 13.3.1 and