OPERATING SYSTEMS Software in the Background Chapter 2
Objectives <ul><li>Describe the functions of an Operating System </li></ul><ul><li>Explain the basics of a personal comput...
Contents <ul><li>Operating System: Hidden Software </li></ul><ul><li>Systems Software </li></ul><ul><li>Functions of OS </...
Operating System Hidden Software <ul><li>Definition – provides access to all resources </li></ul><ul><li>Kernel </li></ul>...
Systems Software <ul><li>Definition: </li></ul><ul><ul><li>All programs related to coordinating computer operations </li><...
Functions of OS <ul><li>Manage the computer’s resources </li></ul><ul><ul><li>CPU </li></ul></ul><ul><ul><li>Memory </li><...
User Interface <ul><li>Facilitates communication between the user and the operating system </li></ul><ul><li>Two forms </l...
Platform <ul><li>Definition: </li></ul><ul><ul><li>Computer hardware and operating system software that dictate what other...
OS is Hidden <ul><li>User interested in application software to make the PC useful </li></ul><ul><li>Application software ...
Types of OS <ul><li>Command line </li></ul><ul><li>Single user PC </li></ul><ul><li>Network Operating System (NOS) </li></ul>
MS-DOS <ul><li>Command-line interface </li></ul><ul><li>Prompt – system is waiting for you to do something </li></ul><ul><...
Microsoft Windows <ul><li>Graphical user interface </li></ul><ul><li>Eases access to the OS </li></ul><ul><li>Most new com...
GUI <ul><li>On-screen pictures </li></ul><ul><ul><li>Icons </li></ul></ul><ul><ul><li>Menus </li></ul></ul><ul><ul><ul><li...
Early Days of Windows <ul><ul><li>Operating environment for MS-DOS </li></ul></ul><ul><ul><li>Shell – layer added between ...
Windows Today <ul><li>Home/consumer market </li></ul><ul><ul><li>Windows 95 </li></ul></ul><ul><ul><li>Windows 98 </li></u...
Windows 95 and 98 <ul><li>Self-contained OS </li></ul><ul><li>DOS commands still available </li></ul><ul><li>Start program...
Windows 98 Additions <ul><li>Internet / intranet browsing </li></ul><ul><li>Support for DVD and additional multimedia comp...
Improved Windows Features <ul><li>Backup </li></ul><ul><li>Interfaces with other software </li></ul><ul><li>Networking fea...
Windows <ul><li>Helps reduce the cost of owning and maintaining a PC </li></ul>
Windows ME Millennium Edition <ul><li>Multimedia support -- Windows Media Player 7 </li></ul><ul><li>Jukebox </li></ul><ul...
Windows ME Millennium Edition <ul><li>Reliability Features </li></ul><ul><ul><li>System File Protection </li></ul></ul><ul...
Windows NT New Technology <ul><li>Engineered for stability </li></ul><ul><li>Strong security </li></ul><ul><li>Versions </...
Windows 2000 <ul><li>Stability features </li></ul><ul><li>Security features </li></ul><ul><li>Uses simple approach to hard...
Windows 2000 <ul><li>Complex </li></ul><ul><li>Heavy demand for computer resources </li></ul><ul><li>Improvements over win...
Windows XP <ul><li>Extends Windows ME and provides a more stable environment   </li></ul><ul><li>Two categories   </li></u...
Windows CE   Consumer Electronics <ul><li>Where used </li></ul><ul><li>Embedded systems </li></ul><ul><ul><li>Industrial c...
Windows CE   Consumer Electronics <ul><li>Subset of Windows </li></ul><ul><li>Less memory </li></ul><ul><li>Smaller screen...
Accessibility Options <ul><li>Seeing </li></ul><ul><li>Hearing </li></ul><ul><li>Touching </li></ul>
Mac OS <ul><li>First commercially successful GUI (1984) </li></ul><ul><li>Served as a model to other GUI systems </li></ul>
UNIX <ul><li>Supports </li></ul><ul><ul><li>Multi-user </li></ul></ul><ul><ul><li>Time-sharing </li></ul></ul><ul><li>Char...
LINUX <ul><li>UNIX-like OS </li></ul><ul><li>Open-source software </li></ul><ul><ul><li>Download it free </li></ul></ul><u...
LINUX <ul><li>Advantages over Windows </li></ul><ul><ul><li>Extremely stable </li></ul></ul><ul><ul><li>Internet support <...
Network Operating System  NOS <ul><li>Designed to permit computers on a network to share resources </li></ul><ul><li>Examp...
NOS Functions <ul><li>Split between client and server computers </li></ul><ul><li>Server </li></ul><ul><ul><li>File manage...
Large Computers <ul><li>Used by many people at once </li></ul><ul><li>OS works “behind the scenes” so users can share </li...
Resource Allocation <ul><li>Resource – hardware or software that is needed to complete a task </li></ul><ul><li>Resource A...
Allocating the CPU <ul><li>One CPU </li></ul><ul><ul><li>Multiprogramming </li></ul></ul><ul><ul><ul><li>Event-driven </li...
Multiprogramming <ul><li>One CPU </li></ul><ul><li>Concurrent execution of two or more processes </li></ul><ul><ul><li>Sev...
Event-driven  Multiprogramming <ul><li>One program receives the attention of the CPU </li></ul><ul><li>Its processing will...
Event-driven  Multiprogramming Example <ul><li>Two programs are running – Payroll and Inventory Management </li></ul><ul><...
Event-driven  Multiprogramming Example <ul><li>When the read operation is complete, another interrupt is generated </li></...
Time-sharing  Multiprogramming <ul><li>One program receives the attention of the CPU </li></ul><ul><li>A small fraction of...
Sharing Memory <ul><li>Program must be in memory to be executed </li></ul><ul><li>Problems </li></ul><ul><ul><li>Programs ...
Memory Management <ul><li>The process of providing separate memory space to programs </li></ul><ul><li>Memory Protection k...
Memory Management Methods <ul><li>Partitions or regions </li></ul><ul><li>Foreground and background </li></ul><ul><li>Virt...
Partitions or Regions <ul><li>Divide memory into sections </li></ul><ul><li>The partition must accommodate the largest pos...
Foreground and Background <ul><li>Programs are placed in either  Foreground  or  Background </li></ul><ul><li>Programs in ...
Virtual Storage Virtual Memory <ul><li>Uses concept of Paging </li></ul><ul><li>Divide the program into equal-size pieces ...
<ul><li>Paging Process </li></ul><ul><li>A portion of the program is placed in memory </li></ul><ul><li>The remainder is o...
Virtual Storage Virtual Memory <ul><li>Problem -- Thrashing </li></ul><ul><ul><li>Too large a portion of CPU time is spent...
Memory Protection <ul><li>Keeps one program from straying into another </li></ul><ul><li>Confines each program to certain ...
Sharing Storage <ul><li>Several users need to access the same disk pack </li></ul><ul><ul><li>One wants to write </li></ul...
Sharing Printing Resources <ul><li>Print resources are shared between active programs </li></ul><ul><li>Printouts are gene...
Sharing Printing Resources <ul><li>Result </li></ul><ul><ul><li>Printout is worthless as it contains a few lines from seve...
Additional Printing Problem <ul><li>Printers are slow compared to the CPU speed </li></ul><ul><li>Solution </li></ul><ul><...
Utility Programs <ul><li>Come with System Software </li></ul><ul><li>Handle special needs </li></ul><ul><li>Perform second...
Functions of Utility programs <ul><li>File manager  – provide access to lists of stored files </li></ul><ul><li>Backup and...
 
