nos 110 introduciton to operating systems

43
NOS 110   Introduction to Operating Systems

Upload: clay-clark

Post on 15-Oct-2015

23 views

Category:

Documents


0 download

DESCRIPTION

Wndows 7 and linux

TRANSCRIPT

  • NOS 110 Introduction to Operating Systems

    Guide to Operating Systems, 4th ed.

  • *Objectives*Explain basic operating system conceptsUnderstand the history of operating system developmentDiscuss how operating systems workDescribe the types of operating systemsDiscuss single-tasking versus multitaskingDifferentiate between single-user and multiuser operating systemsList and briefly describe current operating systems

  • *An Introduction to Operating SystemsAn operating system (OS) is a set of basic programming instructions to computer hardware, forming a layer of programming code on which most other functions of the computer are built.The kernel is the programming code that is the core of the operating system.Code is a general term that refers to instructions written in a computer programming language.Computer hardware consists of physical devices such as the central processing unit (CPU), circuit boards, the monitor and keyboard, and disk drives.

  • *An Introduction to Operating SystemsTwo types of operating systems will be covered this week:Desktop operating system installed on a personal computer (PC) type of computer that is used by one person at a time, and that may or may not be connected to a networkExamples of installations are desktop computers, laptops, and iMac computersServer operating system installed on a more powerful computer that is connected to a network and enables multiple users to access information such as e-mail, files, and software.Examples of hardware with a server OS include traditional server hardware, rack-mounted server hardware, and blade servers.

  • *An Introduction to Operating SystemsTraditional server often used by small or medium businessesUsually consists of a monitor, CPU box, keyboard, and mouseRack-mounted server CPU boxes mounted in racks that can hold multiple serversAll servers often share one monitor and pointing deviceBlade servers looks like a card that fits into a blade enclosureA blade enclosure is a large box with slots for blade serversMedium and large organizations use blade servers to help conserve space and to consolidate server management

  • *An Introduction to Operating SystemsA basic task of an OS is to take care of input/output (I/O) functions, which let other programs communicate with the computer hardwareSome examples of I/O tasks:Handle input from the keyboard, mouse, and other input devicesHandle output to the monitor and printerHandle remote communications using a modemManage network communications, such as for a local network and the InternetControl input/output for devices such as network interface cardControl information storage and retrieval using various types of diskEnable multimedia use for voice and video composition or reproduction, such as recording video from a camera or playing music

  • *An Introduction to Operating Systems

    General tasks for all operating systems

  • *A Short History of Operating SystemsInitially, computers were used as large automated calculators for mathematical and statistical problems.Legitimate use can be traced back 100 years or more but there were no practical designs used by significant numbers of people until the late 1950s.Operating systems were rudimentary, often not able to do more than read punch cards or tape and write output to machines resembling typewriters.It did not take long before computer applications evolved to do something useful for a broader audience

  • *A Short History of Operating SystemsComputers of the late 60s and early 70s may be crude by todays standards but they were quite capableContributed to the development of space travel, submarine-based ballistic missiles, and the global financial communityThis period saw:the beginning of the InternetCreation of input and output devices such as display terminals and magnetic disksCreation of more operating systems such as OS/8 and UNIX

  • *A Short History of Operating SystemsIn the mid-1960s, a simple programming language was developed at Dartmouth CollegeBASIC Beginners All-purpose Symbolic Instruction CodePrior to BASIC, programming computers was a very complicated process that was best left to scientistsBASIC allowed nonprogrammers to start exploring what could be done with computersIn 1975, Bill Gates wrote a compiler (software that turns computer code written by people into code that is understood by computers) for BASICSold it to a company called Micro Instrumentation Telemetry Systems (MITS) who became the first company to produce a desktop computer

  • *A Short History of Operating SystemsBill Gates started a new company called Microsoft which led to the development of Microsoft Disk Operating System or MS-DOS in 1980.MS-DOS became a runaway success and was the first widely distributed operating system for microcomputers that had to be loaded from disk or tapeIBM adopted MS-DOS for its PCIn 1984, Apple Macintosh developed a GUI and mouse pointing device, which allowed users to interact with the OS on a graphical screenIn 1985, Microsoft released Windows, which provided a GUI and many of the same functions as MAC OS

  • *Understanding How Operating Systems WorkElements that enable an operating system to work with a computer include:The kernelResource managersDevice driversApplication softwareBIOS

  • *The KernelThe kernel consists of the essential program code of the operating systemJobs performed by the kernel can include:Managing interactions with the CPUStarting, managing, and scheduling programs that handle I/O activities, including device and networking activitiesHandling basic computer securityManaging use of the computers memory (RAM)Managing priority levels assigned to programs and computer processesIn Windows, the name of the kernel file is ntoskrnl.exe and in MAC OS X, the kernel is called XNU

  • *Resource ManagersHelp ensure memory is used properly and there are no memory conflictsManages how programs access the processing capabilities of the CPUExample: if there is one CPU and ten programs that want to access the CPU, the OS will give each program a time slice on the CPUEach program does a little working during its time slice and then hands the CPU access over to the next program

  • *Device Drivers and the Operating SystemA device driver translates the information necessary for the operating system to communicate with specific hardwareExamples of hardware that might require a device driver:Fixed internal hard disk drivesMouse and trackball devicesPrinters and scannersTape drives, flash drives, and other removable mediaDigital cameras and video hardwareMany others listed on page 14

  • Device Drivers and the Operating System

    Device drivers interface the operating system with various hardware devices*

  • *The Role of the Application SoftwareAny program a user might choose to run on a computerExamples: word processor, spreadsheet, database, and a computer gameAn operating system manages the communication among the applications, the user, and the computer

  • The Role of the Application Software

    Application programs communicate with hardware through the OS*

  • *The Role of the BIOSBIOS basic input/output systemA low-level program code that:Initiates and enables communications with hardware devicesPerforms tests at startup called power-on self test (POST)Conducts basic hardware and software communications inside the computerStarts a full-fledged operating system that interfaces with the userEvery PC has a BIOS, which is stored in a nonvolatile random access memory (NVRAM)NVRAM is a memory chip that does not lose its contents when the computer is turned off

  • *The Role of the BIOSNVRAM chip used to store the BIOS is called a complementary metal oxide semiconductor (CMOS) memory chipWhen a PC is turned on:The machine wakes up via the CMOS chip and runs a startup program inside the BIOSThis program initializes the screen and keyboard, tests hardware, initializes the hard disk and other drivesLoads the main operating system onto the hard disk

  • *The Role of the BIOS

    Sample BIOS setup screen

  • *Understanding How Operating Systems Work

    General operating system design

  • *Types of Operating SystemsOperating systems are organized by the size, type, and purpose of the computer on which they runExample: the computer in a microwave oven needs device drivers for the LED display, keypad, and door close switchesExample: PC-class computers are designed for individual users to perform tasks, such as word processing, spreadsheet management, and networking with other computersEarly operating systems were written for large, refrigerator-sized machines and were quite complexApplications were written with efficient code and appearance was very basic

  • *Types of Operating SystemsToday, big machines no longer refer to sizeBig now refers to more processing power, more memory, more storage, etcTo operate todays more powerful computers, more powerful and more capable operating systems are needed.Todays operating systems must support:MultitaskingHigh-speed network applicationsMore powerful I/O capabilities

  • *Types of Operating SystemsToday, high-end workstations look very similar to low-end workstationsThe application software used is usually the differentiating factor between these 2 types of workstationsAnother factor is hardware: speed of disk controller, size and speed of the hard disk, amount of memory, size of data pathways, or speed and number of CPUsComputers and operating systems can be looked at in terms of one or more of the following characteristics:Time sharingReal timeMultiuser

  • *Time SharingA time-sharing system is a central computer system that is used by multiple users and applications simultaneouslyMainframe computers are an exampleUsed to perform massive calculations or manipulate huge amounts of data (batch processing)An example of batch processing: clearing two million checks and updating their associated bank accounts in batches instead of single, sequential repetitive tasksSequential processing: used by smaller computers where each process request is completed, and the data returned before the next process is started

  • Time Sharing

    Time-sharing mainframe with terminals

    *

  • *Real-Time SystemsA real-time system is an operating system that interacts directly with the user and responds immediately (or almost immediately) with required informationExample: when a scientist calculates the size of an iceberg the computer program immediately performs the calculation and returns the answerUses sequential processing instead of batch processingWindows 7 and Mac OS X Snow Leopard are examplesWhat most of us are familiar with today

  • Real-Time Systems

    Using a network to access a real-time Windows server*

  • *Multiuser SystemsA multiuser system supports multiple users who are accessing the computers and operating systems hardware and software facilitiesBoth time-sharing and real-time systems can be multiuserClient/server systems a small part of the work is done on the central computer (server) while most of the work is performed on the computer at the users desk (client)Client server computing was not possible until the PC was introduced

  • *Multiuser SystemsCloud computing: providing scalable Web-based applications and services over the Internet that are used by clients through Web browsersMicrosoft describes three types of cloud models:Private cloud computing resources are kept within an organization and used exclusively by that organizationHosted private cloud resources are made available through a third-party outsourcer, but are only accessible to users within a specific organizationPublic cloud a variety of resources are available to any organization through a third partyEach organization subscribes only to specific resources, which may be shared by other organizations

  • Multiuser SystemsGuide to Operating Systems, 4th ed.*

    Cloud computing

    Guide to Operating Systems, 4th ed.

  • Single-Tasking Versus MultitaskingEarlier versions of operating systems allowed programs to directly access hardwareMore prone to unexpected hangs, system instability, or crashesTodays operating systems manage access to hardwareMajor reason for this was to facilitate multitasking (running two or more programs at the same time)Two general types of multitasking:Cooperative multitaskingPreemptive multitasking

    *

  • *Single-Tasking Versus MultitaskingCooperative multitasking the OS hands over control to a program and then waits for the program to hand control back to OSIf program does not give control back to OS, it may hog the CPU until its operations are completeNo other program can run until control is given back to OSFound in early Windows versionsExample: If you print a word-processing file and try to play Solitaire, you cannot play a card until the print job is finished

  • *Single-Tasking Versus Multitasking

    Cooperative multitasking basics

  • *Single-Tasking Versus MultitaskingPreemptive multitasking the OS is in control of the computer at all timesLets programs execute a little bit of code at a time then forces the program to relinquish control of the CPUOS has control over how much of the computers resources are allocated to each programFound in modern OSs like Windows XP, Vista, 7, Server 2008, Mac OS X, LinuxYou could play Solitaire while printing a word-processing fileComputers must use more of its CPU and memory to support the OS, but the behavior of the computer is more predictable

  • *Single-Tasking Versus Multitasking

    Preemptive multitasking basics

  • *Single-Tasking Versus MultitaskingSingle-tasking operating systems execute one program at a timeTo do something else, one program must be stoppedOlder OSs like MS-DOS were single-tasking

    Single-tasking OS

  • *Single-Tasking Versus MultitaskingTask-switching operating systems more than one program can run at a time but only one program can have control at a timeEarlier versions of Mac OS were task-switching

    Task-switching

  • *Single-user Versus Multiuser Operating Systems

    Comparing single-user and multiuser operating systems

  • *Current Operating SystemsMost common OSs covered in this book:Windows XP, Vista, and 7 (Desktop OS)Windows Server 2003 and Server 2003 R2Windows Server 2008 and Server 2008 R2Many different distributions of UNIX/LINUX, focusing on FedoraApple Macintosh Mac OS X (versions 10.5 Leopard and 10.6 Snow Leopard)Chapter 2 covers these OSs in more detail

  • Chapter SummaryAn operating system provides the foundation upon which to run the components of a computer and execute applicationsA basic task of an operating system is to enable a computer to perform I/O functionsTwo common types of operating systems are desktop and server The history of operating systems and computers represents a progression from physically huge computers to large computers to desktop-sized computers that have powerful operating systemsDevice drivers can extend the native function of an operating system to provide access and control over different types of devices, such as printers and DVD/CD-ROM drivesThe BIOS is a low-level program code that operates between the computer hardware and an operating system to initiate communication, perform hardware tests, and enable startup of OS*

  • Chapter SummaryAn OS may be geared to run a large mainframe or a small PC-type of computerOperating systems can be understood in terms of characteristics such as time sharing, real-time operation, and multiuser capabilitiesFrom the standpoint of the user, among the most significant advances in operating systems is the refinement of the GUI in Windows-based and Mac OS systemsEarly operating systems tended to be single-tasking, but modern systems are largely multitaskingA true multiuser system is one in which multiple users access and run a single application on a single computer at the same timeCurrently popular OSs are the topic of this book and include Windows XP, Vista, 7, Server 2003/R2, Server 2008/R2, UNIX/Linux, and Mac OS X Leopard and Snow Leopard

    *

    *************************************