Windows Seven - Operating Systems - Lecture Slides, Slides of Operating Systems

In these slides of the operating systems the main points are:Windows Seven, History, Design Principles, System Components, Environmental Subsystems, File System, Networking, Programmer Interface, Specific Components, Operating Systems

Typology: Slides

2012/2013

Uploaded on 04/30/2013

aradhana
aradhana 🇮🇳

4.6

(8)

119 documents

1 / 63

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Chapter 16: Windows 7
Docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f

Partial preview of the text

Download Windows Seven - Operating Systems - Lecture Slides and more Slides Operating Systems in PDF only on Docsity!

  • Chapter 16: Windows

Chapter 16: Windows 7

 History

 Design Principles

 System Components

 Environmental Subsystems

 File system

 Networking

 Programmer Interface

Windows 7

 32-bit/64-bit preemptive multitasking operating system for Intel and AMD microprocessors

 Key goals for the system:

 security  reliability  extensibility  portability  international support  energy efficiency  dynamic device support.

 Supports multiple OS personalities using user-mode subsystems.

 Windows 7 is for desktops. Windows Server 2008 R2 uses the same internals as 64-bit Windows 7, but with added features for servers.

History

 In 1988, Microsoft decided to develop a “new technology” (NT) portable operating system that supported both the OS/2 and POSIX APIs. NT supported servers as well as desktop workstations.

 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 the Windows 3.0 Win16 API.

 Windows XP was released in 2001 to replace the earlier versions of Windows based on MS/DOS, such as Windows98 and Windows ME.

 Windows XP was updated in 2005 to provide support AMD compatible CPUs, bringing support for 64-bit desktop systems.

 Windows Vista was released in late 2006, but was poorly received due to initial problems with application and device compatibility and sluggishness on the explosion of low-end “netbook” devices.

 Windows 7 was released in late 2009, greatly improving on Vista.

Design Principles (Cont.)

 Reliability —Windows 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 Windows without changing the source code. Applications created for previous versions of Windows run using various virtual machine techniques

 Performance —Windows 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, scaling to 100s of cores

 International support — supports different locales via the national language support (NLS) API, use of UNICODE throughout, and providing facilities for differences in date formats, currency, etc.

Windows Architecture

 Layered system of modules

 Protected mode — hardware abstraction layer ( HAL ), kernel, executive.  Executive includes file systems, network stack, and device drivers.

 User mode — collection of subsystems, services, DLLs, and the GUI

 Environmental subsystems emulate different operating systems  Protection subsystems provide security functions  Windows services provide facilities for networking, device interfaces, background execution, and extension of the system  Rich shared libraries with thousands of APIs are implemented using DLLs to allow code sharing and simplify updates  A graphical user interface is built into Win32 and used by most programs that interact directly with the user

 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, process and profile objects)

System Components — Kernel

Kernel — 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 terminated.

Kernel — 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 Windows 7 does not guarantee that a real-time thread will start to execute within any particular time limit.  This is known as soft real-time.

Windows 7 Interrupt Request Levels

Executive — Object Manager

 Windows 7 uses objects for all its services and entities; the object manager supervises the use of all the objects  Generates an object handle used by applications to refer to objects  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 security.

Executive — Naming Objects

 The Windows 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 UNIX.

 Windows implements a symbolic link object , which is similar to symbolic links in UNIX that allow multiple nicknames or aliases to refer to the same object.

 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 its parent process.

 Each object is protected by an access control list.

 The executive name space is extensible to allow naming of files, registry keys, and other objects with their own special semantics.

Virtual-Memory Layout (32-bit)

Page Directory

4K page 4K page 4K page 4K page

page table 0

page table 511

page- directory entry 511

page- directory entry 0

page- table entry 0

page- table entry 511

page- table entry 0

page- table entry 511

Top-level Page Directory Table 0 1 2 3

Virtual Memory Manager (Cont.)

 The virtual address translation in Windows uses several data structures within each process  A top-level page directory containing 4 page directory entries (PDEs) of size 8 bytes that may each point to a page directory.  Each page directory contains 512 page directory entries, that may each point to a page table.  Each page table contains 512 page table entries (PTEs) of size 8 bytes.  Each valid PTE points to a 4 KB page frame in physical memory.  Invalid PTEs are used by the OS to find pages on disk

 A 9-bit integer can represent all the values form 0 to 511, therefore, can select any entry in the page directory, or in a page table.

 This property is used when translating a virtual address pointer to a byte address in physical memory.

 A physical page can be in one of six states: valid, zeroed, free, standby, modified and bad.