Chapter 1 Introduction to Operating System Part 5

Slides:



Advertisements
Similar presentations
Operating Systems Components of OS
Advertisements

Chap 2 System Structures.
SLC/Ver1.0/OS CONCEPTS/Oct'991INTRODUCTION What is an Operating System? Operating Structure -System Components -OS Services -System Calls & Programs -System.
Operating System Structure
Operating-System Structures
Operating-System Structures 1. Operating-System System Components 2. Operating System Services 3. System Calls 4. System Structure 5. Virtual Machines.
3.1 Silberschatz, Galvin and Gagne ©2003 Operating System Concepts with Java Chapter 3: Operating-System Structures System Components Operating System.
1/21/2008CSCI 315 Operating Systems Design1 Operating System Structures Notice: The slides for this lecture have been largely based on those accompanying.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
1/28/2004CSCI 315 Operating Systems Design1 Operating System Structures & Processes Notice: The slides for this lecture have been largely based on those.
1/26/2004CSCI 315 Operating Systems Design1 Operating System Structures Notice: The slides for this lecture have been largely based on those accompanying.
Cs238 Lecture 3 Operating System Structures Dr. Alan R. Davis.
Common System Components
Os31 Chapter 3 Operating-System Structures. os32 Outlines System Components Operating System Services System Calls System Programs System Structure Virtual.
Silberschatz, Galvin and Gagne  Operating System Concepts Common System Components Process Management Main Memory Management File Management.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System.
Abhinav Kamra Computer Science, Columbia University 3.1 Operating System Concepts Silberschatz, Galvin and Gagne  2002 Chapter 3: Operating-System Structures.
System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Silberschatz, Galvin and Gagne  Applied Operating System Concepts Chapter 3: Operating-System Structures System Components OS Services System.
CHAPTER 2 OPERATING SYSTEM OVERVIEW 1. Operating System Operating System Definition A program that controls the execution of application programs and.
Module 1.1: Operating-System Structures
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System.
Chapter 2: Operating-System Structures. 2.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 14, 2005 Operating System.
Introduction to Operating Systems Chapter 1. cs431 -cotter2 Lecture Objectives Understand the relationship between computing hardware, operating system,
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 6 System Calls OS System.
Silberschatz and Galvin  Operating System Concepts Module 3: Operating-System Structures System Components Operating System Services System Calls.
3.1 Silberschatz, Galvin and Gagne ©2003 Operating System Concepts with Java Chapter 3: Operating-System Structures System Components Operating System.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Silberschatz, Galvin, and Gagne  Applied Operating System Concepts Module 3: Operating-System Structures System Components Operating System Services.
3.1 Operating System Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual.
Processes Introduction to Operating Systems: Module 3.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
1 CSE Department MAITSandeep Tayal Operating-System Structures System Components Operating System Services System Calls System Programs System Structure.
UNIX and Shell Programming
Silberschatz, Galvin and Gagne  Operating System Concepts UNIT II Operating System Services.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 3 Operating-System Structures Slide 1 Chapter 3 Operating-System Structures.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Silberschatz, Galvin, and Gagne  Applied Operating System Concepts Module 3: Operating-System Structures System Components Operating System Services.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
System Components Operating System Services System Calls.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
1.2 Operating System Structure. 1. Monolithic System The earliest and most common OS architecture. Every component of OS contained in the kernel and can.
Module 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System.
Chapter 3: Operating-System Structures
Chapter 3: Operating-System Structures
Introduction to Operating Systems Concepts
OPERATING SYSTEM CONCEPTS AND PRACTISE
Module 3: Operating-System Structures
Operating System Concepts
Operating System Structure
Credits: 3 CIE: 50 Marks SEE:100 Marks Lab: Embedded and IOT Lab
Operating System Structure
Lecture 4: Operating System Structures
Operating System Structure
Recap OS manages and arbitrates resources
Chapter 2: System Structures
Chapter 3: Operating-System Structures
Mid Term review CSC345.
Basic Concepts Protection: Security:
Chapter 2: Operating-System Structures
Introduction to Operating Systems
Outline Chapter 2 (cont) OS Design OS structure
Chapter 2: Operating-System Structures
Chapter 2: Operating-System Structures
System calls….. C-program->POSIX call
Chapter 2: Operating-System Structures
III. Operating System Structures
Presentation transcript:

Chapter 1 Introduction to Operating System Part 5

Chapter Summary At the end of this chapter, student will be able to: Describe the following operating system structure: i. Monolithic system ii. Layered system iii. Virtual machines iv. Client-server model Identify three major subsystem of operating system: i. Process Management ii. File Management iii. Memory Management System calls

OPERATING SYSTEM STRUCTURE

Monolithic System This approach well known as “The Big Mess” - there is no structure. All kernel routines are together, any can call any A system call interface (main program, sys calls, utility functions) Examples: Linux, BSD Unix, Windows Pros Shared kernel space Good performance Cons No information hiding Inflexible Chaotic Difficult to understand

