Presentation is loading. Please wait.

Presentation is loading. Please wait.

Understanding Operating Systems Seventh Edition

Similar presentations


Presentation on theme: "Understanding Operating Systems Seventh Edition"— Presentation transcript:

1 Understanding Operating Systems Seventh Edition
Chapter 14 Windows Operating Systems

2 Learning Objectives After completing this chapter, you should be able to describe: Design goals for Windows operating systems designers The role of the Memory Manager and Virtual Memory Manager in Windows Its use of the Device, Processor, and Network Managers System security challenges for Windows Windows user interfaces Understanding Operating Systems, 7e

3 Brief History Windows products before 1995 release: Windows 95 operating system Graphical user interfaces requiring the MS-DOS operating system Disadvantages: Multitasking not supported Little built-in security Lacked interprocess communication capability Required customization to work with each system hardware component Understanding Operating Systems, 7e

4 Understanding Operating Systems, 7e
(table 14.1) Select Microsoft Windows operating systems. For details about these and other versions, refer to © Cengage Learning 2014 Understanding Operating Systems, 7e

5 Brief History (cont’d.)
Windows products since 1995 Abandoned MS-DOS reliance More powerful networking products Windows product version number Windows XP: version 5.1 Windows 7: version 6.2 Windows 8: version 6.2 Display by pressing Windows logo key and the R key together Type winver Understanding Operating Systems, 7e

6 Design Goals Windows networking operating systems
Influenced by several operating system models Employed already-existing frameworks Introduced new features Object model: manage and allocate resources Symmetric multiprocessing (SMP): achieve maximum multiprocessor performance Understanding Operating Systems, 7e

