System Components ● There are three main protected modules of the System  The Hardware Abstraction Layer ● A virtual machine to configure all devices.

Slides:



Advertisements
Similar presentations
Threads, SMP, and Microkernels
Advertisements

Slide 3-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 3 3 Operating System Organization.
Chorus and other Microkernels Presented by: Jonathan Tanner and Brian Doyle Articles By: Jon Udell Peter D. Varhol Dick Pountain.
Case study 1 Windows 7.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
1 OS Structure, Processes & Process Management. 2 Recap OS functions  Coordinator  Protection  Communication  Resource management  Service provider.
Computer Systems/Operating Systems - Class 8
3: OS Structures 1 OPERATING SYSTEM STRUCTURES PROCESS MANAGEMENT A process is a program in execution: (A program is passive, a process active.) A process.
1 Threads, SMP, and Microkernels Chapter 4. 2 Process: Some Info. Motivation for threads! Two fundamental aspects of a “process”: Resource ownership Scheduling.
OS Fall ’ 02 Introduction Operating Systems Fall 2002.
Page 1 Processes and Threads Chapter Processes 2.2 Threads 2.3 Interprocess communication 2.4 Classical IPC problems 2.5 Scheduling.
INTRODUCTION OS/2 was initially designed to extend the capabilities of DOS by IBM and Microsoft Corporations. To create a single industry-standard operating.
Case Study: Windows 2000 Part I Will Richards CPSC 550 Spring 2001.
Introduction to Operating Systems – Windows process and thread management In this lecture we will cover Threads and processes in Windows Thread priority.
2: OS Structures 1 Jerry Breecher OPERATING SYSTEMS STRUCTURES.
Home: Phones OFF Please Unix Kernel Parminder Singh Kang Home:
OS Spring’03 Introduction Operating Systems Spring 2003.
Chapter 11 Operating Systems
CS-3013 & CS-502, Summer 2006 Windows XP1 CS-502 Operating Systems Slides excerpted from Silbershatz, Ch. 22.
CSS430 Case Study (Win XP) These slides were prepared by Professor Kelvin Sung based on the Applied OSC textbook slides (Silberschatz, Galvin, and Gagne).
Introduction to NT Operating system
Chapter 6 Implementing Processes, Threads, and Resources.
1 I/O Management in Representative Operating Systems.
1 Threads Chapter 4 Reading: 4.1,4.4, Process Characteristics l Unit of resource ownership - process is allocated: n a virtual address space to.
Chapter 8 Windows Outline Programming Windows 2000 System structure Processes and threads in Windows 2000 Memory management The Windows 2000 file.
Ceng Operating Systems
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 11 Case Study 2: Windows Vista Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 2: System Structures.
1 Operating System Overview Chapter 2 Advanced Operating System.
1 Lecture 4: Threads Operating System Fall Contents Overview: Processes & Threads Benefits of Threads Thread State and Operations User Thread.
Page 110/1/2015 CSE 30341: Operating Systems Principles Windows XP  32-bit preemptive multitasking operating system for Intel microprocessors  Key goals.
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
April 2000Dr Milan Simic1 Network Operating Systems Windows NT.
Chapter 2 Operating System Overview
Windows 2000 Course Summary Computing Department, Lancaster University, UK.
Processes and Threads Processes have two characteristics: – Resource ownership - process includes a virtual address space to hold the process image – Scheduling/execution.
CE Operating Systems Lecture 11 Windows – Object manager and process management.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
30 October Agenda for Today Introduction and purpose of the course Introduction and purpose of the course Organization of a computer system Organization.
Ihr Logo Operating Systems Internals & Design Principles Fifth Edition William Stallings Chapter 2 (Part II) Operating System Overview.
LINUX System : Lecture 7 Bong-Soo Sohn Lecture notes acknowledgement : The design of UNIX Operating System.
1 Threads, SMP, and Microkernels Chapter 4. 2 Process Resource ownership: process includes a virtual address space to hold the process image (fig 3.16)
Operating Systems Lecture November 2015© Copyright Virtual University of Pakistan 2 Agenda for Today Review of previous lecture Hardware (I/O, memory,
Processes Introduction to Operating Systems: Module 3.
Scott Ferguson Section 1
1 Threads, SMP, and Microkernels Chapter Multithreading Operating system supports multiple threads of execution within a single process MS-DOS.
Lecture 5: Threads process as a unit of scheduling and a unit of resource allocation processes vs. threads what to program with threads why use threads.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Chapter 2 Operating System Overview Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Operating Systems Unit 2: – Process Context switch Interrupt Interprocess communication – Thread Thread models Operating Systems.
Threads, SMP, and Microkernels Chapter 4. Processes and Threads Operating systems use processes for two purposes - Resource allocation and resource ownership.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Introduction to Operating Systems Concepts
Chapter 3: Windows7 Part 5.
Operating Systems: A Modern Perspective, Chapter 6
KERNEL ARCHITECTURE.
Chapter 3: Windows7 Part 2.
Chapter 3: Windows7 Part 5.
Threads, SMP, and Microkernels
Chapter 3: Windows7 Part 2.
Lecture 4- Threads, SMP, and Microkernels
Operating Systems Lecture 1.
LINUX System : Lecture 7 Lecture notes acknowledgement : The design of UNIX Operating System.
Windows NT History Design Principles System Components
Chapter 2 Processes and Threads 2.1 Processes 2.2 Threads
Outline Operating System Organization Operating System Examples
Michael Blinn Ben Hejl Jane McHugh Matthew VanMater
In Today’s Class.. General Kernel Responsibilities Kernel Organization
Presentation transcript:

System Components ● There are three main protected modules of the System  The Hardware Abstraction Layer ● A virtual machine to configure all devices and hardware to use one kernel and one set of device drivers  The Kernel  The Executive ● Five User Mode Subsystems

Kernel ● Operates by using a set of kernel objects whose attributes store kernel data and whose methods perform kernel activities ● Kernel Dispatcher – the object type of all kernel calls  remain in memory  never pre-empted  Software Interrupts

First and Second Kernel Responsibilities ● Thread Scheduling  2 classes, variable and real time ● variable – contains threads with priorities from 0 to 15 ● real time – contains threads with priorities from 16 to 31 ● Interrupt and Exception Handling  Trap Handlers deal with simple exceptions  The exception dispatcher creates an exception record containing the reason for the exception and finds an exception handler to deal with it

Third and Fourth Kernel Responsibilities ● Low-level processor synchronization ● Recovery after Power Failure

Executive ● Object Manager ● Virtual Memory Manager ● Process Manager ● Local Procedure Call Manager ● I/O manager ● Cache manager ● Security Reference Monitor ● Plug and Play and Power Managers ● Registry ● Booting

User Mode Subsystems ● OS/2 ● Win 16 ● Win 32 ● MS-DOS ● POSIX ● Protected Subsystems

Programmer Interface ● Access to Kernel Objects  Done by CreateXXX() (where XXX is an object name) and terminated by the CloseHandle() function ● Sharing Objects Between Processes ● Process Management ● Interprocess Communication ● Memory Management

Sharing Objects Between Processes ● Can be done by one of three methods  Inherited  Passing the Kernel Object a second name (may cause overlapping object names)  DuplicateHandle() function – uses some other method of interprocess message passing to share Kernel Object handles

Process Management ● Instance Handles – virtual address where every dynamic link library or executable file loaded into a process ● Scheduling Rule – distinguishes between the foreground program and all background programs tripling the foreground program's time quant ● Thread Priorities – determined by it's class (idle, normal, high, realtime) and can be adjusted more so by use of the SetThreadPriority() function ● Thread Synchronization – if multiple threads attempt to enter the critical section of some specified code only one section will be permitted to proceed

Process Management (Continued) ● Fibers  User-mode code that is scheduled according to user-defined scheduling algorithms  Only one fiber may execute concurrently, even in a multiprocessor environment ● Thread Pool – provides user-mode programs with three services in an attempt to increase performance  A Thread Queue  API that can bind callbacks and waitable handles  APIs to bind callbacks and timeouts

Interprocess Communication ● Can be handled in several ways  Sharing Kernel Objects  Message passing – particularly popular for GUI applications ● Posting a Message – Asynchronous ● Sending a Message – Synchronous ● Can send Data as well as a Message

Memory Management ● Virtual Memory  Processes reserve or commit virtual memory ● A process may lock some committed pages into physical memory so as to not be removed – maxes at 30 unless specifically changed ● Memory Mapping Files  Used for multiple processes to use the same memory without duplicating it into multiple memory spaces

Memory Management Continued ● Heaps  Reserved address space for Win32 API processes  Synchronized to prevent the heap's space-allocation data structures from being damaged by concurrent updates by multiple threads ● Thread Local Storage – allocates global storage on a per-thread basis (creating a 'local' global storage for each thread)