OPERATING SYSTEMS STRUCTURES



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

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

Chapter 3 Operating-System Structures

CS3600 SYSTEMS AND NETWORKS

Lecture 1 Operating System Overview

Chapter 3: Operating-System Structures. Common System Components

Operating System Structures

Chapter 3: Operating-System Structures. System Components Operating System Services System Calls System Programs System Structure Virtual Machines

Operating System Structures

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

Operating System Components and Services

The Plan Today... System Calls and API's Basics of OS design Virtual Machines

Operating System Components

Chapter 2 System Structures

OPERATING SYSTEM SERVICES

Operating Systems 4 th Class

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

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

CHAPTER 15: Operating Systems: An Overview

ELEC 377. Operating Systems. Week 1 Class 3

Example of Standard API

Operating system Dr. Shroouq J.

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

Common Operating-System Components

OS Concepts and structure

Introduction to Operating Systems. Perspective of the Computer. System Software. Indiana University Chen Yu

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

Introduction. What is an Operating System?

Operating- System Structures

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

Operating Systems OBJECTIVES 7.1 DEFINITION. Chapter 7. Note:

How To Understand The History Of An Operating System

CS420: Operating Systems OS Services & System Calls

System Structures. Services Interface Structure

How To Write A Windows Operating System (Windows) (For Linux) (Windows 2) (Programming) (Operating System) (Permanent) (Powerbook) (Unix) (Amd64) (Win2) (X

Operating System Overview. Otto J. Anshus

Computers: Tools for an Information Age

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

Operating System Organization. Purpose of an OS

Operating System Structure

Overview of Operating Systems Instructor: Dr. Tongping Liu

Computer-System Architecture

Tuning U2 Databases on Windows. Nik Kesic, Lead Technical Support

x86 ISA Modifications to support Virtual Machines

1. Computer System Structure and Components

Components of a Computer System

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

OPERATING SYSTEMS Software in the Background. Chapter 2

Windows NT. Chapter 11 Case Study 2: Windows Windows 2000 (2) Windows 2000 (1) Different versions of Windows 2000

1/5/2013. Technology in Action

Have both hardware and software. Want to hide the details from the programmer (user).

Obj: Sec 1.0, to describe the relationship between hardware and software HW: Read p.2 9. Do Now: Name 3 parts of the computer.

Computer Systems and Networks. ECPE 170 Jeff Shafer University of the Pacific. Linux Basics

Full and Para Virtualization

Chapter 1: Introduction. Chapter 1: Introduction. Operating System Concepts, 7th Edition. Objectives

CSC 2405: Computer Systems II

Chapter 3. Operating Systems

Principles of Operating Systems CS 446/646

Operating Systems and Networks

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

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

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

Outline: Operating Systems

Chapter 11 I/O Management and Disk Scheduling

CPS221 Lecture: Operating System Structure; Virtual Machines

Operating Systems: Basic Concepts and History

Introduction. System Calls

Devices and Device Controllers

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

OPERATING SYSTEMS FILE SYSTEMS

Uses for Virtual Machines. Virtual Machines. There are several uses for virtual machines:

Buffer Management 5. Buffer 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

The PC Boot Process - Windows XP.

Operating System Software

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

OPERATING SYSTEMS SCHEDULING

Operating Systems Overview

Distributed File Systems

Multi-core Programming System Overview

SYSTEM ecos Embedded Configurable Operating System

Virtualization. Explain how today s virtualization movement is actually a reinvention

Virtualization. Types of Interfaces

Chapter 6, The Operating System Machine Level

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

I/O Device and Drivers

Virtual Machines. COMP 3361: Operating Systems I Winter

Chapter 2: OS Overview

Operating Systems Prof. Ashok K Agrawala

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

CS222: Systems Programming

Red Hat Linux Internals

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

Chapter 15 Windows Operating Systems

ECE 677: Distributed Computing Systems. Distributed Operating Systems: Design Issues Case Studies

Virtualization in Linux KVM + QEMU

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

Lesson 06: Basics of Software Development (W02D2

Software: Systems and Application Software

Components of a Computing System. What is an Operating System? Resources. Abstract Resources. Goals of an OS. System Software

Transcription:

S Jerry Breecher 2: OS Structures 1

Structures What Is In This Chapter? System Components System Calls How Components Fit Together Virtual Machine 2: OS Structures 2

SYSTEM COMPONENTS These are the pieces of the system we ll be looking at: Process Management Main Memory Management File Management I/O System Management Secondary Management Networking Protection System Command-Interpreter System 2: OS Structures 3

SYSTEM COMPONENTS PROCESS MANAGEMENT A process is a program in execution: (A program is passive, a process active.) A process has resources (CPU time, files) and attributes that must be managed. Management of processes includes: Process Scheduling (priority, time management,... ) Creation/termination Block/Unblock (suspension/resumption ) Synchronization Communication Deadlock handling Debugging 2: OS Structures 4

MAIN MEMORY MANAGEMENT Allocation/de-allocation for processes, files, I/O. Maintenance of several processes at a time Keep track of who's using what memory Movement of process memory to/from secondary storage. System Components FILE MANAGEMENT A file is a collection of related information defined by its creator. Commonly, files represent programs (both source and object forms) and data. The operating system is responsible for the following activities in connections with file management: File creation and deletion. Directory creation and deletion. Support of primitives for manipulating files and directories. Mapping files onto secondary storage. File backup on stable (nonvolatile) storage media. 2: OS Structures 5

System Components I/O MANAGEMENT Buffer caching system Generic device driver code Drivers for each device - translate read/write requests into disk position commands. SECONDARY STORAGE MANAGEMENT Disks, tapes, optical,... Free space management ( paging/swapping ) Storage allocation ( what data goes where on disk ) Disk scheduling 2: OS Structures 6

System Components NETWORKING Communication system between distributed processors. Getting information about files/processes/etc. on a remote machine. Can use either a message passing or a shared memory model. PROTECTION Of files, memory, CPU, etc. Means controlling of access Depends on the attributes of the file and user How Do These All Fit Together? In essence, they all provide services for each other. SYSTEM PROGRAMS Command Interpreters -- Program that accepts control statements (shell, GUI interface, etc.) Compilers/linkers Communications (ftp, telnet, etc.) 2: OS Structures 7

System Tailoring Modifying the Operating System program for a particular machine. The goal is to include all the necessary pieces, but not too many extra ones. Typically a System can support many possible devices, but any one installation has only a few of these possibilities. Plug and play allows for detection of devices and automatic inclusion of the code (drivers) necessary to drive these devices. A sysgen is usually a link of many OS routines/modules in order to produce an executable containing the code to run the drivers. 2: OS Structures 8

System Calls A System Call is the main way a user program interacts with the Operating System. X register X: parameters for call load address X system call 13 use parameters from table X code for system call 13 user program operating system Figure 2.8 Figure 3.1 2: OS Structures 9

System Calls HOW A SYSTEM CALL WORKS Obtain access to system space Do parameter validation System resource collection ( locks on structures ) Ask device/system for requested item Suspend waiting for device Interrupt makes this thread ready to run Wrap-up Return to user There are 11 (or more) steps in making the system call Linux API 2: OS Structures 10

System Calls Example of Windows API Consider the ReadFile() function in the Win32 API a function for reading from a file. A description of the parameters passed to ReadFile() HANDLE file the file to be read LPVOID buffer a buffer where the data will be read into and written from DWORD bytestoread the number of bytes to be read into the buffer LPDWORD bytesread the number of bytes read during the last read LPOVERLAPPED ovl indicates if overlapped I/O is being used 2: OS Structures 11

System Calls Two ways of passing data between programs. Msg Passing Shared Memory 2: OS Structures 12

System Calls These are examples of various system calls. 2: OS Structures 13

A SIMPLE STRUCTURE: How An Operating System Is Put Together Example of MS-DOS. Application Programming Resident System Programming Note how all layers can touch the hardware. Bad News!! MS-DOS Drivers ROM - BIOS Device Drivers 2: OS Structures 14

How An Operating System Is Put Together A LAYERED STRUCTURE: Example of Windows 2000. System Services Windows MGR & GDI Graphics Device Drivers VM Manager Process Manager Windows 2000 Kernel Security Reference Monitor IO Manager Hardware Abstraction Layer (HAL) 2: OS Structures 15

A LAYERED STRUCTURE: Example of UNIX. How An Operating System Is Put Together 2: OS Structures 16

Virtual Machine In a Virtual Machine - each process "seems" to execute on its own processor with its own memory, devices, etc. The resources of the physical machine are shared. Virtual devices are sliced out of the physical ones. Virtual disks are subsets of physical ones. Useful for running different OS simultaneously on the same machine. Protection is excellent, but no sharing possible. Virtual privileged instructions are trapped. Virtual User Physical User Virtual Machine Monitor Mode Physical Machine 2: OS Structures 17

Virtual Machine 2: OS Structures 18

Virtual Machine Example of MS-DOS on top of Windows 2000. DOS APPLICATION BIOS DRIVERS Windows 2000 Physical User Physical Machine 2: OS Structures 19

Virtual Machine Example of Java Virtual Machine The Java Virtual Machine allows Java code to be portable between various hardware and OS platforms. 2: OS Structures 20

WRAPUP We ve completed our second overview of an Operating System this at the level of a high flying plane. We ve looked at the basic building blocks of an operating system processes, memory management, file systems, and seen how they all connect together. Now we ll get into the nitty-gritty, spending considerable time on each of these pieces. 2: OS Structures 21