Lecture 13 Operating Systems Introduction to Information Technology Lecture 13 Operating Systems Dr. Ken Tsang 曾镜涛 Email: kentsang@uic.edu.hk http://www.uic.edu.hk/~kentsang/IT/IT3.htm Room E408 R9 With thanks to Dr. HP Guo
Outline Software Basics What is an Operating System History of Operating Systems Booting the Computer Functions of Operating Systems Types of Operating Systems Utility Programs in Windows XP
The Computer Level Hierarchy
Software Basics Computer = Hardware + Software Software Application software Address users' specific needs in the real world word processing, music software, image editing, games, database programs, inventory control systems, etc. System software Operating system Device drivers Utilities Programming software tools (compilers, debuggers, etc.)
Computer System
Who Creates Computer Software? Programmers High-level language, easy for humans C++, Java, etc Low-level language, used by CPU Machine language Compiler Translate high-level language into low-level language
Compilation
Operating Systems A set of programs containing instructions that maintain and manage the computer resources, such as CPU, memory and input/output devices Provide an interface through which the user can interact with the computer The core of a computer’s system software
History of Operating Systems Batch processing Professional operators (humans!) combined decks of cards into batches, or bundles, with the appropriate instructions allowing them to be processed with minimal intervention A program called a resident monitor allowed programs to be processed without human interaction
History of Operating Systems Resident Monitors Monitors were the precursors of modern day operating systems The monitor started the job, gave control of the computer to the job, and when the job was done, the monitor resumed control of the machine
Spooling Increases in CPU performance made punched card batch processing less efficient Magnetic tape (as buffer) offered one way to process decks faster SPOOLing Simultaneous Peripheral Operation Online Allows I/O and CPU computations to occur in parallel the simplest form of multiprogramming Spooling example: print spooling
History of Operating Systems Multiprogramming Systems allow several executing programs to be in memory concurrently Timesharing system permits many users to share the same CPU the CPU switches between user sessions very quickly, giving each user a small slice of processor time
Evolution of Operating Systems First-generation computers Hardware: vacuum tubes and relays Human operators Second-generation Computers Hardware: transistors Batch processing was introduced as a means to keep the CPU busy Monitors helped with the processing spooling
Evolution of Operating Systems Third-generation computers Hardware: integrated circuits timesharing Fourth-generation Computers Hardware: VLSI Today’s multi-task, multi-user operating systems
Functions of an Operating System? start the computer provide a user interface manage programs administer security manage memory control a network provide file management and other utilities monitor performance establish an Internet connection schedule jobs and configure devices
Start the Computer What is booting? Process of starting or restarting a computer Cold boot Turning on computer that has been powered off Warm boot Restarting computer that is powered on
Dual-Boot Dual-Boot permits two or more operating systems to be installed on one computer
How does a personal computer boot up? Step 1. Power supply sends signal to components in system unit Step 4. Results of POST are compared with data in CMOS chip Step 5. BIOS looks for system files in floppy disk drive or CD/DVD drive, and then hard disk Step 2. Processor accesses BIOS to start computer Step 6. Kernel (core) of operating system loads into RAM Step 3. BIOS runs tests, called the POST, to check components such as mouse, keyboard, and adapter cards Step 7. Operating system loads configuration information and displays desktop on screen
User Interface What is a user interface? Controls how you enter data and instructions and how information displays on screen menu-driven interface command-line interface
GUI Graphical User Interface User interacts with menus and visual images such as icons and buttons
File System Hierarchical Directories
Windows File naming Four parts C:\Windows\System\WinTrust.hlp Drive Path File name File type (extension) C:\Windows\System\WinTrust.hlp
Single User / Multitasking Working on two or more programs that reside in memory at same time Foreground contains program you are using Background contains programs that are running but are not in use
Memory Management Optimizing use of random access memory (RAM) With virtual memory (VM), portion of hard disk is allocated to function as RAM This process is called paging When an OS spends much of its time paging, instead of executing application software, it is said to be thrashing
Scheduling Job Jobs A job is operation the processor manages Adjusts schedule based on job’s priority Jobs Receiving data from input device Sending information to output device A job is operation the processor manages Processing instructions Transferring items between storage and memory
Spooling Sending print jobs to buffer instead of directly to printer Print jobs line up in queue Addresses the “slow-I/O vs fast-CPU” problem
Program that tells operating system how to communicate with device Device Driver Device Driver Program that tells operating system how to communicate with device With Plug and Play, operating system automatically configures new devices as you install them Also called driver
Types of Operating System Stand-Alone Operating Systems works on a desktop computer, notebook computer, or mobile computing device Network Operating Systems designed specifically to support a network Embedded Operating Systems Found on most mobile computers, PDAs, and other small devices
DOS (Disk Operating System) Developed in early 1980s for personal computers O Used command-line interface when first developed, later included menus S Hardly used today because it does not offer GUI
DOS: Dirty Operating System Tim Paterson
Windows
More Windows
And More Windows
Coming soon: Windows Vista (Longhorn)
Windows Family Windows Version Year Released Windows 3.x 1990 Windows NT 3.1 1993 Windows 95 1995 Windows NT Workstation 4.0 1996 Windows 98 1998 Windows Millennium Edition 2000 Windows 2000 Professional 2000 Windows XP 2001 Windows XP SP2 2004
Windows XP Microsoft’s fastest, most reliable Windows operating system Five editions: Home Edition, Professional Edition, Tablet PC Edition, Media Center Edition, and 64-bit Edition
Mac OS X Available only for computers manufactured by Apple Macintosh operating system has been model for most GUIs
UNIX Used by power users because of its flexibility and power Most versions offer GUI Both a stand-alone and a network operating system
Unix: 1969 Ken Thompson Dennis Ritchie Father of C Turing Award
Dennis: A Professional Truck Driver
Ken: A Chess Player Belle: ACM chess tournament Championship in 80, 81, 82, 86
BSD Unix: 1977 BSD Unix vi BSD TCP/IP Co-founder of Sun 'It's very simple – you read the protocol and write the code.'" BSD Unix vi BSD TCP/IP Co-founder of Sun Sparc Microprocessor NFS(Network File System)
Linux Popular, free, multitasking UNIX-type operating system Open-source software code is available to public Both a stand-alone and a network operating system
GNU & Linux (1991) Richard Stallman Linus Torvalds
Others
Mac OS
Network OS NetWare UNIX / Linux Windows Server 2003 Solaris Designed for client/server networks Windows Server 2003 Upgrade to Windows 2000 Server UNIX / Linux Multi-purpose operating system Solaris Version of UNIX developed by Sun Microsystems Specifically for e-commerce applications
Embedded OS What are two operating systems for PDAs? Windows Mobile for Pocket PC Palm OS for Palm, Visor, and CLIE
Symbian OS Open-source, multitasking operating system designed for smart phones Make telephone calls, save appointments, browse Web, send and receive e-mail and faxes, and more
Utility Program System software that performs maintenance-type tasks Also called utility
Windows Explorer File Manager
System Information
Windows Registry A central record of all the settings and information relating to Windows and the software and hardware you have installed on your computer Use Regedit to change it
Registry Editor
Summary Software Basics What is an Operating System History of Operating Systems Booting the Computer Functions of Operating Systems Types of Operating Systems Utility Programs in Windows XP
The pdf slides and glossary are here: http://www.uic.edu.hk/~davetowey/teaching/CS/it1010/lectures/13.Operating.Systems.pdf http://www.uic.edu.hk/~davetowey/teaching/CS/it1010/lectures/2x2_13.Operating.Systems.pdf http://www.uic.edu.hk/~davetowey/teaching/CS/it1010/lectures/13.Glossary.pdf