Understanding Operating Systems Fifth Edition Chapter 15 Windows  Operating System s
Learning Objectives <ul><li>The role of MS-DOS in early Windows releases </li></ul><ul><li>The design goals for Windows op...
Windows Development <ul><li>First Windows product communication method </li></ul><ul><ul><li>Graphical user interface (GUI...
Early Windows Products <ul><li>Advancements in Windows  </li></ul><ul><ul><li>Increasingly sophisticated GUI design </li><...
Early Windows Products (continued) <ul><li>Windows for Workgroup s </li></ul><ul><ul><li>Accommodate network users’ needs ...
Operating Systems for Home and Professional Users <ul><li>Disadvantages running Windows  on MS-DOS </li></ul><ul><ul><li>L...
Operating Systems for Home and Professional Users (continued) Understanding Operating Systems, Fifth Edition
Operating Systems for Networks <ul><li>Windows NT Development (1993) </li></ul><ul><ul><li>No reliance on MS-DOS support <...
Operating Systems for Networks (continued) Understanding Operating Systems, Fifth Edition
Operating Systems for Networks (continued) <ul><li>Windows NT versions </li></ul><ul><ul><li>Windows NT Workstation </li><...
Operating Systems for Networks (continued) <ul><li>Windows N T name changed (1999) </li></ul><ul><li>Windows 2000   four p...
Operating Systems for Networks (continued) <ul><li>Server and Advanced Server editions </li></ul><ul><ul><li>Easy </li></u...
Design Goals <ul><li>Fulfilling marketing requirements </li></ul><ul><ul><li>Incorporate security features </li></ul></ul>...
Design Goals (continued) <ul><li>Needs </li></ul><ul><ul><li>Accommodate user needs </li></ul></ul><ul><ul><li>Optimize re...
Extensibility <ul><li>Easily enhancing operating system </li></ul><ul><li>Ensuring code integrity: separate functions  </l...
Extensibility  (continued)  <ul><li>Four more features </li></ul><ul><ul><li>Modular structure </li></ul></ul><ul><ul><ul>...
Portability <ul><li>Operate on different machines </li></ul><ul><ul><li>Different processors or configurations </li></ul><...
Portability   (continued) <ul><li>Windows NT and successors’ features </li></ul><ul><ul><li>Modular code </li></ul></ul><u...
Reliability <ul><li>Robustness of system </li></ul><ul><li>Ability to protect itself and users </li></ul><ul><ul><li>Accid...
Compatibility <ul><li>Execute programs written   for other operating systems (or earlier system versions) </li></ul><ul><u...
Performance <ul><li>Achieve good performance levels   </li></ul><ul><li>Windows features </li></ul><ul><ul><li>Testing and...
Memory Management <ul><li>Every operating system </li></ul><ul><ul><li>Has own physical memory view </li></ul></ul><ul><ul...
Memory Management  (continued)  <ul><li>Memory layout ( recent Windows versions) </li></ul><ul><ul><li>Operating system: h...
Memory Management  (continued)  Understanding Operating Systems, Fifth Edition
User-Mode Features <ul><li>VM Manager (virtual machine manager) </li></ul><ul><ul><li>User-mode subsystems share memory   ...
Virtual Memory Implementation <ul><li>VM manager reliance </li></ul><ul><ul><li>Address space management  </li></ul></ul><...
Virtual Memory Implementation (continued) <ul><li>Paging (VM manager is pager) </li></ul><ul><ul><li>Transfers pages </li>...
Virtual Memory Implementation (continued) <ul><li>Paging policies </li></ul><ul><ul><li>Dictate how and when paging done <...
Processor Management <ul><li>Windows </li></ul><ul><ul><li>Preemptive-multitasking, multithreaded operating system </li></...
Processor Management (continued) <ul><li>Thread composition </li></ul><ul><ul><li>A unique identifier </li></ul></ul><ul><...
Processor Management (continued) <ul><li>Threads </li></ul><ul><ul><li>Thread  components called thread’s context </li></u...
Processor Management (continued) Understanding Operating Systems, Fifth Edition
Processor Management (continued) <ul><li>Multithreading using multitasking </li></ul><ul><ul><li>Systems with multiple pro...
Processor Management (continued) Understanding Operating Systems, Fifth Edition
Device Management <ul><li>Windows NT I/O system and networking descendents provide: </li></ul><ul><ul><li>Multiple install...
Device Management  (continued)  <ul><li>I/O system  </li></ul><ul><ul><li>Packet driven   </li></ul></ul><ul><ul><ul><li>I...
Device Management  (continued)  <ul><li>Driver IRP receipt </li></ul><ul><ul><li>Performs specified operation </li></ul></...
Device Management  (continued) <ul><li>I/O manager  tasks   </li></ul><ul><ul><li>Supplies code, common   to different dri...
Device Management  (continued) <ul><li>Windows I/O services </li></ul><ul><ul><li>Device-independent model </li></ul></ul>...
Device Management  (continued) <ul><li>I/O manager </li></ul><ul><ul><li>Determine driver called to process request </li><...
Device Management  (continued) Understanding Operating Systems, Fifth Edition
Device Management  (continued) Understanding Operating Systems, Fifth Edition
Device Management  (continued) <ul><li>Device objects list  </li></ul><ul><ul><li>Represents physical, logical, virtual de...
Device Management  (continued) Understanding Operating Systems, Fifth Edition
Device Management  (continued) <ul><li>I/O manager knows nothing about file system </li></ul><ul><li>Overhead  </li></ul><...
File Management <ul><li>Windows current versions </li></ul><ul><ul><li>Designed to be  independent   of file system on whi...
File Management  (continued) <ul><li>Virtual file </li></ul><ul><ul><li>Primary file handling concept (current windows) </...
File Management  (continued) <ul><li>File objects </li></ul><ul><ul><li>Hierarchical   names   </li></ul></ul><ul><ul><li>...
File Management  (continued) <ul><li>File objects bridge gap  </li></ul><ul><ul><li>Between physical devices’ characterist...
File Management  (continued) Understanding Operating Systems, Fifth Edition
File Management  (continued) Understanding Operating Systems, Fifth Edition
File Management  (continued) <ul><li>Mapped file I/O </li></ul><ul><ul><li>Important feature of I/O system  </li></ul></ul...
Network Management <ul><li>Networking </li></ul><ul><ul><li>Integral to Windows NT-based operating systems </li></ul></ul>...
MS-NET <ul><li>Microsoft Networks  ( MS-NET )   </li></ul><ul><ul><li>Released in 1984  </li></ul></ul><ul><ul><li>Model f...
MS-NET  (continued) <ul><li>Redirector </li></ul><ul><ul><li>Coded in C programming language </li></ul></ul><ul><ul><li>Im...
MS-NET  (continued) <ul><li>SMB Protocol </li></ul><ul><ul><li>High-level specification  </li></ul></ul><ul><ul><ul><li>Fo...
MS-NET  (continued) <ul><li>Windows Server operating systems </li></ul><ul><ul><li>Written in C </li></ul></ul><ul><ul><ul...
MS-NET  (continued) Understanding Operating Systems, Fifth Edition
Directory Services <ul><li>Active Directory </li></ul><ul><ul><li>Database  storing  all   information   types </li></ul><...
Directory Services  (continued) Understanding Operating Systems, Fifth Edition
Security Management <ul><li>Windows network operating systems </li></ul><ul><ul><li>Provide object-based security model </...
Security Basics <ul><li>U.S. Department of Defense </li></ul><ul><ul><li>Identified and categorized operating system featu...
Security Basics  (continued) <ul><li>Multilayered security system </li></ul><ul><ul><li>Strives to prevent access by unaut...
Security Terminology <ul><li>Built-in security </li></ul><ul><ul><li>Necessary element   for managers of Web servers and n...
Security Terminology  (continued) <ul><li>Kerberos Security </li></ul><ul><ul><li>Authentication, data integrity, data pri...
Security Terminology  (continued) Understanding Operating Systems, Fifth Edition
User Interface <ul><li>Start an application </li></ul><ul><ul><li>Double-click application icon </li></ul></ul><ul><ul><li...
User Interface  (continued) <ul><li>Start  M enu   </li></ul><ul><ul><li>Divides functions   into logical groups </li></ul...
User Interface  (continued) Understanding Operating Systems, Fifth Edition
User Interface  (continued) <ul><li>Windows Task Manager </li></ul><ul><ul><li>Open </li></ul></ul><ul><ul><ul><li>Pressin...
User Interface  (continued) Understanding Operating Systems, Fifth Edition
User Interface  (continued) Understanding Operating Systems, Fifth Edition
User Interface  (continued) <ul><li>Networked systems   </li></ul><ul><ul><li>Identify and access network resources </li><...
User Interface  (continued) Understanding Operating Systems, Fifth Edition
User Interface  (continued) Understanding Operating Systems, Fifth Edition
User Interface  (continued) Understanding Operating Systems, Fifth Edition
User Interface  (continued) Understanding Operating Systems, Fifth Edition
User Interface  (continued) Understanding Operating Systems, Fifth Edition
Summary <ul><li>Current Windows operating systems </li></ul><ul><ul><li>Ease-of-use with technical power </li></ul></ul><u...
Upcoming SlideShare
Loading in …5
×

Understanding operating systems 5th ed ch15

1,315 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,315
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
107
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Understanding operating systems 5th ed ch15

  1. 1. Understanding Operating Systems Fifth Edition Chapter 15 Windows Operating System s
  2. 2. Learning Objectives <ul><li>The role of MS-DOS in early Windows releases </li></ul><ul><li>The design goals for Windows operating systems </li></ul><ul><li>The role of the Memory Manager and Virtual Memory Manager </li></ul><ul><li>The use of the Device, Processor, and Network Managers in recent versions of Windows </li></ul><ul><li>The challenges for Windows system security </li></ul><ul><li>How the current Windows user interface functions </li></ul>Understanding Operating Systems, Fifth Edition
  3. 3. Windows Development <ul><li>First Windows product communication method </li></ul><ul><ul><li>Graphical user interface (GUI) </li></ul></ul><ul><ul><ul><li>Primary user communication method </li></ul></ul></ul><ul><ul><ul><li>Needed underlying operating system to translate users’ requests into system commands </li></ul></ul></ul><ul><li>Windows 1.0 (1985) </li></ul><ul><ul><li>First Windows application </li></ul></ul><ul><ul><li>Ran on PC-compatible microcomputers </li></ul></ul><ul><ul><li>Not a true operating system </li></ul></ul><ul><ul><ul><li>Ran on top of MS-DOS </li></ul></ul></ul><ul><ul><ul><li>Interface between MS-DOS and user </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  4. 4. Early Windows Products <ul><li>Advancements in Windows </li></ul><ul><ul><li>Increasingly sophisticated GUI design </li></ul></ul><ul><ul><ul><li>Increasingly powerful desktop computers </li></ul></ul></ul><ul><li>Windows 3.1 </li></ul><ul><ul><li>Standardized look and feel </li></ul></ul><ul><ul><ul><li>Similar to Apple’s Macintosh computer </li></ul></ul></ul><ul><ul><li>Entry level product </li></ul></ul><ul><ul><ul><li>Single-user installations or small-business environments </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  5. 5. Early Windows Products (continued) <ul><li>Windows for Workgroup s </li></ul><ul><ul><li>Accommodate network users’ needs (small business) </li></ul></ul><ul><ul><ul><li>Programs and features for small LANs </li></ul></ul></ul><ul><ul><ul><li>Share directories, disks, printers </li></ul></ul></ul><ul><ul><ul><li>Personal intercommunication: e-mail, chat programs </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  6. 6. Operating Systems for Home and Professional Users <ul><li>Disadvantages running Windows on MS-DOS </li></ul><ul><ul><li>Little built-in security </li></ul></ul><ul><ul><li>No multitasking </li></ul></ul><ul><ul><li>No interprocess communication capability </li></ul></ul><ul><ul><li>Difficulty moving MS-DOS to other platforms </li></ul></ul><ul><ul><ul><li>MS-DOS worked closely with hardware </li></ul></ul></ul><ul><li>Microsoft response </li></ul><ul><ul><li>Developed and released succession of Windows </li></ul></ul><ul><ul><ul><li>Not mere GUIs; had home and office user appeal </li></ul></ul></ul><ul><ul><li>Development of powerful networking products </li></ul></ul><ul><ul><ul><li>Windows NT (Newer Technology) </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  7. 7. Operating Systems for Home and Professional Users (continued) Understanding Operating Systems, Fifth Edition
  8. 8. Operating Systems for Networks <ul><li>Windows NT Development (1993) </li></ul><ul><ul><li>No reliance on MS-DOS support </li></ul></ul><ul><ul><li>Primary market requirements </li></ul></ul><ul><ul><ul><li>Portability </li></ul></ul></ul><ul><ul><ul><li>Multiprocessing capabilities </li></ul></ul></ul><ul><ul><ul><li>Distributed computing support </li></ul></ul></ul><ul><ul><ul><li>Government procurement compliance requirements </li></ul></ul></ul><ul><ul><ul><li>Government security certification </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  9. 9. Operating Systems for Networks (continued) Understanding Operating Systems, Fifth Edition
  10. 10. Operating Systems for Networks (continued) <ul><li>Windows NT versions </li></ul><ul><ul><li>Windows NT Workstation </li></ul></ul><ul><ul><ul><li>Individuals </li></ul></ul></ul><ul><ul><ul><li>Desktop operating system </li></ul></ul></ul><ul><ul><li>Windows NT Server </li></ul></ul><ul><ul><ul><li>Small to medium-sized offices </li></ul></ul></ul><ul><ul><ul><li>Web servers and off-site locations </li></ul></ul></ul><ul><ul><li>Windows NT Server Enterprise Edition </li></ul></ul><ul><ul><ul><li>Larger and more complex networks </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  11. 11. Operating Systems for Networks (continued) <ul><li>Windows N T name changed (1999) </li></ul><ul><li>Windows 2000 four packages </li></ul><ul><ul><li>Windows 2000 Professional </li></ul></ul><ul><ul><li>Windows 2000 Server </li></ul></ul><ul><ul><li>Windows 2000 Advanced Server </li></ul></ul><ul><ul><li>Windows 2000 Datacenter Server </li></ul></ul><ul><ul><ul><li>Large data warehouses </li></ul></ul></ul><ul><ul><ul><li>Data-intensive business applications </li></ul></ul></ul><ul><ul><ul><li>Supported up to 64 GB physical memory </li></ul></ul></ul><ul><li>Windows Server 2003 </li></ul><ul><ul><li>Same four packages plus Web edition </li></ul></ul>Understanding Operating Systems, Fifth Edition
  12. 12. Operating Systems for Networks (continued) <ul><li>Server and Advanced Server editions </li></ul><ul><ul><li>Easy </li></ul></ul><ul><ul><ul><li>Form collaborative work groups across departments </li></ul></ul></ul><ul><ul><ul><li>Add new workstations and components </li></ul></ul></ul><ul><ul><li>Improvements </li></ul></ul><ul><ul><ul><li>Network systems </li></ul></ul></ul><ul><ul><ul><li>Adding new applications </li></ul></ul></ul><ul><ul><ul><li>Maintaining system as a whole </li></ul></ul></ul><ul><ul><li>Web server software tools and support </li></ul></ul><ul><ul><ul><li>E-mail, conferencing, and collaboration </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  13. 13. Design Goals <ul><li>Fulfilling marketing requirements </li></ul><ul><ul><li>Incorporate security features </li></ul></ul><ul><ul><li>Facilitate decision making (coding process) </li></ul></ul><ul><li>Windows networking operating systems </li></ul><ul><ul><li>Influenced by several operating system models </li></ul></ul><ul><ul><ul><li>Use already-existing frameworks </li></ul></ul></ul><ul><ul><ul><li>Introduced new features </li></ul></ul></ul><ul><ul><li>Object model </li></ul></ul><ul><ul><ul><li>Manage and allocate resources </li></ul></ul></ul><ul><ul><ul><li>Symmetric multiprocessing (SMP) </li></ul></ul></ul><ul><ul><ul><li>Maximum multiprocessor performance </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  14. 14. Design Goals (continued) <ul><li>Needs </li></ul><ul><ul><li>Accommodate user needs </li></ul></ul><ul><ul><li>Optimize resources </li></ul></ul><ul><li>Response </li></ul><ul><ul><li>Five design goals </li></ul></ul><ul><ul><ul><li>Extensibility </li></ul></ul></ul><ul><ul><ul><li>Portability </li></ul></ul></ul><ul><ul><ul><li>Reliability </li></ul></ul></ul><ul><ul><ul><li>Compatibility </li></ul></ul></ul><ul><ul><ul><li>Performance </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  15. 15. Extensibility <ul><li>Easily enhancing operating system </li></ul><ul><li>Ensuring code integrity: separate functions </li></ul><ul><ul><li>Privileged executive process </li></ul></ul><ul><ul><ul><li>Kernel mode </li></ul></ul></ul><ul><ul><ul><li>Processor’s mode of operation </li></ul></ul></ul><ul><ul><ul><li>All machine instructions allowed </li></ul></ul></ul><ul><ul><ul><li>System memory accessible </li></ul></ul></ul><ul><ul><li>Nonprivileged processes “protected subsystems” </li></ul></ul><ul><ul><ul><li>User mode </li></ul></ul></ul><ul><ul><ul><li>Certain instructions not allowed </li></ul></ul></ul><ul><ul><ul><li>System memory not accessible </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  16. 16. Extensibility (continued) <ul><li>Four more features </li></ul><ul><ul><li>Modular structure </li></ul></ul><ul><ul><ul><li>New components added to executive process </li></ul></ul></ul><ul><ul><li>Objects </li></ul></ul><ul><ul><ul><li>Abstract data types manipulated by special services </li></ul></ul></ul><ul><ul><ul><li>System resources managed uniformly </li></ul></ul></ul><ul><ul><li>Drivers </li></ul></ul><ul><ul><ul><li>New file systems, devices, and networks added to system at any time </li></ul></ul></ul><ul><ul><li>Remote procedure call </li></ul></ul><ul><ul><ul><li>Application calls remote services </li></ul></ul></ul><ul><ul><ul><li>Regardless of location on network </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  17. 17. Portability <ul><li>Operate on different machines </li></ul><ul><ul><li>Different processors or configurations </li></ul></ul><ul><ul><li>Minimum amount of recoding </li></ul></ul><ul><li>System guidelines to achieve goal </li></ul><ul><ul><li>Written in a standardized, high-level language </li></ul></ul><ul><ul><ul><li>Available in all machines </li></ul></ul></ul><ul><ul><li>Accommodated ported hardware </li></ul></ul><ul><ul><li>Minimized direct code interaction with hardware </li></ul></ul><ul><ul><ul><li>Reduced incompatibility errors </li></ul></ul></ul><ul><ul><li>Hardware-dependent code isolated into modules </li></ul></ul><ul><ul><ul><li>Easily modifiable when ported </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  18. 18. Portability (continued) <ul><li>Windows NT and successors’ features </li></ul><ul><ul><li>Modular code </li></ul></ul><ul><ul><li>Written in C (most of code) </li></ul></ul><ul><ul><li>Hardware abstraction layer (HAL) </li></ul></ul><ul><ul><ul><li>Dynamic-link library </li></ul></ul></ul><ul><ul><ul><li>Provides isolation from vendors’ hardware dependencies </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  19. 19. Reliability <ul><li>Robustness of system </li></ul><ul><li>Ability to protect itself and users </li></ul><ul><ul><li>Accidental or deliberate user programs’ damage </li></ul></ul><ul><li>Features strengthening system </li></ul><ul><ul><li>Structured exception handling </li></ul></ul><ul><ul><li>Modular design </li></ul></ul><ul><ul><li>NTFS file system (NT file system) </li></ul></ul><ul><ul><ul><li>Can recover from all error types </li></ul></ul></ul><ul><ul><li>Advanced security architecture </li></ul></ul><ul><ul><li>Virtual memory strategy </li></ul></ul>Understanding Operating Systems, Fifth Edition
  20. 20. Compatibility <ul><li>Execute programs written for other operating systems (or earlier system versions) </li></ul><ul><ul><li>Use protected subsystems </li></ul></ul><ul><ul><ul><li>Provide application execution different from primary programming interface </li></ul></ul></ul><ul><ul><li>Provides source-level POSIX application compatibility </li></ul></ul><ul><ul><li>Recent Windows versions </li></ul></ul><ul><ul><ul><li>Support existing file systems </li></ul></ul></ul><ul><ul><ul><li>FAT, CDFS , NTFS </li></ul></ul></ul><ul><ul><li>Built-in verification </li></ul></ul><ul><ul><ul><li>Important hardware and software </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  21. 21. Performance <ul><li>Achieve good performance levels </li></ul><ul><li>Windows features </li></ul><ul><ul><li>Testing and optimization s ystem calls, page faults, crucial processes </li></ul></ul><ul><ul><li>Incorporate local procedure call (LPC): guarantee fast communication among protected subsystems </li></ul></ul><ul><ul><li>Maximize speed of frequently used system services </li></ul></ul><ul><ul><li>Critical Windows networking software elements built into operating system privileged portion </li></ul></ul>Understanding Operating Systems, Fifth Edition
  22. 22. Memory Management <ul><li>Every operating system </li></ul><ul><ul><li>Has own physical memory view </li></ul></ul><ul><ul><li>Makes application programs access memory in specified ways </li></ul></ul><ul><li>Full physical memory </li></ul><ul><ul><li>Virtual Memory Manager pages some memory contents to disk </li></ul></ul><ul><li>Challenge for all Windows operating systems </li></ul><ul><ul><li>Run application programs (Windows, POSIX ) </li></ul></ul><ul><ul><ul><li>Without programs crashing into each other’s memory </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  23. 23. Memory Management (continued) <ul><li>Memory layout ( recent Windows versions) </li></ul><ul><ul><li>Operating system: high virtual memory </li></ul></ul><ul><ul><li>User code and data: low virtual memory </li></ul></ul><ul><li>User process </li></ul><ul><ul><li>Cannot read or write system memory directly </li></ul></ul><ul><li>Memory paged to disk </li></ul><ul><ul><li>User-accessible memory </li></ul></ul><ul><ul><li>System memory segment labeled paged pool </li></ul></ul><ul><li>Memory never paged to disk </li></ul><ul><ul><li>System memory segment labeled nonpaged pool </li></ul></ul>Understanding Operating Systems, Fifth Edition
  24. 24. Memory Management (continued) Understanding Operating Systems, Fifth Edition
  25. 25. User-Mode Features <ul><li>VM Manager (virtual machine manager) </li></ul><ul><ul><li>User-mode subsystems share memory efficiently </li></ul></ul><ul><ul><li>Provides process services to manage virtual memory </li></ul></ul><ul><ul><ul><li>Allocate memory in two stages </li></ul></ul></ul><ul><ul><ul><li>Read and/or write protection for virtual memory </li></ul></ul></ul><ul><ul><ul><li>Lock virtual pages in physical memory </li></ul></ul></ul><ul><ul><ul><li>Retrieve information about virtual pages </li></ul></ul></ul><ul><ul><ul><li>Protect virtual pages </li></ul></ul></ul><ul><ul><ul><li>Rewrite virtual pages to disk </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  26. 26. Virtual Memory Implementation <ul><li>VM manager reliance </li></ul><ul><ul><li>Address space management </li></ul></ul><ul><ul><li>Paging techniques </li></ul></ul><ul><li>Address space management </li></ul><ul><ul><li>Upper half of virtual address space </li></ul></ul><ul><ul><ul><li>Accessible only to kernel-mode processes </li></ul></ul></ul><ul><ul><li>Code in lower part (kernel code and data) </li></ul></ul><ul><ul><ul><li>Never paged out of memory </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  27. 27. Virtual Memory Implementation (continued) <ul><li>Paging (VM manager is pager) </li></ul><ul><ul><li>Transfers pages </li></ul></ul><ul><ul><ul><li>Between memory page frames and disk storage </li></ul></ul></ul><ul><ul><li>Complex combination </li></ul></ul><ul><ul><ul><li>Software policies: when to bring a page into memory and where to put it </li></ul></ul></ul><ul><ul><ul><li>Hardware mechanisms: exact manner VM Manager translates virtual addresses into physical addresses </li></ul></ul></ul><ul><ul><li>Pager not portable </li></ul></ul><ul><ul><li>Windows: small code and well isolated </li></ul></ul>Understanding Operating Systems, Fifth Edition
  28. 28. Virtual Memory Implementation (continued) <ul><li>Paging policies </li></ul><ul><ul><li>Dictate how and when paging done </li></ul></ul><ul><ul><li>Composition </li></ul></ul><ul><ul><ul><li>Fetch policy: determines when pager copies a page from disk to memory </li></ul></ul></ul><ul><ul><ul><li>Placement policy: determines where virtual page is loaded in memory </li></ul></ul></ul><ul><ul><ul><li>Replacement policy: determines which virtual page is removed from memory to make room for a new page </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  29. 29. Processor Management <ul><li>Windows </li></ul><ul><ul><li>Preemptive-multitasking, multithreaded operating system </li></ul></ul><ul><li>Windows NT process </li></ul><ul><ul><li>Requires at least one thread </li></ul></ul><ul><li>Default </li></ul><ul><ul><li>Process contains one thread </li></ul></ul>Understanding Operating Systems, Fifth Edition
  30. 30. Processor Management (continued) <ul><li>Thread composition </li></ul><ul><ul><li>A unique identifier </li></ul></ul><ul><ul><li>Contents of volatile set of registers indicating processor’s state </li></ul></ul><ul><ul><li>Two stacks used during thread’s execution </li></ul></ul><ul><ul><li>Private storage area: used by subsystems and dynamic-link libraries </li></ul></ul>Understanding Operating Systems, Fifth Edition
  31. 31. Processor Management (continued) <ul><li>Threads </li></ul><ul><ul><li>Thread components called thread’s context </li></ul></ul><ul><ul><li>Actual data forming context varies from one processor to another </li></ul></ul><ul><ul><li>Kernel </li></ul></ul><ul><ul><ul><li>Schedules threads for execution on a processor </li></ul></ul></ul><ul><ul><li>Thread actually executes code </li></ul></ul><ul><ul><li>Overhead incurred by thread is minimal </li></ul></ul><ul><ul><li>Unitasking </li></ul></ul><ul><ul><ul><li>Process with single thread </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  32. 32. Processor Management (continued) Understanding Operating Systems, Fifth Edition
  33. 33. Processor Management (continued) <ul><li>Multithreading using multitasking </li></ul><ul><ul><li>Systems with multiple processors </li></ul></ul><ul><ul><ul><li>Process has as many threads as CPUs available </li></ul></ul></ul><ul><ul><ul><li>All threads belonging to one process: share global variables, heap, environment strings </li></ul></ul></ul><ul><li>Versions of Windows since NT </li></ul><ul><ul><li>Include some synchronization mechanisms </li></ul></ul><ul><ul><ul><li>Avoid problems with multiple threads </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  34. 34. Processor Management (continued) Understanding Operating Systems, Fifth Edition
  35. 35. Device Management <ul><li>Windows NT I/O system and networking descendents provide: </li></ul><ul><ul><li>Multiple installable file systems (FAT, CDFS, NTFS ) </li></ul></ul><ul><ul><li>Services making device-driver development easy </li></ul></ul><ul><ul><ul><li>Workable on multiprocessor systems </li></ul></ul></ul><ul><ul><li>Adding drivers to the system (system administrators) </li></ul></ul><ul><ul><ul><li>Remove them dynamically </li></ul></ul></ul><ul><ul><li>Fast I/O processing </li></ul></ul><ul><ul><ul><li>Drivers written in high-level language </li></ul></ul></ul><ul><ul><li>Mapped file I/O capabilities </li></ul></ul><ul><ul><ul><li>Image activation, file caching, application use </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  36. 36. Device Management (continued) <ul><li>I/O system </li></ul><ul><ul><li>Packet driven </li></ul></ul><ul><ul><ul><li>I/O request represented by I/O request packet (IRP) </li></ul></ul></ul><ul><ul><li>IRP </li></ul></ul><ul><ul><ul><li>Data structure controlling how I/O operation processed at each step </li></ul></ul></ul><ul><li>I/O manager IRP creation </li></ul><ul><ul><li>Creates an IRP representing each I/O operation </li></ul></ul><ul><ul><li>Passes IRP to appropriate driver </li></ul></ul><ul><ul><li>Disposes of packet when operation complete </li></ul></ul>Understanding Operating Systems, Fifth Edition
  37. 37. Device Management (continued) <ul><li>Driver IRP receipt </li></ul><ul><ul><li>Performs specified operation </li></ul></ul><ul><ul><li>Passes it back to I/O manager or </li></ul></ul><ul><ul><li>Passes it through I/O manager to another driver for further processing </li></ul></ul>Understanding Operating Systems, Fifth Edition
  38. 38. Device Management (continued) <ul><li>I/O manager tasks </li></ul><ul><ul><li>Supplies code, common to different drivers </li></ul></ul><ul><ul><li>Manages buffers for I/O requests </li></ul></ul><ul><ul><li>Provides time-out support for drivers </li></ul></ul><ul><ul><li>Records installable file systems loaded into operating system </li></ul></ul><ul><ul><li>Provides flexible I/O facilities </li></ul></ul><ul><ul><ul><li>Subsystems (POSIX) implement their respective I/O application programming interfaces </li></ul></ul></ul><ul><ul><li>Allows dynamic loading of device drivers and file systems </li></ul></ul><ul><ul><ul><li>Based on users’ needs </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  39. 39. Device Management (continued) <ul><li>Windows I/O services </li></ul><ul><ul><li>Device-independent model </li></ul></ul><ul><ul><ul><li>“ Multilayered device driver ” concept </li></ul></ul></ul><ul><li>Device driver made up of standard set of routines </li></ul><ul><ul><li>Initialization routine , dispatch routine, start I/O routine, completion routine , unload routine, error logging routine </li></ul></ul>Understanding Operating Systems, Fifth Edition
  40. 40. Device Management (continued) <ul><li>I/O manager </li></ul><ul><ul><li>Determine driver called to process request </li></ul></ul><ul><ul><ul><li>Using file object’s name </li></ul></ul></ul><ul><ul><li>Driver object </li></ul></ul><ul><ul><ul><li>Represents individual driver in system </li></ul></ul></ul><ul><ul><ul><li>I/O manager creates </li></ul></ul></ul><ul><ul><ul><li>Created when driver loaded into system </li></ul></ul></ul><ul><ul><ul><li>May have multiple device objects connected to it </li></ul></ul></ul><ul><ul><li>Device object </li></ul></ul><ul><ul><ul><li>Physical, logical, or virtual device on the system </li></ul></ul></ul><ul><ul><ul><li>Describes device characteristics </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  41. 41. Device Management (continued) Understanding Operating Systems, Fifth Edition
  42. 42. Device Management (continued) Understanding Operating Systems, Fifth Edition
  43. 43. Device Management (continued) <ul><li>Device objects list </li></ul><ul><ul><li>Represents physical, logical, virtual devices </li></ul></ul><ul><ul><li>Controlled by the driver </li></ul></ul><ul><li>Advantages of using different objects </li></ul><ul><ul><li>Portability </li></ul></ul><ul><ul><ul><li>Frees I/O manager from knowing details about drivers </li></ul></ul></ul><ul><ul><ul><li>Follows pointer to locate driver </li></ul></ul></ul><ul><ul><li>Easy loading of new drivers </li></ul></ul><ul><ul><li>Easy assigning drivers to control additional or different devices </li></ul></ul><ul><ul><ul><li>If system configuration changes </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  44. 44. Device Management (continued) Understanding Operating Systems, Fifth Edition
  45. 45. Device Management (continued) <ul><li>I/O manager knows nothing about file system </li></ul><ul><li>Overhead </li></ul><ul><ul><li>I/O manager passes information requests back and forth </li></ul></ul><ul><ul><li>Uses single-layer device driver approach </li></ul></ul><ul><ul><ul><li>Simple devices (serial and parallel printer ports) </li></ul></ul></ul><ul><ul><li>Uses multilayered approach </li></ul></ul><ul><ul><ul><li>More complicated devices (hard drives) </li></ul></ul></ul><ul><li>I/O operations asynchronous </li></ul><ul><ul><li>Almost all low-level operations </li></ul></ul>Understanding Operating Systems, Fifth Edition
  46. 46. File Management <ul><li>Windows current versions </li></ul><ul><ul><li>Designed to be independent of file system on which they operate </li></ul></ul><ul><ul><li>Support multiple file systems for hard disks including : </li></ul></ul><ul><ul><ul><li>MS-DOS’s FAT file system </li></ul></ul></ul><ul><ul><ul><li>32-bit FAT file system </li></ul></ul></ul><ul><ul><ul><li>NTFS </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  47. 47. File Management (continued) <ul><li>Virtual file </li></ul><ul><ul><li>Primary file handling concept (current windows) </li></ul></ul><ul><ul><li>Programs perform I/O on virtual files </li></ul></ul><ul><ul><ul><li>File handles manipulate them </li></ul></ul></ul><ul><ul><li>Executive file object representing all sources and destinations of I/O </li></ul></ul><ul><li>Processes call native file object services to read from or write to file </li></ul><ul><li>I/O manager directs virtual file requests </li></ul><ul><ul><li>Real files, file directories, physical devices </li></ul></ul>Understanding Operating Systems, Fifth Edition
  48. 48. File Management (continued) <ul><li>File objects </li></ul><ul><ul><li>Hierarchical names </li></ul></ul><ul><ul><li>Protected by object-based security </li></ul></ul><ul><ul><li>Support synchronization </li></ul></ul><ul><ul><li>Handled by object services </li></ul></ul><ul><li>Opening file </li></ul><ul><ul><li>Process supplies file’s name and type of access required </li></ul></ul>Understanding Operating Systems, Fifth Edition
  49. 49. File Management (continued) <ul><li>File objects bridge gap </li></ul><ul><ul><li>Between physical devices’ characteristics and directory structures, file system structures, data formats </li></ul></ul><ul><li>Provides memory-based representation of shareable physical resources </li></ul><ul><li>Created with new set of handle-specific attributes </li></ul><ul><ul><li>Each time process opens a handle </li></ul></ul>Understanding Operating Systems, Fifth Edition
  50. 50. File Management (continued) Understanding Operating Systems, Fifth Edition
  51. 51. File Management (continued) Understanding Operating Systems, Fifth Edition
  52. 52. File Management (continued) <ul><li>Mapped file I/O </li></ul><ul><ul><li>Important feature of I/O system </li></ul></ul><ul><ul><li>Achieved by cooperation with I/O system and VM Manager </li></ul></ul><ul><ul><li>Memory-mapped files exploit VM capabilities </li></ul></ul><ul><li>Cache manager uses mapped I/O </li></ul><ul><ul><li>Manages its memory-based cache </li></ul></ul><ul><li>File management system supports long filenames </li></ul><ul><ul><li>Include spaces and special characters </li></ul></ul><ul><ul><li>Automatically shortens filenames when required </li></ul></ul>Understanding Operating Systems, Fifth Edition
  53. 53. Network Management <ul><li>Networking </li></ul><ul><ul><li>Integral to Windows NT-based operating systems </li></ul></ul><ul><ul><li>Provides services </li></ul></ul><ul><ul><ul><li>User accounts , resource security </li></ul></ul></ul><ul><ul><ul><li>Communication between computers </li></ul></ul></ul><ul><ul><li>Named pipes </li></ul></ul><ul><ul><ul><li>Provide high-level interface for passing data between two processes (regardless of locations) </li></ul></ul></ul><ul><ul><li>Mailslots </li></ul></ul><ul><ul><ul><li>Provide one-to-many and many-to-one communication mechanisms </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  54. 54. MS-NET <ul><li>Microsoft Networks ( MS-NET ) </li></ul><ul><ul><li>Released in 1984 </li></ul></ul><ul><ul><li>Model for NT Network Manager </li></ul></ul><ul><li>Three components </li></ul><ul><ul><li>Redirector </li></ul></ul><ul><ul><li>Server message block (SMB) protocol </li></ul></ul><ul><ul><li>Network server </li></ul></ul><ul><li>MS-NET components </li></ul><ul><ul><li>Extensively refurbished and incorporated into Windows NT and later versions </li></ul></ul>Understanding Operating Systems, Fifth Edition
  55. 55. MS-NET (continued) <ul><li>Redirector </li></ul><ul><ul><li>Coded in C programming language </li></ul></ul><ul><ul><li>Implemented as loadable file system driver </li></ul></ul><ul><ul><li>Not dependent on system’s hardware architecture </li></ul></ul><ul><ul><li>Function </li></ul></ul><ul><ul><ul><li>Direct I/O request from user or application to remote server that has appropriate file or resource </li></ul></ul></ul><ul><li>Network can incorporate multiple redirectors </li></ul>Understanding Operating Systems, Fifth Edition
  56. 56. MS-NET (continued) <ul><li>SMB Protocol </li></ul><ul><ul><li>High-level specification </li></ul></ul><ul><ul><ul><li>Formatting messages sent across network </li></ul></ul></ul><ul><ul><li>OSI model correlation </li></ul></ul><ul><ul><ul><li>Application layer (layer 7) </li></ul></ul></ul><ul><ul><ul><li>Presentation layer (layer 6) </li></ul></ul></ul><ul><ul><li>API called NETBIOS interface </li></ul></ul><ul><ul><ul><li>Used to pass I/O requests structured in SMB format to remote computer </li></ul></ul></ul><ul><ul><li>SMB protocols and NETBIOS API </li></ul></ul><ul><ul><ul><li>Adopted in several networking products before appearing in Windows </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  57. 57. MS-NET (continued) <ul><li>Windows Server operating systems </li></ul><ul><ul><li>Written in C </li></ul></ul><ul><ul><ul><li>Complete compatibility with existing MS-NET and LAN manager SMB protocols </li></ul></ul></ul><ul><ul><li>Implemented as loadable file system drivers </li></ul></ul><ul><ul><li>No dependency on hardware architecture </li></ul></ul><ul><ul><ul><li>Where operating system running </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  58. 58. MS-NET (continued) Understanding Operating Systems, Fifth Edition
  59. 59. Directory Services <ul><li>Active Directory </li></ul><ul><ul><li>Database storing all information types </li></ul></ul><ul><ul><li>General-purpose directory service for heterogeneous network </li></ul></ul><ul><ul><li>Built entirely around DNS and LDAP </li></ul></ul><ul><ul><li>Groups machines into administrative units called domains </li></ul></ul><ul><ul><ul><li>Each domain gets a DNS domain name ( e.g., pitt.edu) </li></ul></ul></ul><ul><ul><ul><li>Each domain must have at least one domain controller </li></ul></ul></ul><ul><ul><ul><li>Domain can have more than one domain controller </li></ul></ul></ul><ul><ul><li>Active Directory clients use standard DNS and LDAP protocols to locate objects on the network </li></ul></ul>Understanding Operating Systems, Fifth Edition
  60. 60. Directory Services (continued) Understanding Operating Systems, Fifth Edition
  61. 61. Security Management <ul><li>Windows network operating systems </li></ul><ul><ul><li>Provide object-based security model </li></ul></ul><ul><ul><li>Security object </li></ul></ul><ul><ul><ul><li>Represent any resource in system (file, device, process, program, or user) </li></ul></ul></ul><ul><ul><li>Allows administrators to give precise security access </li></ul></ul><ul><ul><ul><li>To specific objects in system allowing them to monitor and record how objects used </li></ul></ul></ul><ul><li>Windows biggest concern </li></ul><ul><ul><li>Aggressive patch management needed </li></ul></ul><ul><ul><ul><li>Combat many viruses and worms </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  62. 62. Security Basics <ul><li>U.S. Department of Defense </li></ul><ul><ul><li>Identified and categorized operating system features </li></ul></ul><ul><ul><li>Seven levels of security </li></ul></ul><ul><li>Compliance with Class C2 level security </li></ul><ul><ul><li>Features in Windows </li></ul></ul><ul><ul><ul><li>A secure logon facility </li></ul></ul></ul><ul><ul><ul><li>Discretionary access control </li></ul></ul></ul><ul><ul><ul><li>Auditing ability </li></ul></ul></ul><ul><ul><ul><li>Memory protection </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  63. 63. Security Basics (continued) <ul><li>Multilayered security system </li></ul><ul><ul><li>Strives to prevent access by unauthorized users </li></ul></ul><ul><li>Password management: first security layer </li></ul><ul><li>NTFS: second security layer </li></ul><ul><ul><li>File access security </li></ul></ul><ul><li>Distinguishes between owners and groups </li></ul><ul><li>Users decide operation types person is allowed to perform on a file </li></ul><ul><li>Gives user auditing capabilities </li></ul><ul><ul><li>Automatically keep s track of who uses files and how </li></ul></ul>Understanding Operating Systems, Fifth Edition
  64. 64. Security Terminology <ul><li>Built-in security </li></ul><ul><ul><li>Necessary element for managers of Web servers and networks </li></ul></ul><ul><ul><li>Requires authentication mechanism allowing client to prove identity to server </li></ul></ul><ul><ul><li>Client supplies authorization information </li></ul></ul><ul><ul><li>Server uses information to determine specific access rights given to client </li></ul></ul><ul><ul><li>Provides data integrity using various methods </li></ul></ul><ul><li>Windows uses Kerberos security </li></ul>Understanding Operating Systems, Fifth Edition
  65. 65. Security Terminology (continued) <ul><li>Kerberos Security </li></ul><ul><ul><li>Authentication, data integrity, data privacy, mutual authentication </li></ul></ul><ul><ul><li>Each domain has own Kerberos server </li></ul></ul><ul><ul><li>Microsoft implemented standard Kerberos protocol </li></ul></ul><ul><ul><li>Microsoft separate d users of distributed security services from their providers </li></ul></ul><ul><ul><ul><li>Allows support for many options without unusable complexity </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  66. 66. Security Terminology (continued) Understanding Operating Systems, Fifth Edition
  67. 67. User Interface <ul><li>Start an application </li></ul><ul><ul><li>Double-click application icon </li></ul></ul><ul><ul><li>Select it from Start menu </li></ul></ul><ul><li>Quit application </li></ul><ul><ul><li>Select Exit from File menu </li></ul></ul><ul><ul><li>Click “x” in top-right corner of window </li></ul></ul>Understanding Operating Systems, Fifth Edition
  68. 68. User Interface (continued) <ul><li>Start M enu </li></ul><ul><ul><li>Divides functions into logical groups </li></ul></ul><ul><ul><li>Users access common functions </li></ul></ul><ul><ul><ul><li>All Programs </li></ul></ul></ul><ul><ul><ul><li>Documents, Pictures, Music, and Computer </li></ul></ul></ul><ul><ul><ul><li>Control Panel </li></ul></ul></ul><ul><ul><ul><li>Help and Support </li></ul></ul></ul><ul><ul><ul><li>Search </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  69. 69. User Interface (continued) Understanding Operating Systems, Fifth Edition
  70. 70. User Interface (continued) <ul><li>Windows Task Manager </li></ul><ul><ul><li>Open </li></ul></ul><ul><ul><ul><li>Pressing and holding the CTRL, ALT, delete keys </li></ul></ul></ul><ul><ul><li>User view running applications and processes </li></ul></ul><ul><ul><ul><li>Set priorities of each </li></ul></ul></ul><ul><ul><li>User views information </li></ul></ul><ul><ul><ul><li>Performance, networking, users logged into system </li></ul></ul></ul><ul><li>Windows Explorer (standard utility program) </li></ul><ul><ul><li>Contains director, file display tools, file-finding tool </li></ul></ul><ul><ul><li>Series of pull-down menus </li></ul></ul><ul><ul><ul><li>File, Edit, View, Tools, Help, etc. </li></ul></ul></ul>Understanding Operating Systems, Fifth Edition
  71. 71. User Interface (continued) Understanding Operating Systems, Fifth Edition
  72. 72. User Interface (continued) Understanding Operating Systems, Fifth Edition
  73. 73. User Interface (continued) <ul><li>Networked systems </li></ul><ul><ul><li>Identify and access network resources </li></ul></ul><ul><ul><ul><li>Folders, printers, connections to other nodes </li></ul></ul></ul><ul><li>Command interface </li></ul><ul><ul><li>Resembles MS-DOS </li></ul></ul><ul><ul><li>Available from most Windows desktops </li></ul></ul><ul><li>Keyboard shortcuts : (CTRL+C for copy) </li></ul><ul><li>Built-in input methods and fonts for languages </li></ul><ul><li>Windows offers an on-screen keyboard </li></ul><ul><li>Resource monitor </li></ul>Understanding Operating Systems, Fifth Edition
  74. 74. User Interface (continued) Understanding Operating Systems, Fifth Edition
  75. 75. User Interface (continued) Understanding Operating Systems, Fifth Edition
  76. 76. User Interface (continued) Understanding Operating Systems, Fifth Edition
  77. 77. User Interface (continued) Understanding Operating Systems, Fifth Edition
  78. 78. User Interface (continued) Understanding Operating Systems, Fifth Edition
  79. 79. Summary <ul><li>Current Windows operating systems </li></ul><ul><ul><li>Ease-of-use with technical power </li></ul></ul><ul><ul><li>Operate network across several platforms </li></ul></ul><ul><li>Significant security controls </li></ul><ul><ul><li>Allowed inroads to organizations requiring consistent protection </li></ul></ul><ul><ul><li>Authentication models support new user interfaces </li></ul></ul><ul><ul><li>Implementation of different security architectures </li></ul></ul><ul><li>Require aggressive patch management </li></ul><ul><ul><li>Target of viruses and worms </li></ul></ul>Understanding Operating Systems, Fifth Edition

×