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