7 Design Goals (cont'd.) Needs Response Accommodate user needs
Optimize resources Response Five design goals Extensibility Portability Reliability Compatibility Performance Understanding Operating Systems, 7e

8 Extensibility Easily enhancing operating system
Ensuring code integrity: separate functions Privileged executive process Kernel mode Processor’s mode of operation All machine instructions allowed System memory accessible Nonprivileged processes protected subsystems User mode Certain instructions not allowed System memory not accessible Understanding Operating Systems, 7e

9 Extensibility (cont'd.)
Additional features Modular structure New components added to executive process Objects Abstract data types manipulated by special services System resources managed uniformly Remote procedure call Application calls remote services Regardless of location on network Understanding Operating Systems, 7e

10 Portability Operates on different platforms
Different processors or configurations Minimum amount of recoding System guidelines to achieve goal Written in a standardized, high-level language Available in all machines Accommodate ported hardware Minimize direct code interaction with hardware Reduce incompatibility errors Isolate hardware-dependent code into modules Easily modifiable when ported Understanding Operating Systems, 7e

11 Portability (cont'd.) Windows features Modular code
Written in C (most of code) Graphic component and some networking portions written in C++ Code communicating directly with hardware written in Assembly language Hardware abstraction layer (HAL) Dynamic-link library Provides isolation from vendors’ hardware dependencies Understanding Operating Systems, 7e

12 Reliability System robustness: error response predictability
Ability to protect itself and users Accidental or deliberate user programs’ damage Features strengthening system Structured exception handling Modular design NTFS file system (NT File System) Can recover from all error types Advanced security architecture Virtual memory strategy Understanding Operating Systems, 7e

13 Compatibility Execute programs written for other operating systems (or earlier system versions) Use protected subsystems Provide application execution different from primary programming interface Provides source-level POSIX application compatibility Recent Windows versions Support existing file systems including MS-DOS FAT, CDFS, and NTFS Built-in verification Important hardware and software Understanding Operating Systems, 7e

14 Performance Responds quickly to CPU-bound applications
Windows features System calls, page faults, and other crucial processes: respond in timely manner Incorporated local procedure call (LPC): guarantees fast communication among protected subsystems Critical Windows networking software elements: built into operating system privileged portion Understanding Operating Systems, 7e

15 Memory Management Every operating system Full physical memory
Has own physical memory view Makes application programs access memory in specified ways Full physical memory Virtual Memory Manager pages some memory contents to disk Challenge for all Windows operating systems Run application programs (Windows or POSIX) Without programs crashing into each other’s memory Understanding Operating Systems, 7e

16 Memory Management (cont'd.)
Memory layout (recent Windows versions) Operating system: high virtual memory User code and data: low virtual memory User process Cannot read or write system memory directly Memory paged to disk User-accessible memory System memory segment labeled paged pool Memory never paged to disk System memory segment labeled nonpaged pool Understanding Operating Systems, 7e

17 Understanding Operating Systems, 7e
(figure 14.3) Layout of Windows memory. This is a virtual memory system based on 32-bit addresses in a linear address space. The 64-bit versions use a similar model but on a much larger scale with 8TB for the user and 8TB for the kernel. © Cengage Learning 2014 Understanding Operating Systems, 7e

18 User-Mode Features VM Manager (virtual machine manager)
User-mode subsystems share memory efficiently Provides native services: allows process to manage virtual memory Allocate memory in two stages Read and/or write protection for virtual memory Lock virtual pages in physical memory Retrieve information about virtual pages Protect virtual pages Rewrite virtual pages to disk Understanding Operating Systems, 7e

19 Virtual Memory Implementation
VM manager reliance Address space management Paging techniques Upper half of virtual address space Accessible only to kernel-mode processes Code in lower part (kernel code and data) Never paged out of memory Understanding Operating Systems, 7e

20 Virtual Memory Implementation (cont'd.)
Paging VM manager part: transfers pages Between memory page frames and disk storage Complex combination Software policies: when to bring a page into memory and where to put it Hardware mechanisms: exact manner VM Manager translates virtual addresses into physical addresses Pager not portable: modified for each new hardware platform Windows: small code and well-isolated Understanding Operating Systems, 7e

21 Virtual Memory Implementation (cont'd.)
Paging (cont’d.) Processor chip translates program generated address into a physical address Page with address not in memory: hardware generates a page fault and calls the pager Processor uses translation look-aside buffer (TLB) Speeds memory access Understanding Operating Systems, 7e

22 Virtual Memory Implementation (cont'd.)
Paging policies Dictate how and when paging is done Composition Fetch policy: determines when pager copies a page from disk to memory Placement policy: determines where virtual page is loaded in memory Replacement policy: determines which virtual page is removed from memory to make room for a new page Understanding Operating Systems, 7e

23 Processor Management Process: Thread
Combination of executable program, private memory area, and operating system allocated resources as the program executes Requires at least one execution thread Thread Process entity: roughly equated to a task Understanding Operating Systems, 7e

24 Processor Management (cont’d.)
Windows Preemptive-multitasking, multithreaded operating system Process contains one thread composed of: A unique identifier Volatile set of registers: contents indicate processor’s state Two stacks used during thread’s execution Private storage area: used by subsystems and dynamic-link libraries Understanding Operating Systems, 7e

25 Processor Management (cont'd.)
Threads Thread components called thread’s context Actual data forming context varies from one processor to another Kernel Schedules threads for execution on a processor Thread actually executes code Overhead incurred by thread is minimal Unitasking Process with single thread Understanding Operating Systems, 7e

26 Processor Management (cont'd.)
(figure 14.4) Unitasking in Windows. Here’s how a process with a single thread is scheduled for execution on a system with a single processor. © Cengage Learning 2014 Understanding Operating Systems, 7e

27 Processor Management (cont'd.)
Multithreading Systems with multiple processors Process has as many threads as CPUs available All threads belonging to one process: share global variables, heap, and environment strings Windows operating systems Include some synchronization mechanisms Give exclusive access to global variables as multithreaded processes execute Understanding Operating Systems, 7e

28 Understanding Operating Systems, 7e
(figure 14.5) Multitasking using multithreading. Here’s how a process with four threads can be scheduled for execution on a system with four processors. © Cengage Learning 2014 Understanding Operating Systems, 7e

29 Processor Management (cont'd.)
Multithreading example: modifying a database application Entering records: one thread writes the last record to disk while another thread accepts new data Database searching: several threads search an array simultaneously Client/server applications: CPU-intensive for server Client makes query requests; server’s processor manages the query Windows handles requests allocating additional CPU resources Understanding Operating Systems, 7e

30 Device Management Windows I/O system provides:
Multiple installable file systems (FAT, CDFS, and NTFS) Services making device-driver development easy Workable on multiprocessor systems Drivers: added to or removed from system dynamically System administrators Fast I/O processing Drivers written in high-level language Mapped file I/O capabilities Image activation, file caching, and application use Understanding Operating Systems, 7e

31 Device Management (cont'd.)
I/O system Packet driven I/O request represented by I/O request packet (IRP) IRP Data structure controlling how I/O operation processed at each step I/O manager: Creates an IRP representing each I/O operation Passes IRP to appropriate driver Disposes packet when operation complete Understanding Operating Systems, 7e

32 Device Management (cont'd.)
Driver IRP receipt Performs specified operation Passes it back to I/O manager or Passes it through I/O manager to another driver for further processing Understanding Operating Systems, 7e

33 Device Management (cont'd.)
I/O manager tasks Supplies code, common to different drivers Manages buffers for I/O requests Provides time-out support for drivers Records installable file systems loaded into operating system Provides flexible I/O facilities Subsystems (POSIX) implement their respective I/O application programming interfaces Allows dynamic loading: device drivers and file systems based on users’ needs Understanding Operating Systems, 7e

34 Device Management (cont'd.)
Windows I/O services Device-independent model Multilayered device driver concept Device driver made up of standard set of routines Initialization routine Dispatch routine Start I/O routine Completion routine Unload routine Error logging routine Understanding Operating Systems, 7e

35 Device Management (cont'd.)
I/O manager Determines driver called to process request Based on file object’s name Driver object Represents individual driver in system Created by I/O manager when driver loaded into system May have multiple device objects connected to it Device object Physical, logical, or virtual device on the system Describes device characteristics Understanding Operating Systems, 7e

36 Device Management (cont'd.)
(table 14.2) Example showing how a device object is created from an instruction to read a file, illustrated in Figure 14.6. © Cengage Learning 2014 Understanding Operating Systems, 7e

37 Understanding Operating Systems, 7e
(figure14.6) The driver object from Table 14.2 is connected to several device objects. The last device object points back to the driver object. © Cengage Learning 2014 Understanding Operating Systems, 7e

38 Device Management (cont'd.)
Device objects list Represents physical, logical, virtual devices Controlled by the driver Advantages of using different objects Portability Frees I/O manager from knowing details about drivers Follows pointer to locate driver Easy loading of new drivers Easy assigning drivers to control additional or different devices System configuration changes Understanding Operating Systems, 7e

39 Understanding Operating Systems, 7e
(figure14.7) Details of the layering of a file system driver and a disk driver. The steps shown here take place when the I/O Manager needs to access a secondary storage device to satisfy the command shown in Step 1. © Cengage Learning 2014 Understanding Operating Systems, 7e

40 Device Management (cont'd.)
I/O manager knows nothing about file system Overhead I/O manager passes information requests back and forth Uses single-layer device driver approach Simple devices (serial and parallel printer ports) Uses multilayered approach More complicated devices (hard drives) Asynchronous I/O operations Nearly all low-level operations Understanding Operating Systems, 7e

41 File Management Windows current versions Virtual file
Designed to be independent of file system on which they operate Virtual file Primary file handling concept (current Windows versions) Programs perform I/O on virtual files File handles manipulate them Executive file object representing all I/O sources and destinations Understanding Operating Systems, 7e

42 File Management (cont'd.)
Processes call native file object services to read from or write to file I/O manager directs virtual file requests Real files, file directories, physical devices, or other system-supported destinations File objects Hierarchical names Protected by object-based security Support synchronization Handled by object services Understanding Operating Systems, 7e

43 File Management (cont'd.)
Opening file Process supplies file’s name and type of access required File objects bridge gap Between physical devices’ characteristics and directory structures, file system structures, and data formats Understanding Operating Systems, 7e

44 File Management (cont'd.)
File object Memory-based representation of shareable physical resources Contains only data unique to an object handle File Contains data to be shared New file object created with new set of handle-specific attributes Each time process opens a handle Understanding Operating Systems, 7e

45 Understanding Operating Systems, 7e
(figure14.8) Illustrations of a file object, its attributes, and the services that operate on them. The attributes are explained in Table 14.3. © Cengage Learning 2014 Understanding Operating Systems, 7e

46 File Management (cont'd.)
(table 14.3) Description of the attributes shown in Figure 14.8. © Cengage Learning 2014 Understanding Operating Systems, 7e

47 File Management (cont'd.)
Mapped file I/O: important I/O system feature Achieved through cooperation between I/O system and VM Manager Memory-mapped files exploit VM capabilities Cache manager uses mapped I/O Manages its memory-based cache File management system Supports long filenames Include spaces and special characters Automatically shortens filenames when required Understanding Operating Systems, 7e

48 Network Management Networking
Integral part of Windows operating system executive Provides services: user accounts and resource security Implements communication between computers Named pipes: provide high-level interface for passing data between two processes (regardless of locations) Mailslots: provide one-to-many and many-to-one communication mechanisms Understanding Operating Systems, 7e

49 Network Management (cont’d.)
Microsoft Networks (MS-NET) Released in 1984 Model for NT Network Manager Three components Redirector Server message block (SMB) protocol Network server MS-NET components Extensively refurbished and incorporated into later Windows versions Understanding Operating Systems, 7e

50 Network Management (cont'd.)
Redirector Coded in C programming language Implemented as loadable file system driver Not dependent on system’s hardware architecture Function Direct I/O request from user or application to remote server with appropriate file or resource Network can incorporate multiple redirectors Understanding Operating Systems, 7e

51 Network Management (cont'd.)
SMB protocol High-level specification Formatting messages sent across network OSI model correlation Application layer (Layer 7); Presentation layer (Layer 6) API called NetBIOS interface Passes I/O requests structured in SMB format to remote computer SMB protocols and NetBIOS API Adopted in several networking products before appearing in Windows Understanding Operating Systems, 7e

52 Network Management (cont'd.)
Windows Server operating systems Written in C Complete compatibility with existing MS-NET and LAN Manager SMB protocols Implemented as loadable file system drivers No dependency on hardware architecture Where operating system running Understanding Operating Systems, 7e

53 Directory Services Active Directory
Database storing many information types General-purpose directory service for heterogeneous network Built entirely around DNS and LDAP Groups machines into domains Each domain gets a DNS domain name (e.g., pitt.edu) Each domain must have at least one domain controller Domain can have more than one domain controller Active Directory clients use standard DNS and LDAP protocols: locate objects on the network Understanding Operating Systems, 7e

54 Understanding Operating Systems, 7e
(figure 14.9) Active Directory clients use standard DNS and LDAP protocols to locate objects on the network. © Cengage Learning 2014 Understanding Operating Systems, 7e

55 Security Management Windows network operating systems
Provide object-based security model Security object Represents any resource in system (file, device, process, program, or user) Allows administrators to give precise security access Monitor and record how objects used Windows biggest concern Aggressive patch management needed Combat many viruses and worms Understanding Operating Systems, 7e

56 Security Concerns U.S. Department of Defense
Identified and categorized seven levels of security features Class C2 security level compliance Features in Windows A secure logon facility Discretionary access control Auditing ability Memory protection Understanding Operating Systems, 7e

57 Security Concerns (cont'd.)
Multilayered security system First security layer: password management Second security layer: file access security Distinguishes between owners and groups Users decide operation types person is allowed to perform on a file Gives user auditing capabilities: automatically tracks who uses files and how files used Understanding Operating Systems, 7e

58 Security Terminology Built-in security
Necessary element for managers of Web servers and networks Requires authentication mechanism allowing client to prove identity to server Client supplies authorization information Server uses information: determines specific access rights given to client Provides data integrity using various methods Windows operating systems feature Kerberos security Understanding Operating Systems, 7e

59 Security Terminology (cont'd.)
Kerberos security Authentication (mutual), data integrity, and data privacy Each domain has own Kerberos server Microsoft implemented standard Kerberos protocol Microsoft separates distributed security services users from their providers Supports many options without unusable complexity Understanding Operating Systems, 7e

60 Security Terminology (cont'd.)
(figure 14.10) Requests from an application flow through these security stops on the way to and from the network. © Cengage Learning 2014 Understanding Operating Systems, 7e

61 User Interface Windows 8 Windows Task Manager
Offers same default screen All devices running the operating system Laptop or desktop users Can switch between tile-populated Start screen and Desktop screen Windows Task Manager Open: press and hold Ctrl, Alt, and Delete keys together Understanding Operating Systems, 7e

62 Understanding Operating Systems, 7e
(figure 14.13) Using the Task Manager, users can view the system status, assign priorities, and more. © Cengage Learning 2014 Understanding Operating Systems, 7e

63 Understanding Operating Systems, 7e
(figure 14.14) The resource monitor offers running statistics for this session. © Cengage Learning 2014 Understanding Operating Systems, 7e

64 User Interface (cont’d.)
Command-line interface Available from most Windows desktops Use Help feature: learn a command’s syntax Understanding Operating Systems, 7e

65 Understanding Operating Systems, 7e
(table 14.4) Selected commands that can be used in the Command Prompt Window. For a complete listing, see your technical documentation or © Cengage Learning 2014 Understanding Operating Systems, 7e

66 User Interface (cont'd.)
Helpful Windows features Built-in input methods and fonts for many languages Accommodates users working in non-English languages Enhanced accessibility options On-screen keyboard Other tools: magnifier, a narrator, speech recognition, etc. Understanding Operating Systems, 7e

67 Conclusion Windows operating systems Windows 8 Windows recognized as:
Started as a microcomputer operating system Now includes complex multiplatform software Run computing systems of all sizes Windows 8 Singular interface Both touch screens and traditional computers Windows recognized as: Powerful operating system Significant market force Understanding Operating Systems, 7e


Download ppt "Understanding Operating Systems Seventh Edition"

Similar presentations


Ads by Google