Upcoming SlideShare
Loading in …5
×

OS

3,654 views

Published on

Presentation

Published in: Education, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,654
On SlideShare
0
From Embeds
0
Number of Embeds
1,126
Actions
Shares
0
Downloads
135
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

OS

  1. 1. OPERATING SYSTEMS Software in the Background Chapter 2
  2. 2. Objectives <ul><li>Describe the functions of an Operating System </li></ul><ul><li>Explain the basics of a personal computer operating system </li></ul><ul><li>Describe the advantages of a graphical operating system </li></ul><ul><li>Differentiate among different versions of Microsoft Windows </li></ul><ul><li>Explain the need for network operating systems </li></ul><ul><li>Describe the methods of resource allocation on large computers </li></ul><ul><li>Be able to describe the differences among multiprocessing, multiprogramming, and timesharing </li></ul><ul><li>Explain the principles of memory management </li></ul><ul><li>List several functions typically performed by utility programs </li></ul>
  3. 3. Contents <ul><li>Operating System: Hidden Software </li></ul><ul><li>Systems Software </li></ul><ul><li>Functions of OS </li></ul><ul><li>Types of OS </li></ul><ul><ul><li>MS-DOS </li></ul></ul><ul><ul><li>Microsoft Windows </li></ul></ul><ul><ul><li>Mac OS </li></ul></ul><ul><ul><li>UNIX </li></ul></ul><ul><ul><li>LINUX </li></ul></ul><ul><ul><li>Network Operating System NOS </li></ul></ul><ul><li>Resource Allocation </li></ul><ul><li>Utility Programs </li></ul>
  4. 4. Operating System Hidden Software <ul><li>Definition – provides access to all resources </li></ul><ul><li>Kernel </li></ul><ul><ul><li>Manages the operating system </li></ul></ul><ul><ul><li>Memory resident </li></ul></ul><ul><ul><li>Loads set of programs that lies between applications software and the hardware </li></ul></ul><ul><ul><li>Fundamental software that controls non-resident portions of the OS as needed </li></ul></ul><ul><li>Booting – Loads the kernel into memory </li></ul>
  5. 5. Systems Software <ul><li>Definition: </li></ul><ul><ul><li>All programs related to coordinating computer operations </li></ul></ul><ul><li>Components </li></ul><ul><ul><li>Operating System </li></ul></ul><ul><ul><li>Utility programs </li></ul></ul><ul><ul><li>Program language translators </li></ul></ul>
  6. 6. Functions of OS <ul><li>Manage the computer’s resources </li></ul><ul><ul><li>CPU </li></ul></ul><ul><ul><li>Memory </li></ul></ul><ul><ul><li>Disk drives </li></ul></ul><ul><ul><li>Printers </li></ul></ul><ul><li>Establish a user interface </li></ul><ul><li>Execute and provide services for applications software </li></ul><ul><li>Carries out all input and output operation </li></ul>
  7. 7. User Interface <ul><li>Facilitates communication between the user and the operating system </li></ul><ul><li>Two forms </li></ul><ul><ul><li>Command line </li></ul></ul><ul><ul><ul><li>Text-based </li></ul></ul></ul><ul><ul><ul><li>Key commands </li></ul></ul></ul><ul><ul><ul><li>Examples: MS-DOS, Unix </li></ul></ul></ul><ul><ul><li>Graphical user interface (GUI) </li></ul></ul><ul><ul><ul><li>Visual images </li></ul></ul></ul><ul><ul><ul><li>Menus </li></ul></ul></ul><ul><ul><ul><li>Examples: Windows, Mac OS, Linux </li></ul></ul></ul>
  8. 8. Platform <ul><li>Definition: </li></ul><ul><ul><li>Computer hardware and operating system software that dictate what other software can run </li></ul></ul><ul><li>Wintel </li></ul><ul><ul><li>Intel-based PC running Microsoft Windows </li></ul></ul>
  9. 9. OS is Hidden <ul><li>User interested in application software to make the PC useful </li></ul><ul><li>Application software is platform specific </li></ul><ul><li>User must be aware of the type of OS </li></ul><ul><li>User should be aware of the functions of OS </li></ul>
  10. 10. Types of OS <ul><li>Command line </li></ul><ul><li>Single user PC </li></ul><ul><li>Network Operating System (NOS) </li></ul>
  11. 11. MS-DOS <ul><li>Command-line interface </li></ul><ul><li>Prompt – system is waiting for you to do something </li></ul><ul><li>Key a command </li></ul><ul><li>Not user-friendly </li></ul>
  12. 12. Microsoft Windows <ul><li>Graphical user interface </li></ul><ul><li>Eases access to the OS </li></ul><ul><li>Most new computers come with Windows already installed </li></ul>
  13. 13. GUI <ul><li>On-screen pictures </li></ul><ul><ul><li>Icons </li></ul></ul><ul><ul><li>Menus </li></ul></ul><ul><ul><ul><li>Pull down </li></ul></ul></ul><ul><ul><ul><li>Pop up </li></ul></ul></ul><ul><ul><li>Click to activate a command or function </li></ul></ul><ul><li>Fast </li></ul><ul><li>Easy </li></ul><ul><li>Intuitive </li></ul>
  14. 14. Early Days of Windows <ul><ul><li>Operating environment for MS-DOS </li></ul></ul><ul><ul><li>Shell – layer added between users and DOS </li></ul></ul>
  15. 15. Windows Today <ul><li>Home/consumer market </li></ul><ul><ul><li>Windows 95 </li></ul></ul><ul><ul><li>Windows 98 </li></ul></ul><ul><ul><li>Windows Millennium Edition (ME) </li></ul></ul><ul><li>Corporate market </li></ul><ul><ul><li>Windows NT </li></ul></ul><ul><ul><li>Windows 2000 </li></ul></ul><ul><li>Windows XP </li></ul><ul><li>Pocket computers and Internet appliances </li></ul><ul><ul><li>Windows CE </li></ul></ul>
  16. 16. Windows 95 and 98 <ul><li>Self-contained OS </li></ul><ul><li>DOS commands still available </li></ul><ul><li>Start programs by </li></ul><ul><ul><li>Start button </li></ul></ul><ul><ul><li>Double clicking the icon </li></ul></ul><ul><li>Task bar permits movement between open programs </li></ul><ul><li>Long file names up to 255 characters </li></ul><ul><li>Plug and play </li></ul><ul><li>Object linking and embedding (OLE) </li></ul>
  17. 17. Windows 98 Additions <ul><li>Internet / intranet browsing </li></ul><ul><li>Support for DVD and additional multimedia components </li></ul><ul><li>Support for large hard drives </li></ul><ul><li>TV viewer and broadcast ability </li></ul><ul><li>Wizards </li></ul>
  18. 18. Improved Windows Features <ul><li>Backup </li></ul><ul><li>Interfaces with other software </li></ul><ul><li>Networking features </li></ul><ul><li>Security </li></ul><ul><li>Dr. Watson </li></ul>
  19. 19. Windows <ul><li>Helps reduce the cost of owning and maintaining a PC </li></ul>
  20. 20. Windows ME Millennium Edition <ul><li>Multimedia support -- Windows Media Player 7 </li></ul><ul><li>Jukebox </li></ul><ul><ul><li>Record music CDs as digital files </li></ul></ul><ul><li>Windows Movie Maker </li></ul><ul><ul><li>Basic video editing </li></ul></ul><ul><li>Windows Image Acquisition </li></ul><ul><ul><li>Scanner and digital camera </li></ul></ul>
  21. 21. Windows ME Millennium Edition <ul><li>Reliability Features </li></ul><ul><ul><li>System File Protection </li></ul></ul><ul><ul><li>AutoUpdate </li></ul></ul><ul><ul><li>System Restore </li></ul></ul><ul><li>Help Center </li></ul><ul><li>Home Network Support </li></ul><ul><ul><li>Wizard for connecting multiple computers and peripherals </li></ul></ul><ul><ul><li>Multiple users can share a single Internet connection </li></ul></ul>
  22. 22. Windows NT New Technology <ul><li>Engineered for stability </li></ul><ul><li>Strong security </li></ul><ul><li>Versions </li></ul><ul><ul><li>NT Workstation </li></ul></ul><ul><ul><li>NT Server </li></ul></ul><ul><li>Drawbacks </li></ul><ul><ul><li>Lacks support for older Windows and MS-DOS software and hardware </li></ul></ul><ul><ul><li>Complex to learn and use </li></ul></ul><ul><ul><li>Requires more memory and processing power </li></ul></ul>
  23. 23. Windows 2000 <ul><li>Stability features </li></ul><ul><li>Security features </li></ul><ul><li>Uses simple approach to hardware setup from Windows 98 </li></ul><ul><li>Versions </li></ul><ul><ul><li>Windows 2000 Professional for individual users </li></ul></ul><ul><ul><li>Windows 2000 for network servers </li></ul></ul><ul><li>Was intended for both the corporate and home use, replacing Win NT and Win 98 </li></ul>
  24. 24. Windows 2000 <ul><li>Complex </li></ul><ul><li>Heavy demand for computer resources </li></ul><ul><li>Improvements over windows NT </li></ul><ul><ul><li>Maintains user preferences </li></ul></ul><ul><ul><li>Self-healing applications software </li></ul></ul><ul><ul><li>Supports Windows 98 file structure </li></ul></ul><ul><ul><li>Uses plug and play </li></ul></ul><ul><ul><li>Provides improved support for laptops </li></ul></ul>
  25. 25. Windows XP <ul><li>Extends Windows ME and provides a more stable environment </li></ul><ul><li>Two categories </li></ul><ul><ul><li>Network server </li></ul></ul><ul><ul><ul><li>3 versions based upon network complexity </li></ul></ul></ul><ul><ul><li>Desktop computer </li></ul></ul><ul><ul><ul><li>2 versions </li></ul></ul></ul><ul><ul><ul><ul><li>Professional Client </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Personal Client </li></ul></ul></ul></ul>
  26. 26. Windows CE Consumer Electronics <ul><li>Where used </li></ul><ul><li>Embedded systems </li></ul><ul><ul><li>Industrial controllers </li></ul></ul><ul><ul><li>Robots </li></ul></ul><ul><ul><li>Office equipment </li></ul></ul><ul><ul><li>Cameras </li></ul></ul><ul><ul><li>Telephones </li></ul></ul><ul><ul><li>Home entertainment devices </li></ul></ul><ul><ul><li>Automobile navigation systems </li></ul></ul><ul><li>Pocket PC </li></ul><ul><li>Internet appliance market </li></ul>
  27. 27. Windows CE Consumer Electronics <ul><li>Subset of Windows </li></ul><ul><li>Less memory </li></ul><ul><li>Smaller screens </li></ul><ul><li>Little or no file storage </li></ul><ul><li>Provides Internet connectivity </li></ul>
  28. 28. Accessibility Options <ul><li>Seeing </li></ul><ul><li>Hearing </li></ul><ul><li>Touching </li></ul>
  29. 29. Mac OS <ul><li>First commercially successful GUI (1984) </li></ul><ul><li>Served as a model to other GUI systems </li></ul>
  30. 30. UNIX <ul><li>Supports </li></ul><ul><ul><li>Multi-user </li></ul></ul><ul><ul><li>Time-sharing </li></ul></ul><ul><li>Character-based system </li></ul><ul><li>Command-line interface </li></ul><ul><li>Runs on various processors and many types of computers </li></ul><ul><li>Primary OS used on Internet servers </li></ul>
  31. 31. LINUX <ul><li>UNIX-like OS </li></ul><ul><li>Open-source software </li></ul><ul><ul><li>Download it free </li></ul></ul><ul><ul><li>Make changes </li></ul></ul><ul><ul><li>Distribute copies </li></ul></ul><ul><ul><li>Restriction – any changes must be freely available to the public </li></ul></ul><ul><li>PC Setup </li></ul><ul><ul><li>PC comes with Windows installed </li></ul></ul><ul><ul><li>Install LINUX in a dual-boot configuration </li></ul></ul>
  32. 32. LINUX <ul><li>Advantages over Windows </li></ul><ul><ul><li>Extremely stable </li></ul></ul><ul><ul><li>Internet support </li></ul></ul><ul><ul><li>Reinstallation is simpler </li></ul></ul><ul><li>Disadvantage </li></ul><ul><ul><li>Scarcity of applications </li></ul></ul>
  33. 33. Network Operating System NOS <ul><li>Designed to permit computers on a network to share resources </li></ul><ul><li>Examples </li></ul><ul><ul><li>Windows 2000 Server </li></ul></ul><ul><ul><li>Novell Net Ware </li></ul></ul><ul><li>Provides </li></ul><ul><ul><li>Data security </li></ul></ul><ul><ul><li>Troubleshooting </li></ul></ul><ul><ul><li>Administrative control </li></ul></ul>
  34. 34. NOS Functions <ul><li>Split between client and server computers </li></ul><ul><li>Server </li></ul><ul><ul><li>File management </li></ul></ul><ul><li>Client </li></ul><ul><ul><li>Requests to the server </li></ul></ul><ul><ul><li>Messaging </li></ul></ul><ul><ul><li>Has own local OS </li></ul></ul><ul><li>Makes the resources appear as if they are local to the client’s computer </li></ul>
  35. 35. Large Computers <ul><li>Used by many people at once </li></ul><ul><li>OS works “behind the scenes” so users can share </li></ul><ul><li>OS must control </li></ul><ul><ul><li>Who gets access to resources </li></ul></ul><ul><ul><li>What keeps the programs from different users from getting mixed up with one another </li></ul></ul>
  36. 36. Resource Allocation <ul><li>Resource – hardware or software that is needed to complete a task </li></ul><ul><li>Resource Allocation – assigning computer resources to certain programs </li></ul><ul><li>Resource De-allocation – releasing resources when a task is complete </li></ul>
  37. 37. Allocating the CPU <ul><li>One CPU </li></ul><ul><ul><li>Multiprogramming </li></ul></ul><ul><ul><ul><li>Event-driven </li></ul></ul></ul><ul><ul><ul><li>Timesharing </li></ul></ul></ul><ul><li>More than one CPU </li></ul><ul><ul><li>Multiprocessing – multiple CPUs can run several programs simultaneously </li></ul></ul>
  38. 38. Multiprogramming <ul><li>One CPU </li></ul><ul><li>Concurrent execution of two or more processes </li></ul><ul><ul><li>Several processes open at once </li></ul></ul><ul><ul><li>Only one process can receive the attention of the CPU at any given moment </li></ul></ul><ul><ul><li>Effective because CPU speeds are many times faster than input/output speeds </li></ul></ul>
  39. 39. Event-driven Multiprogramming <ul><li>One program receives the attention of the CPU </li></ul><ul><li>Its processing will be interrupted based upon events in the program </li></ul><ul><li>When processing needs to be temporarily suspended, an interrupt is generated </li></ul><ul><li>This is a signal to the operating system to evaluate the cause of the interrupt and determine who should now have CPU time </li></ul>
  40. 40. Event-driven Multiprogramming Example <ul><li>Two programs are running – Payroll and Inventory Management </li></ul><ul><li>Payroll needs to read an employee record </li></ul><ul><li>Payroll generates an interrupt </li></ul><ul><li>Normal processing is temporarily suspended </li></ul><ul><li>The CPU looks at the interrupt and initiates the read operation </li></ul><ul><li>While waiting for the read to complete, the CPU begins processing the Inventory Management program </li></ul>
  41. 41. Event-driven Multiprogramming Example <ul><li>When the read operation is complete, another interrupt is generated </li></ul><ul><li>Normal processing is temporarily suspended </li></ul><ul><li>The CPU looks at the interrupt and determines its cause </li></ul><ul><li>The CPU will either continue processing the Inventory Management program or return to the Payroll program depending upon their priority </li></ul>
  42. 42. Time-sharing Multiprogramming <ul><li>One program receives the attention of the CPU </li></ul><ul><li>A small fraction of CPU time is allocated to the program </li></ul><ul><li>The time slice ends </li></ul><ul><li>The CPU begins processing a different program </li></ul><ul><li>Response time can vary based upon the number of users on the system </li></ul>
  43. 43. Sharing Memory <ul><li>Program must be in memory to be executed </li></ul><ul><li>Problems </li></ul><ul><ul><li>Programs compete for space </li></ul></ul><ul><ul><li>May have a very large program </li></ul></ul><ul><ul><li>Memory space for each program must not overlap </li></ul></ul>
  44. 44. Memory Management <ul><li>The process of providing separate memory space to programs </li></ul><ul><li>Memory Protection keeps one program from interfering with another </li></ul>
  45. 45. Memory Management Methods <ul><li>Partitions or regions </li></ul><ul><li>Foreground and background </li></ul><ul><li>Virtual storage (virtual memory) </li></ul>
  46. 46. Partitions or Regions <ul><li>Divide memory into sections </li></ul><ul><li>The partition must accommodate the largest possible program </li></ul><ul><li>Problem </li></ul><ul><ul><li>May cause wasted memory space </li></ul></ul>
  47. 47. Foreground and Background <ul><li>Programs are placed in either Foreground or Background </li></ul><ul><li>Programs in Foreground have priority for CPU time </li></ul><ul><li>While performing read / write operations for the Foreground program, the CPU gives time to a program in Background </li></ul><ul><li>Programs are placed in a holding queue while waiting to run </li></ul>
  48. 48. Virtual Storage Virtual Memory <ul><li>Uses concept of Paging </li></ul><ul><li>Divide the program into equal-size pieces (pages) </li></ul><ul><li>Store each piece in equal-size memory spaces (page frames) </li></ul><ul><li>Typical size is 2KB or 4KB </li></ul><ul><li>Create an index to each page and store in a Page Table </li></ul>
  49. 49. <ul><li>Paging Process </li></ul><ul><li>A portion of the program is placed in memory </li></ul><ul><li>The remainder is on disk </li></ul><ul><li>Sections on disk will be brought into memory as needed (one page at a time) </li></ul>Virtual Storage Virtual Memory
  50. 50. Virtual Storage Virtual Memory <ul><li>Problem -- Thrashing </li></ul><ul><ul><li>Too large a portion of CPU time is spent locating the correct page and bringing it into memory </li></ul></ul><ul><li>Solution </li></ul><ul><ul><li>Run fewer programs concurrently </li></ul></ul><ul><ul><li>Add memory </li></ul></ul>
  51. 51. Memory Protection <ul><li>Keeps one program from straying into another </li></ul><ul><li>Confines each program to certain defined limits in memory </li></ul><ul><li>Why needed </li></ul><ul><ul><li>Possible for one program to destroy or modify another by transferring to the wrong memory location </li></ul></ul><ul><ul><li>May cause destruction of data </li></ul></ul><ul><li>Action if assigned memory space is violated </li></ul><ul><ul><li>Termination of executing program </li></ul></ul>
  52. 52. Sharing Storage <ul><li>Several users need to access the same disk pack </li></ul><ul><ul><li>One wants to write </li></ul></ul><ul><ul><li>Another wants to read </li></ul></ul><ul><li>OS keeps track of the I/O requests </li></ul><ul><li>OS processes I/O requests in order received </li></ul>
  53. 53. Sharing Printing Resources <ul><li>Print resources are shared between active programs </li></ul><ul><li>Printouts are generated in pieces as the CPU gives each concurrent program some time </li></ul><ul><li>Problem </li></ul><ul><ul><li>The current program may generate a few print lines </li></ul></ul><ul><ul><li>The CPU moves to the next program </li></ul></ul><ul><ul><li>The second program may generate a few print lines, etc. </li></ul></ul>
  54. 54. Sharing Printing Resources <ul><li>Result </li></ul><ul><ul><li>Printout is worthless as it contains a few lines from several programs </li></ul></ul><ul><li>Solution – Spooling </li></ul><ul><ul><li>Each program thinks it is writing to the printer </li></ul></ul><ul><ul><li>The program actually writes to the hard disk </li></ul></ul><ul><ul><li>When the program is complete, the file on the hard disk is sent to the printer </li></ul></ul>
  55. 55. Additional Printing Problem <ul><li>Printers are slow compared to the CPU speed </li></ul><ul><li>Solution </li></ul><ul><ul><li>The CPU writing to the disk </li></ul></ul><ul><ul><li>The program completes quicker </li></ul></ul>
  56. 56. Utility Programs <ul><li>Come with System Software </li></ul><ul><li>Handle special needs </li></ul><ul><li>Perform secondary chores </li></ul><ul><li>Do not need to be memory resident </li></ul>
  57. 57. Functions of Utility programs <ul><li>File manager – provide access to lists of stored files </li></ul><ul><li>Backup and Restore – make duplicate copies of important files and return the copy to the hard drive if needed </li></ul><ul><li>File compression – reduces the amount of disk space required by a file </li></ul><ul><li>Disk defragmenter – reorganize files so they are stored contiguously on disk providing for faster access </li></ul><ul><li>Device drivers – convert operating system instructions into commands that are known to a specific device </li></ul>

×