590 likes | 1.03k Views
Lecture 13 Operating Systems. Introduction to Information Technology. 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
E N D
Lecture 13Operating Systems Introduction to Information Technology 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
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.)
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
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: vacuumtubes and relays • Humanoperators • Second-generation Computers • Hardware: transistors • Batchprocessing was introduced as a means to keep the CPU busy • Monitors helped with the processing • spooling
Evolution of Operating Systems • Third-generation computers • Hardware: integratedcircuits • timesharing • Fourth-generation Computers • Hardware: VLSI • Today’smulti-task,multi-useroperatingsystems
Functions of an Operating System? provide a user interface start the computer manage programs administer security manage memory control a network monitor performance provide file management and other utilities establish an Internet connection schedule jobs and configure devices
Start the Computer • What is booting? • Process of starting or restarting a computer • ColdbootTurning on computer that has been powered off • WarmbootRestarting 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 4. Results of POST are compared with data in CMOS chip Step 1. Power supply sends signal to components in system unit 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 • 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 virtualmemory (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
Adjusts schedule based on job’s priority Scheduling Job 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/Ovsfast-CPU” problem
With Plug and Play, operating system automatically configures new devices as you install them Program that tells operating system how to communicate with device Device Driver Device Driver 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
Developed in early 1980s for personal computers D Used command-line interface when first developed, later included menus O Hardly used today because it does not offer GUI S DOS (Disk Operating System)
DOS: Dirty Operating System Tim Paterson
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 Family
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
Ken: A Chess Player Belle: ACM chess tournament Championship in 80, 81, 82, 86
BSD Unix: 1977 '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
NetWare Designed for client/server networks UNIX / Linux Multi-purposeoperating system Windows Server 2003 Upgrade to Windows 2000 Server • Solaris • Version of UNIX developed by Sun Microsystems • Specifically for e-commerce applications Network OS
Embedded OS • What are two operating systems for PDAs? • Windows Mobile forPocket PC • Palm OSfor 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