Folie a: Name & Data Processing 2 1: Introduction to Operating System Concepts Dipl.-Ing. Bogdan Marin Fakultät für Ingenieurwissenschaften Abteilung Elektro-und Informationstechnik -Technische Informatik-
Objectives: Simplify a machine into virtual levels Difference b/n translator & interpretator What is an operating system? Define terms and concepts of various operating systems Range of machines from home computers to supercomputer
1.1 Multi-Level Machine Why Multi-level? Computer s primitive instructions difficult & tedious for human use Human-oriented language L2 Higher levels = People-oriented Translator / Interpretor Communication b/n L2 & L1 Computer Primitive language L1
1.2 Translator (1/2) Take each L2 instruction and replace by equivalent L1 Resulting program consists only of L1 instructions Computer executes the new L1 program The entire L2 program is first converted into an L1 program L2 is then thrown away and the new L1 executed
1.2 Translator (2/2) Chancellor of Germany Mr. Gerhard Schroeder Prime Minister of India Mr. Shri Atal Bihari Vajpayee
1.2 Interpreter (1/2) Take L2 instructions and execute equivalent L1 instructions directly No resulting program consisting of L1 instructions Each L2 instruction is examined, decoded and executed immediately No translated program
1.2 Interpreter (2/2) He s angry b cos u mean so much... I HATE U! Marriage Counsellor Angry Wife Angry Husband
1.1 Multi-level Machine Each level has different objects and operations Level 5 Problem-Oriented Language Translation (Compiler) With a multi-level machine Suppress irrelevant details Simplified machine Easy to understand Cost effective Level 4 Level 3 Level 2 Assembly Language Operating System Machine Conventional Machine Translation (Assembler) Partial Interpretation (Operating System) Interpretation (Microprogram) Level 1 Microprogramming Microprograms are directly executed by the hardware Level 0 Digital Logic
1.1 Level 0 Digital Logic Level Machine s true hardware Gates, integrated circuits, arithmetic circuits, memory latches, memory flip-flops, microprocessor chips, buses, I/O chips, etc No concept of a program Level 0 Digital Logic
1.1 Level 1 Microprogramming Level True machine language level Microprogram interpretate level 2 instructions static for a specific CPU Numeric language nonreadable for people System programmers haven Level 1 Microprogramming Microprograms are directly executed by the hardware Level 0 Digital Logic
1.1 Level 2 Conventional Machine Memory of Machine Level Computer Manufacturer Manuals interpret instructions carried out by the microprogram Virtual Machine PC 19 20 18 MAR 21 IR 38 39 MBR SP A B C D 15 27 X 22 23 24 4 5 6 15 16 17 3 2 +1 7 14 1 0 8 13 One-Com- 9-1 12 One-Complement plement 28 10 SIGN 11 29 25 16-bit Dualadder 26 State machine stores results of previous states so that current operation can modifiy these results to a new state Level 2 Conventional Machine Left Right shift shift 30 31 1-bit Shift 32 33 34 35 36 37 Numeric language nonreadable for people Level 1 Microprogramming Interpretation (Microprogram) System programmers haven Level 0 Digital Logic Microprograms are directly executed by the hardware
1.1 Level 3 Operating System Hybrid level Old level 2 instructions, carried out by microprogram New level 3 instructions, carried out by OS Level 3 Operating System New features Different memory organisation Multi-tasking etc Level 2 Conventional Machine Partial interpretation Interpretation (Microprogram) Numeric language nonreadable for people Level 1 Microprogramming Microprograms are directly executed by the hardware System programmers haven Level 0 Digital Logic
1.1 Level 4 Assembly Language First translated to level 1, 2 or 3 Translator is called Assembler Level 4 Assembly Language Translation (Assembler) Then interpreted by the appropiate level Level 3 Operating System Partial interpretation Symbolic language readable for people Level 2 Conventional Machine Interpretation (Microprogram) Application programmers haven Level 1 Microprogramming Microprograms are directly executed by the hardware Level 0 Digital Logic
1.1 Level 5 High Level High-Level languages Ada, C, Fortran, etc. Level 5 Problem-Orientated Language Translation (Complier) Symbolic language readable for people Level 4 Level 3 Assembly Language Operating System Translation (Assembler) Application programmers haven Level 2 Conventional Machine Partial interpretation Interpretation (Microprogram) Level 1 Microprogramming Microprograms are directly executed by the hardware Level 0 Digital Logic
1.3 Operating System Enables the hardware to communicate and operate with the software Acts as intermediate b/n a user and the computer OS goals: Extended Machine provides consistent and stable way for applications to to deal with the hardware without user having to know all the details Resource Manager manages the hardware and software resources
1.4 Examples All desktop computers have operating systems. The most common are the Windows family of operating systems, the UNIX family of operating systems and the Macintosh operating systems. More examples are : 386BSD, AIX, AOS, Amoeba, Angel, Artemis microkernel, BeOS, Brazil, COS, CP/M, CTSS, Chorus, DACNOS, DOSEXEC 2, GCOS, GEORGE 3, GEOS, ITS, KAOS, Linux, LynxOS, MPV, MS-DOS, MVS, Mach, Macintosh, MINIX, Multics, Multipop-68, Novell NetWare, OS-9, OS/2, Pick, Plan 9, QNX, RISC OS, STING, System V, System/360, TOPS-10, TOPS-20, TRUSIX, TWENEX, TYMCOM-X, Thoth, Unix, VM/CMS, VMS, VRTX, VSTa, VxWorks, WAITS, Windows
1.5 Four Fundamental Functions File Management Memory Management Process Management Device & Resource Management
1.6 Batch Execute a series of non-interactive jobs Example : Punch cards Jobs with similar needs are batched CPU often in idle state Another method SPOOL
1.6 SPOOL Simultaneous Peripheral Operation On-Line Disk as huge buffer Advantageous since devices access data at different rates Single user cannot keep CPU busy at all times Another method Multi-user
1.6 Single-user, single-task One user One task Advantageous since one person can effectively do one thing at a time Example PALM OS for PALM handheld
1.6 Multi-user Many users Same time and/or different times Examples : Linux, UNIX, Windows 2000
1.6 Multi-tasking Many processes to run at the same time One a single CPU pseudo multi-task Examples : UNIX, Windows 2000
1.6 Time-sharing An approach to interactive computing Single computer serving many users by sharing processor time Time sharing systems are also multi-user systems Time sharing systems & multi-tasking systems are similar due to one CPU executing multiple processes, BUT However, time sharing systems refers to computer supporting multiple simultaneous users And multi-tasking simultaneous execution of mulitple process, regardless of the number of users. Examples : UNIX, Windows 2000
1.6 Multi-processing More than one processor Simultaneous execution of one (or more) task, on multiple processors Aka Parallel Computing Examples : Linux, UNIX, Windows 2000
1.6 Parallel Computing More than one processor Simultaneous execution of multiple tasks, on multiple processors SIMD (Single instruction, multiple data) MIMD (Multiple instruction, multiple data) Shared memory space Disadv : memory access coordination Disadv : shared memory not scalable Adv : fast communication b/n processors Example : Mainframe computers
1.6 Distributed Systems A collection of independent computers that appear to end users of the system as a single computer An integration of system services -> Multiple computer systems with distributed resources and control Distributed memory space Examples : A large bank with branch offices all over the world
1.6 Real-time System Reaction time + Operation time <! Maximum delay Processing must be done within the defined time constraint, or else system FAILURE Hard real-time vs Soft real-time Hard real-time guarantees that critical task complete on time Soft real-time real-time is less restricitve, crtitical tasks gets piority over other tasks Use in dynamically changing system, dedicated application Hard real-time example: artificial pace-maker, computer control braking system in a car Soft real-time examples: multimedia, virtual reality, undersea exploration
1.6 Embedded System Special-purpose computer system built into a larger device Low cost and low power consumption Often run real-time constraints Often has limited hardware resources Examples : microwave oven, video game consoles.
1.6 GUI Graphical User Interface System Interacting with computers through direct manipulation of graphical images GUI vs. command line interface (CLI) CLI, interacting with a computer by giving it lines of textual commands Examples : Mac OS, Microsoft Windows, X Window System
1.7 PC Small, relatively inexpensive Single-user system Use : word processing, accounting, desktop publishing, spreadsheet, database management applications, playing games etc Can be linked to form a network
1.7 Workstation moderate amount of computing power & relatively high quality graphics capability Single-user system Use : engineering applications such as CAD, CAM, desktop publishing etc typically linked to form a network
1.7 Minicomputer Midsized computer In size and power, it lies between workstations and mainframes Multi-processing system, supporting 4-200 users simultaneously Use : servers
1.7 Mainframe Very large and expensive In size and power, it lies just below supercomputers Mainframe vs. Supercomputers Mainframe support more simultaneous programs, whereas supercomputers can execute a single program faster than a mainframe Multi-processing system, supporting hundreds-thousands of users simultaneously
1.7 Supercomputer Fastest type of computer Specialized applications Use : weather forecasting, nuclear energy research, petroleum exploration
Next Week: File Systems.. Check the webpage for exercises! http://www.fb9dv.uni-duisburg.de/ti/en/education/ss04/dv2/main.html