Layered System The operating system is divided into a number of layers (levels), each built on top of lower layers. The bottom layer (layer 0), is the hardware; the highest (layer N) is the user interface. With modularity, layers are selected such that each uses functions (operations) and services of only lower-level layers. Hiding information at each layer E.g. level 1 is processor allocation, level 1 memory management, level 2 communication, level 3 I/O, etc. Examples: THE System (6 layers), MS-DOS (4 layers) Pros Layered abstraction Separation of concerns, elegance Cons Protection, boundary crossings

Virtual Machines (VM) A virtual machine takes the layered approach to its logical conclusion. It treats hardware and the operating system kernel as though they were all hardware. A virtual machine provides an interface identical to the underlying bare hardware. The operating system creates the illusion of multiple processes, each executing on its own processor with its own (virtual) memory. The resources of the physical computer are shared to create the virtual machines. – CPU scheduling can create the appearance that users have their own processor. – Spooling and a file system can provide virtual card readers and virtual line printers. – A normal user time-sharing terminal serves as the virtual machine operator’s console.

Advantages/ disadvantages: The virtual-machine concept provides complete protection of system resources since each virtual machine is isolated from all other virtual machines. This isolation, however, permits no direct sharing of resources. A virtual-machine system is a perfect vehicle for operating systems research and development. System development is done on the virtual machine, instead of on a physical machine and so does not disrupt normal system operation. The virtual machine concept is difficult to implement due to the effort required to provide an exact duplicate to the underlying machine.

Client-server model or microkernel The advent of new concepts in OS design, microkernel is aimed at migrating services of an operating system out of monolithic kernel into user level process. Divide the OS into several processes, each which implements a single set of services - Example: I/O servers, memory server, process server Each server runs in user mode, provide services to the requested client. Client: Another operating system component or application program, request service by sending message to server An OS kernel (microkernel) running in kernel mode deliver message to the server. The server perform operation, and microkernel delivers the result to client in another message.

Client-server model or microkernel Components above microkernel communicate directly with one another, although using message that pass through the microkernel itself. Microkernel validate messages, passes them between the components and grants access to hardware. Example: C-DAC microkernel, Mach, Windows NT, Chorus

Client-server model or microkernel

Example: Winowds NT Various applications (Win32, OS/2, and POSIX) run in user space. Server for each application runs in user space. Message passing between client application programs and application servers runs in kernel space.

MAJOR SUBSYTEM OF OPERATING SYSTEM

1) Process Management A process is a program in execution. A process needs certain resources, including CPU time, memory, files, and I/O devices, to accomplish its task. The operating system is responsible for the following activities in connection with process management. Process creation and deletion. process suspension and resumption. Provision of mechanisms for: - process synchronization - process communication

2) File Management Computers can store information in different physical media (e.g., disks, tapes). OS provides a logical (an abstract) view of information storage, i.e., define a logical storage unit called the file. OS maps files into physical media, and accesses these files via the storage devices such as disk drive. A file is a collection of related information (program or data) defined by its creator. OS is responsible for all file management activities: 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.

3) Memory Management Memory is a large array of words or bytes, each with its own address. It is a repository of quickly accessible data shared by the CPU and I/O devices. Main memory is a volatile storage device. It loses its contents in the case of system failure. The operating system is responsible for the following activities in connections with memory management: Keep track of which parts of memory are currently being used and by whom. Decide which processes to load when memory space becomes available. Allocate and reallocate memory space as needed.

SYSTEM CALLS

Definition System calls provide the interface between a running program and the operating system. – Generally available as assembly-language instructions. – Languages defined to replace assembly language for systems programming allow system calls to be made directly (e.g., C. Bliss, PL/360). Are like procedure calls – take parameters – calling routine waits for response Permit application programs to access protected resources

Definition Three general methods are used to pass parameters between a running program and the operating system. Simplest: pass the parameters in registers but number of parameter registers is limited. Parameters stored in a block in memory, and address of block passed as a parameter in a register. This approach taken by Linux and Solaris. Parameters pushed onto the stack by the program and popped off the stack by the operating system

The kernel uses system calls such as 'read' and 'write' to provide an abstraction of your hardware.

Types 1) Process management load, execute, end, abort, create, terminate, wait ... memory allocation and reallocation File management Common systems calls dealing with files and directories: create file, delete file open, close read, write, reposition get file attributes, set file attributes

Types 3) Device Management Similarity between files and I/O devices results in similar device system calls (some OS even merges two into a combined file device structure): request device, release device read, write, reposition get device attributes, set device attributes logically attach or detach devices 4) Information Maintenance System calls for transferring information between the user program and OS: get time or date, set time or date get system data, set system data get process, file, or device attributes set process, file or device attributes

Types 5) Communication System calls for transferring information between the user program and OS: create, delete communication connection send, receive message transfer status information attach or detach remote devices 6) Signaling Use signals to keep track of events which must follow the same path of execution as depicted in figure below regardless of their type being synchronous or asynchronous.