Click here to load reader

G53OPS Operating Systems Graham Kendall Operating Systems

  • View
    216

  • Download
    2

Embed Size (px)

Text of G53OPS Operating Systems Graham Kendall Operating Systems

  • G53OPSOperating SystemsGraham KendallOperating Systems

    G53OPS Operating Systems

    Introduction to Operating Systems This section of the course based on (Tanenbaum, 1992) Chapter 1

    Module Content What is an Operating System?History of Operating SystemsOperating System ConceptsOperating System Structure

    ReferencesLevy, S. 1994. Hackers.Tanenbaum, A., S. 1992. Modern Operating Systems. Prentice Hall.

    G53OPS Operating Systems

    Introduction to Operating Systems Give three functions of an operating system

    G53OPS Operating Systems

    What is an Operating System? - 1

    G53OPS Operating Systems

    What is an Operating System? - 2Physical Devices Integrated circuits, cathode ray tubes, wire etc.

    G53OPS Operating Systems

    What is an Operating System? - 2MicroprogrammingFirmwareProvides basic operations that allow communication with the physical devicesNormally in Read Only Memory (and that is why it is called firmware)

    G53OPS Operating Systems

    What is an Operating System? - 3Machine LanguageDefines the instruction set of the computerSoftware but is considered as hardware

    G53OPS Operating Systems

    What is an Operating System? - 3Operating SystemLayer between the hardware and the softwareAllows us to use the hardware in a user friendly wayLayer of abstraction

    G53OPS Operating Systems

    Other Views of an Operating System - 1A Resource ManagerOperating System is seen as a way of providing the users of the computer with the resources they need at any given time.

    Some resource requests may not be able to be met (memory, CPU usage etc.) but the operating system is able to deal with scheduling problems such as these.

    Other resources have a layer of abstraction placed between them and the physical resource (e.g. a printer).

    G53OPS Operating Systems

    Other Views of an Operating System - 2Extended or Virtual MachineThe operating system is seen as a way of not having to deal with the complexity of the hardware (e.g. floppy disc controller).

    G53OPS Operating Systems

    History of Operating Systems - 1Charles Babbage - Analytical Engine. Attributed with designing the first digital computerNever built the computerNo operating system.

    Charles Babbage - 26th December 1791 to 18th October 1871

    G53OPS Operating Systems

    History of Operating Systems - 1First Generation (1945-1955)Developed during the warVacuum TubesMany people were developing automatic calculating machinesFilled entire roomsNo operating systemNo programming languagesHad to physically wire the computer to carry out the intended instructions

    G53OPS Operating Systems

    History of Operating Systems - 2Second Generation (1955-1965)TransistorsMore reliableBecame feasible to manufacture computers that could be sold to customersJob of computer operator inventedBatch jobs introduced in order to improve throughput (via tapes)Can be seen as the first operating system

    G53OPS Operating Systems

    History of Operating Systems - 3Third Generation (1965-1980)Integrated Circuits as a replacement for transistorsIBM introduced its System/360 range and ICL introduced its 1900 range The start of multiprogramming which led to a need for a more complex operating system but no virtual memorySpooling both input and outputConcept of time sharing introduced which allows interactive workingOperating systems had to become a lot more complex in order to deal with all these issues

    G53OPS Operating Systems

    History of Operating Systems - 4Fourth Generation (1980-present) Large Scale Integration (LSI)Led directly to the development of the personal computer (PC)One of the requirements for the original IBM PC was an operating system - Bill Gates supplied MS-DOSOn non-Intel processors, the UNIX operating system was also being used.

    G53OPS Operating Systems

    History of Operating Systems - 7Another ViewFirst, Second and Third generation as before and for same reasonsFourth generation started in 1971 with the introduction of LSI, then VLSI (Very Large Scale Integration) and then ULSI (Ultra Large Scale Integration)Really, just arguing about when the PC revolution started. Was it in the early 70s when LSI first became available? Or was it in 1980, when the IBM PC was launched?

    G53OPS Operating Systems

    History of Operating Systems - 5Fifth Generation (Sometime in the future)

    What will constitute a fifth generation computer?

    G53OPS Operating Systems

    History of Operating Systems - 5Fifth Generation (Sometime in the future)Computer generations were influenced by new hardware (vacuum tubes, transistors, integrated circuits and LSI).Fifth generation may break with that traditionOne view is that a fifth generation computer will interact with humans in a way that is natural to us Computers will be able to reason in a way that imitates humansBeing able to accept (and understand!) the spoken word and carry out reasoning is complex, requiring advances in software and maybe hardware

    G53OPS Operating Systems

    History of Operating Systems - 6Fifth Generation (Sometime in the future)

    What advances will have to be made to allow a fifth generation computer to be realised?

    G53OPS Operating Systems

    History of Operating Systems - 6Fifth Generation (Sometime in the future)

    Advances will be needed in AI including NLP

    Maybe need parallel processing

    Maybe a non-silicon computer

    The first time a generation has not been motivated by advances in hardware

    G53OPS Operating Systems

    Case Study 1 (ICL Mainframe Operating Systems) Manual ExecutiveIntroduced with its 1900 rangeManual operating systemOperators had to load and run each program

    G53OPS Operating Systems

    Case Study 2 (ICL Mainframe Operating Systems) George 1/2/2+GEneral ORGanisational EnvironmentRan on top of manual exec - so it was not an operating system as suchAllowed you to submit jobs to the machine and G2+ would schedule themBatch programs together into a single jobParameterised macros (or JCL Job Control Language) allowed automation of tasks Submit many jobs at the same time so that G2+ would run them one after anotherAdjustable scheduling algorithm (via the operators console)Other scheduling factors (e.g. tape decks or memory)Under G2+ the operators still look after individual jobs

    G53OPS Operating Systems

    Case Study 3 (ICL Mainframe Operating Systems) George 3/4Operators no longer looked after individual jobs. Instead they looked after the systemJobs could be submitted via interactive terminals by a scheduling teamDevelopment staff could issue batch jobs and also runs jobs in an interactive environment.Any problems were referred to development or technical staff

    G53OPS Operating Systems

    Case Study 4 (ICL Mainframe Operating Systems) George 3/4Operators, in some peoples opinion were little more than tape monkeysG3 was an operating system in its own rightTo use the machine you had to run the job in a userThe Job Control Language (JCL) was much more extensive than that of G2+.It allowed interactive sessionsIt had a concept of filestore

    G53OPS Operating Systems

    Case Study 5 (ICL Mainframe Operating Systems) VME (Virtual Machine Environment)Still the operating system used on ICL mainframes today and the foreseeable futureVME creates virtual machines that jobs run in. If you log onto VME, you will create a virtual machine.VME is written to cater for the many different workloads that mainframes have to performJob control language which (SCL) is a lot more sophisticated

    G53OPS Operating Systems

    Case Study 6 (ICL Mainframe Operating Systems) VME (Virtual Machine Environment)Still concept of filestore but all disc basedAmount of filestore available to users or group of users is under the control of the operating system (and thus the technical support teams).Like G3, the operators control the entire systemMove towards lights out working.

    G53OPS Operating Systems

    Operating System Concepts - 1System CallsEach system call has a procedure associated with it so that system calls can be done in a familiar way.The procedures places the parameters into registers and informs the operating systemOS is informed via a TRAP instruction (sometimes known as a kernel call or a supervisor call).

    G53OPS Operating Systems

    Operating System Concepts - 2CPU switches from user mode to kernel (or supervisor) modeAfter carrying out the work the operating system will return a result in the same way as a user written function written in a high level language.Example of an operating system call (via a procedure) iscount = read(file, buffer, nbytes);Use system calls to manipulate objects

    G53OPS Operating Systems

    Operating System Concepts - 2Give some examples of processes that should only be allowed in kernel (supervisor) modeDisable all interruptsSet the time of dayChange the memory map

    G53OPS Operating Systems

    Operating System Concepts - 3ProcessesA running program with all the other information that is needed to control its executionNeeds to be able to start a process from exactly the same point as it was left.Process information held in a process table.A process may create a child process.One of the main tasks of an operating system is to schedule processesProcesses may also communicate with other processes. The OS must deal with this.

    G53OPS Operating Systems

    Operating System Concepts - 4FilesSystem calls to (for example) create files, delete files, move files, rename files, copy files, open files, close file, read files, write files.Files and Directories

    G53OPS Operating Systems

    Operating System Concepts - 5Example of abstractionText and binary filesStandard input and standard outputPipes.DIR | SORTRedirectionDIR > dir.txt

    G53OPS Operating Systems

    Operating