DOC PREVIEW
UMD CMSC 412 - Operating Systems

This preview shows page 1-2-3-4-29-30-31-32-33-60-61-62-63 out of 63 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 63 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CSMC 412Operating SystemsProf. Ashok K Agrawala© 2006 Ashok AgrawalaSet 15 Windows XPDecember 2006 1CMSC 412 Set 15Windows XPWindows XP• History• Design Principles• System Components• Environmental Subsystems • File system• Networking• Programmer InterfaceDecember 2006 3CMSC 412 Set 15Windows XP • 32-bit preemptive multitasking operating system for Intel microprocessors• Key goals for the system:– portability– security – POSIX compliance – multiprocessor support – extensibility – international support – compatibility with MS-DOS and MS-Windows applications.• Uses a micro-kernel architecture• Available in four versions, Professional, Server, Advanced Server, National ServerDecember 2006 4CMSC 412 Set 15History• In 1988, Microsoft decided to develop a “new technology” (NT) portable operating system that supported both the OS/2 and POSIX APIs• Originally, NT was supposed to use the OS/2 API as its native environment but during development NT was changed to use the Win32 API, reflecting the popularity of Windows 3.0December 2006 5CMSC 412 Set 15Design Principles• Extensibility — layered architecture– Executive, which runs in protected mode, provides the basic system services– On top of the executive, several server subsystems operate in user mode– Modular structure allows additional environmental subsystems to be added without affecting the executive• Portability —XP can be moved from on hardware architecture to another with relatively few changes– Written in C and C++– Processor-dependent code is isolated in a dynamic link library (DLL) called the “hardware abstraction layer” (HAL)December 2006 6CMSC 412 Set 15Design Principles (Cont.)• Reliability —XP uses hardware protection for virtual memory, and software protection mechanisms for operating system resources• Compatibility — applications that follow the IEEE 1003.1 (POSIX) standard can be complied to run on XP without changing the source code• Performance —XP subsystems can communicate with one another via high-performance message passing– Preemption of low priority threads enables the system to respond quickly to external events– Designed for symmetrical multiprocessing• International support — supports different locales via the national language support (NLS) APIDecember 2006 7CMSC 412 Set 15XP Architecture• Layered system of modules• Protected mode — HAL, kernel, executive• User mode — collection of subsystems– Environmental subsystems emulate different operating systems – Protection subsystems provide security functionsDecember 2006 8CMSC 412 Set 15Depiction of XP ArchitectureDecember 2006 9CMSC 412 Set 15• Foundation for the executive and the subsystems• Never paged out of memory; execution is never preempted• Four main responsibilities: – thread scheduling– interrupt and exception handling – low-level processor synchronization– recovery after a power failure• Kernel is object-oriented, uses two sets of objects– dispatcher objects control dispatching and synchronization (events, mutants, mutexes, semaphores, threads and timers) – control objects (asynchronous procedure calls, interrupts, power notify, power status, process and profile objects)System Components — KernelDecember 2006 10CMSC 412 Set 15Kernel — Process and Threads• The process has a virtual memory address space, information (such as a base priority), and an affinity for one or more processors• Threads are the unit of execution scheduled by the kernel’s dispatcher• Each thread has its own state, including a priority, processor affinity, and accounting information• A thread can be one of six states: ready, standby, running, waiting, transition, and terminatedDecember 2006 11CMSC 412 Set 15Kernel — Scheduling• The dispatcher uses a 32-level priority scheme to determine the order of thread execution – Priorities are divided into two classes• The real-time class contains threads with priorities ranging from 16 to 31• The variable class contains threads having priorities from 0 to 15• Characteristics of XP’s priority strategy– Trends to give very good response times to interactive threads that are using the mouse and windows– Enables I/O-bound threads to keep the I/O devices busy– Complete-bound threads soak up the spare CPU cycles in the backgroundDecember 2006 12CMSC 412 Set 15Kernel — Scheduling (Cont.) • Scheduling can occur when a thread enters the ready or wait state, when a thread terminates, or when an application changes a thread’s priority or processor affinity• Real-time threads are given preferential access to the CPU; but XP does not guarantee that a real-time thread will start to execute within any particular time limit – This is known as soft realtimeDecember 2006 13CMSC 412 Set 15Windows XP Interrupt Request LevelsDecember 2006 14CMSC 412 Set 15Kernel — Trap Handling• The kernel provides trap handling when exceptions and interrupts are generated by hardware of software• Exceptions that cannot be handled by the trap handler are handled by the kernel's exception dispatcher• The interrupt dispatcher in the kernel handles interrupts by calling either an interrupt service routine (such as in a device driver) or an internal kernel routine• The kernel uses spin locks that reside in global memory to achieve multiprocessor mutual exclusionDecember 2006 15CMSC 412 Set 15Executive — Object Manager• XP uses objects for all its services and entities; the object manger supervises the use of all the objects– Generates an object handle– Checks security– Keeps track of which processes are using each object• Objects are manipulated by a standard set of methods, namely create, open, close, delete, query name, parse and securityDecember 2006 16CMSC 412 Set 15Executive — Naming Objects• The XP executive allows any object to be given a name, which may be either permanent or temporary• Object names are structured like file path names in MS-DOS and UNIX• XP implements a symbolic link object, which is similar to symbolic links in UNIX that allow multiple nicknames or aliases to refer to the same file• A process gets an object handle by creating an object by opening an existing one, by receiving a duplicated handle from another process, or by inheriting a handle from a parent process• Each object is protected by an access control listDecember 2006 17CMSC 412 Set


View Full Document

UMD CMSC 412 - Operating Systems

Documents in this Course
Security

Security

65 pages

Deadlocks

Deadlocks

22 pages

Set 2

Set 2

70 pages

Project 2

Project 2

21 pages

Load more
Download Operating Systems
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Operating Systems and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Operating Systems 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?