48
CHAPTER 6 OPERATING SYSTEMS OPERATING SYSTEMS

Chapter 6

  • Upload
    sammy17

  • View
    754

  • Download
    0

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Chapter 6

CHAPTER 6CHAPTER 6

OPERATING SYSTEMSOPERATING SYSTEMS

Page 2: Chapter 6

TYPES OF COMPUTERSTYPES OF COMPUTERS

MAIN FRAMESMAIN FRAMES MINISMINIS SUPER COMPUTERSSUPER COMPUTERS WORKSTATIONSWORKSTATIONS PERSONAL COMPUTERSPERSONAL COMPUTERS

Page 3: Chapter 6

TYPES OF SOFTWARETYPES OF SOFTWARE

APPLICATION SOFTWAREAPPLICATION SOFTWARE

SYSTEMS SOFTWARESYSTEMS SOFTWARE

Page 4: Chapter 6

EXAMPLES OF APPLICATION SOFTWARE:EXAMPLES OF APPLICATION SOFTWARE:

WORD-PROCESSING PROGRAMSWORD-PROCESSING PROGRAMS SPREADSHEET PROGRAMSSPREADSHEET PROGRAMS DATABASE MANAGEMENTDATABASE MANAGEMENT DESK TOP PUBLISHINGDESK TOP PUBLISHING EDUCATIONAL/TUTORIALSEDUCATIONAL/TUTORIALS ENTERTAINMENTENTERTAINMENT ETC.ETC.

Page 5: Chapter 6

EXAMPLES OF SYSTEMS SOFTWAREEXAMPLES OF SYSTEMS SOFTWARE

OPERATING SYSTEM SOFTWAREOPERATING SYSTEM SOFTWARE Language translatorsLanguage translators Memory managersMemory managers Information managersInformation managers SchedulersSchedulers UtilitiesUtilities

Page 6: Chapter 6

EXAMPLES OF SYSTEMS SOFTWARE (continued)EXAMPLES OF SYSTEMS SOFTWARE (continued)

DEVICE DRIVERS DEVICE DRIVERS

UTILITY PROGRAMS (VIRUS UTILITY PROGRAMS (VIRUS CHECKERS, DEFRAG PROGRAMS, CHECKERS, DEFRAG PROGRAMS, ETC.)ETC.)

Page 7: Chapter 6

EXAMPLES OF SYSTEMS SOFTWAREEXAMPLES OF SYSTEMS SOFTWARE

OPERATING SYSTEM SOFTWAREOPERATING SYSTEM SOFTWARELanguage translators:Language translators:

Assemblers (translators for low-level Assemblers (translators for low-level languages)languages)

Compilers (translators for high-level Compilers (translators for high-level languages)languages)

Page 8: Chapter 6

Programming LanguagesProgramming Languages

Low-level LanguagesLow-level Languages Machine languageMachine language Assembly languageAssembly language

High-level Languages High-level Languages (programming (programming languages)languages)

BASIC, C++, FORTRAN, PascalBASIC, C++, FORTRAN, Pascal

Page 9: Chapter 6

Machine LanguageMachine Language

Instructions that can be decoded Instructions that can be decoded and executed by the control unit of and executed by the control unit of a computer.a computer.The hardware languageThe hardware languageFirst generation languagesFirst generation languagesNote: machine language programs are Note: machine language programs are

called called object programsobject programs

Page 10: Chapter 6

Problems with Machine Language

Problems with Machine Language

Difficult to understandDifficult to understandIt uses binary, no English-like It uses binary, no English-like

words, no mathematical words, no mathematical expressions or symbolsexpressions or symbols

Difficult to changeDifficult to changeDifficult to create dataDifficult to create data

Page 11: Chapter 6

Assembly LanguageAssembly Language

The second generation of Languages.The second generation of Languages.

Developed to produce more friendly Developed to produce more friendly environment between programmers and environment between programmers and machines.machines.

Each instruction is Each instruction is translatedtranslated into exactly into exactly one binary machine language.one binary machine language.

Page 12: Chapter 6

Advantages of Assembly Language over Machine Language

Advantages of Assembly Language over Machine Language

Use of symbolic operation codes (load , Use of symbolic operation codes (load , add, store, etc.)add, store, etc.)

Use of symbolic memory addresses Use of symbolic memory addresses (BEGIN, LOOP, COUNT, etc.)(BEGIN, LOOP, COUNT, etc.)( i.e. ( i.e. BEGIN:BEGIN: LOAD X)LOAD X)

BEGIN is equivalent to the address of the BEGIN is equivalent to the address of the memory holding instruction LOAD Xmemory holding instruction LOAD X

(See Figure 6.5 page 244)(See Figure 6.5 page 244)

Page 13: Chapter 6

Translation and LoadingTranslation and Loading

The program written in assembly must be The program written in assembly must be translated into machine language.translated into machine language.

Each instruction is Each instruction is translatedtranslated into exactly into exactly one binary machine language.one binary machine language.

AssemblerAssembler, a piece of system software to , a piece of system software to provide this translationprovide this translation

This translation is written to a file called This translation is written to a file called object file.object file.

Page 14: Chapter 6

Loading and ExecutionLoading and Execution

AssemblerAssembler, a piece of system software to , a piece of system software to provide this translationprovide this translation

This translation is written to a file called This translation is written to a file called object object file.file.

Loader Loader (part of system software)(part of system software) loads the loads the instructions from object file into memory for instructions from object file into memory for execution.execution.

The hardware begins the fetch, decode, and The hardware begins the fetch, decode, and execute cycle.execute cycle.

Page 15: Chapter 6

Assembly language program Assembler

Machine language program

Loader

Machine language program

loaded into memoryHardwareResults

Object programSource Program

Page 16: Chapter 6

OPERATING SYSTEM SOFTWAREOPERATING SYSTEM SOFTWARE

A COLLECTION OF A COLLECTION OF PROGRAMS THAT CONTROL PROGRAMS THAT CONTROL THE OVERALL OPERATION THE OVERALL OPERATION OF THE COMPUTEROF THE COMPUTER

Page 17: Chapter 6

EXAMPLES OF O/S SOFTWARE:EXAMPLES OF O/S SOFTWARE:

O/S SOFTWARE FOR MAIN FRAMES:O/S SOFTWARE FOR MAIN FRAMES: IBM'S MVS AND VMIBM'S MVS AND VM DEC'S VMSDEC'S VMS

O/S FOR MINIs AND WORKSTATIONS:O/S FOR MINIs AND WORKSTATIONS: UNIXUNIX

FOR PCs:FOR PCs: IBM COMPATIBLE:IBM COMPATIBLE:

MS- DOS AND PC- DOSMS- DOS AND PC- DOS WINDOWS 95/98WINDOWS 95/98 OS/2OS/2 UNIXUNIX WINDOWS NTWINDOWS NT

MACINTOSH:MACINTOSH: OS-7, OS-8OS-7, OS-8

Page 18: Chapter 6

Virtual Memory SystemVirtual Memory System <operating system> (VMS) DEC's <operating system> (VMS) DEC's

proprietary operating system originally proprietary operating system originally produced for its VAX minicomputer. produced for its VAX minicomputer.

VMS V1 was released in August 1978. VMS V1 was released in August 1978. VMS was renamed "OpenVMS" around VMS was renamed "OpenVMS" around version 5.5. version 5.5.

Page 19: Chapter 6

MVS ==>Multiple Virtual Storage

<operating system> (MVS) Release 2 of OS/VS2, called MVS because it had multiple 16 MB virtual address spaces, in contrast to SVS. MVS ran on the IBM 390 series mainframes. It became MVS/SP, then MVS/XA (with 31-bit addressing)and then MVS/ESA.

Page 20: Chapter 6

SO WHAT DOES AN OPERATING SYSTEM PROGRAM DO EXACTLY?SO WHAT DOES AN OPERATING SYSTEM PROGRAM DO EXACTLY?

1.1. RECEPTIONIST RECEPTIONIST 2.2. SCHEDULERSCHEDULER 3.3. RESOURCE MANAGER/EFFICIENCY EXPERTRESOURCE MANAGER/EFFICIENCY EXPERT 4. DISPATCHER4. DISPATCHER 5.5. SECURITY GUARD SECURITY GUARD 6. FILE MANAGER6. FILE MANAGER

Page 21: Chapter 6

1. THE RECEPTIONIST:1. THE RECEPTIONIST:

THETHE SHELL SHELL PROVIDES A USER INTERFACE; IT DISPLAYS PROVIDES A USER INTERFACE; IT DISPLAYS THINGS ON THE SCREEN THAT WE USE TO INSTRUCT THINGS ON THE SCREEN THAT WE USE TO INSTRUCT THE COMPUTER.THE COMPUTER.

WINDOWS USES AWINDOWS USES A GRAPHICAL GRAPHICAL USER INTERFACE USER INTERFACE (GUI)(GUI)

MICROSOFT’S DOS ORIGINALLY USED A MICROSOFT’S DOS ORIGINALLY USED A COMMAND COMMAND LINE LINE INTERFACE.INTERFACE.

THE THE COMMAND PROCESSOR COMMAND PROCESSOR “WATCHES” THE “WATCHES” THE KEYBOARD, MOUSE, AND OTHER INPUT DEVICES AND KEYBOARD, MOUSE, AND OTHER INPUT DEVICES AND INTERPRETS INPUT (MOUSE CLICKS)INTERPRETS INPUT (MOUSE CLICKS) IT PASSES OUR REQUESTS TO THE SCHEDULERIT PASSES OUR REQUESTS TO THE SCHEDULER..

Page 22: Chapter 6

2. THE SCHEDULER: 2. THE SCHEDULER:

THETHE SCHEDULER SCHEDULER ARRANGES FOR ARRANGES FOR THE EXECUTION OR LOADING OF THE EXECUTION OR LOADING OF A PROGRAM (PLACING IT IN THE A PROGRAM (PLACING IT IN THE QUEUE). EACH RUNNING QUEUE). EACH RUNNING PROGRAM BECOMES A ‘PROCESS’ PROGRAM BECOMES A ‘PROCESS’ THAT MUST HAVE ITS TURN WITH THAT MUST HAVE ITS TURN WITH THE CPU.THE CPU.

Page 23: Chapter 6

3. THE RESOURCE MANAGER/EFFICIENCY EXPERT:3. THE RESOURCE MANAGER/EFFICIENCY EXPERT:

THE THE RESOURCE ALLOCATORRESOURCE ALLOCATOR COORDINATES THE COORDINATES THE ASSIGNMENT OF PERIPHERIAL DEVICES. IT ASSIGNMENT OF PERIPHERIAL DEVICES. IT MAKES SURE THAT ALL PROGRAMS AND USERS MAKES SURE THAT ALL PROGRAMS AND USERS GET TIMELY ACCESS TO THESE RESOURCES.GET TIMELY ACCESS TO THESE RESOURCES.

IT PREVENTS DEADLOCK AND IT MANAGES IT PREVENTS DEADLOCK AND IT MANAGES INTERUPT PROCESSINGINTERUPT PROCESSING..

RESOURCES INCLUDERESOURCES INCLUDE: : CPU TIMECPU TIME, , MEMORY MEMORY SPACESPACE, , PERIPHERIAL DEVICESPERIPHERIAL DEVICES

Page 24: Chapter 6

ALLOCATING RESOURCES:ALLOCATING RESOURCES:

THE CPU THE CPU IF MULTIPLE PROGRAMS ARE IF MULTIPLE PROGRAMS ARE

RUNNING IN MEMORY, THEY RUNNING IN MEMORY, THEY MAY HAVE TO MAY HAVE TO SHARESHARE THE CPU. THE CPU. THIS IS DONE USING MULTI-THIS IS DONE USING MULTI-TASKING OR TIME SHARING.TASKING OR TIME SHARING.

Page 25: Chapter 6

ALLOCATING RESOURCES:ALLOCATING RESOURCES:

THE MEMORY MANAGERTHE MEMORY MANAGER ALLOCATES SPACE TO A PROCESSALLOCATES SPACE TO A PROCESS RECOVERS THAT SPACE WHEN THE RECOVERS THAT SPACE WHEN THE

PROCESS COMPLETES.PROCESS COMPLETES. MAKES SURE PROCESSES CANNOT ACCESS MAKES SURE PROCESSES CANNOT ACCESS

EACH OTHER’S MEMORY SPACEEACH OTHER’S MEMORY SPACE.. OTHER DEVICES:OTHER DEVICES:

PROGRAM MAY COMPETE FOR THE USE OF PROGRAM MAY COMPETE FOR THE USE OF PRINTERS AND OTHER DEVICES. THE O.S. MAKES PRINTERS AND OTHER DEVICES. THE O.S. MAKES SURE EVERYONE GETS A TURN AND NO SURE EVERYONE GETS A TURN AND NO DEADLOCKS OCCUR.DEADLOCKS OCCUR.

Page 26: Chapter 6

4. THE DISPATCHER:4. THE DISPATCHER:

THETHE DISPATCHER DISPATCHER COORDINATES THE COORDINATES THE SWITCHING OF THE CPU’S ATTENTION SWITCHING OF THE CPU’S ATTENTION AMONG THE VARIOUS PROCESSES AMONG THE VARIOUS PROCESSES SCHEDULED FOR EXECUTION.SCHEDULED FOR EXECUTION.

IT ALSO OVERSEES THE ACTUAL IT ALSO OVERSEES THE ACTUAL EXECUTION OF A PROCESS AND EXECUTION OF A PROCESS AND REPORTS BACK TO THE SCHEDULER REPORTS BACK TO THE SCHEDULER WHEN THE PROCESS IS COMPLETEWHEN THE PROCESS IS COMPLETE..

Page 27: Chapter 6

5. THE SECURITY GUARD:5. THE SECURITY GUARD:

CONTROLS PASSWORD ACCESS TO THE SYSTEMCONTROLS PASSWORD ACCESS TO THE SYSTEM CONTROLS EACH FILE’S USER PRIVILEDGES CONTROLS EACH FILE’S USER PRIVILEDGES

SETTINGSSETTINGS

THE FILE’S OWNER CAN READ, EDIT, DELETE THE FILE’S OWNER CAN READ, EDIT, DELETE ITIT

SOME USERS CAN READ BUT NOT EDIT ITSOME USERS CAN READ BUT NOT EDIT IT

SOME USERS CAN NEITHER READ NOR EDIT ITSOME USERS CAN NEITHER READ NOR EDIT IT

Page 28: Chapter 6

6. The File Manager:6. The File Manager:

THE FILE MANAGER MAINTAINS THE THE FILE MANAGER MAINTAINS THE LOCATIONS AND FILE ACCESS LOCATIONS AND FILE ACCESS PRIVILEGES OF EVERY FILE.PRIVILEGES OF EVERY FILE.

IT LOCATES FILES WHEN YOU IT LOCATES FILES WHEN YOU REQUEST THEM.REQUEST THEM.

Page 29: Chapter 6

THE OPERATING SYSTEM MAKES THE SYSTEM SEEM MORE USER FRIENDLY

(magician)

THE OPERATING SYSTEM MAKES THE SYSTEM SEEM MORE USER FRIENDLY

(magician)

IT DOES THIS BY CREATING ILLUSIONS.IT DOES THIS BY CREATING ILLUSIONS.

IT CREATES THE ILLUSION THAT FILES IT CREATES THE ILLUSION THAT FILES ARE ACTUALLY STORED IN FOLDERS ARE ACTUALLY STORED IN FOLDERS

IT CREATES THE ILLUSION THAT FILES IT CREATES THE ILLUSION THAT FILES ARE DELETED BY DRAGGING THEM ARE DELETED BY DRAGGING THEM INTO A PICTURE OF A WASTE BASTET.INTO A PICTURE OF A WASTE BASTET.

Page 30: Chapter 6

THE OPERATING SYSTEM MAKES THE SYSTEM SEEM MORE USER FRIENDLY

THE OPERATING SYSTEM MAKES THE SYSTEM SEEM MORE USER FRIENDLY

IT CREATES THE ILLUSION THAT YOU IT CREATES THE ILLUSION THAT YOU HAVE X AMOUNT OF MEMORY WHEN HAVE X AMOUNT OF MEMORY WHEN REALLY YOU ONLY HAVE Y AMOUNT REALLY YOU ONLY HAVE Y AMOUNT OF MEMORY.OF MEMORY.

WE USE THE TERM “WE USE THE TERM “VIRTUALVIRTUAL” TO ” TO REFER TO A CHARACTERISTIC WHOSE REFER TO A CHARACTERISTIC WHOSE EXISTENCE IS SIMULATED WITH EXISTENCE IS SIMULATED WITH SOFTWARE RATHER THAN ACTUALLY SOFTWARE RATHER THAN ACTUALLY EXISTING WITHIN HARDWARE.EXISTING WITHIN HARDWARE.

Page 31: Chapter 6

OTHER COMPONENTS OF THE OPERATING SYSTEM: UTILITIESOTHER COMPONENTS OF THE OPERATING SYSTEM: UTILITIES

TODAY’S O.S.’S ALSO CONTAIN A TODAY’S O.S.’S ALSO CONTAIN A VARIETY OF ADDITIONAL VARIETY OF ADDITIONAL PROGRAMSPROGRAMS

EXAMPLES: EDITORS, LANGUAGE EXAMPLES: EDITORS, LANGUAGE TRANSLATORS, FILE FINDERS, DISK TRANSLATORS, FILE FINDERS, DISK FORMATTERS, ETCFORMATTERS, ETC..

Page 32: Chapter 6

AND SOME OPERATING SYSTEMS CONTAIN LIBRARIESAND SOME OPERATING SYSTEMS CONTAIN LIBRARIES

UNIX CONTAINS PARTIAL ROUTINES UNIX CONTAINS PARTIAL ROUTINES FOR THE INCLUSION INTO USER-FOR THE INCLUSION INTO USER-WRITTEN PROGRAMS.WRITTEN PROGRAMS.

WHEN YOU WRITE A PROGRAM IN WHEN YOU WRITE A PROGRAM IN ‘C’, YOU CAN INSERT (ACTUALLY ‘C’, YOU CAN INSERT (ACTUALLY ““LINKLINK”) A SEGMENT OF CODE INTO ”) A SEGMENT OF CODE INTO YOUR OWN PROGRAM.YOUR OWN PROGRAM.

Page 33: Chapter 6

HISTORICAL OVERVIEW OF OPERATING SYSTEMS:HISTORICAL OVERVIEW OF OPERATING SYSTEMS:

OPERATING SYSTEMS BEGAN AS OPERATING SYSTEMS BEGAN AS SYSTEMS FOR SIMPLIFYING SYSTEMS FOR SIMPLIFYING PROGRAM SETUP AND FOR PROGRAM SETUP AND FOR STREAMLINING TRANSITION STREAMLINING TRANSITION BETWEEN JOBS.BETWEEN JOBS.

Page 34: Chapter 6

FIRST GENERATION (1945-1955) - SERIAL PROCESSING - NO OPERATING SYSTEM PROGRAM

FIRST GENERATION (1945-1955) - SERIAL PROCESSING - NO OPERATING SYSTEM PROGRAM

APPLICATION PROGRAMMERS... DO IT APPLICATION PROGRAMMERS... DO IT YOURSELF!YOURSELF!

BRING YOUR OWN PROGRAMS (ON TAPE OR BRING YOUR OWN PROGRAMS (ON TAPE OR PUNCH CARD) TO THE COMPUTER!PUNCH CARD) TO THE COMPUTER!

SET UP THE HARDWARE BY MOUNTING TAPES OR SET UP THE HARDWARE BY MOUNTING TAPES OR LOADING CARDS INTO A CARD READER, PRESS LOADING CARDS INTO A CARD READER, PRESS THE BUTTON ON THE CONSOLE TO GET A THE BUTTON ON THE CONSOLE TO GET A PROGRAM TO COMPILE!PROGRAM TO COMPILE!

THE CPU WAS BORED MOST OF THE TIME.THE CPU WAS BORED MOST OF THE TIME.

Page 35: Chapter 6

SECOND GENERATION (1955-1965) - BATCHED PROCESSING (THE IBM 701 & 704)

SECOND GENERATION (1955-1965) - BATCHED PROCESSING (THE IBM 701 & 704)

APPLICATION PROGRAMMERS... GIVE IT TO THE COMPUTER APPLICATION PROGRAMMERS... GIVE IT TO THE COMPUTER OPERATOR!OPERATOR!

HE’LL ADD YOUR PROGRAM TO THE HE’LL ADD YOUR PROGRAM TO THE BATCH BATCH OF JOBS IN MASS OF JOBS IN MASS STORE AND THE JOB QUEUE.STORE AND THE JOB QUEUE.

WHEN ONE PROGRAM FINISHED EXECUTING, THE OS STARTED WHEN ONE PROGRAM FINISHED EXECUTING, THE OS STARTED THE NEXT JOB.THE NEXT JOB.

IF YOUR PROGRAM REQUIRED THAT THE COMPUTER IF YOUR PROGRAM REQUIRED THAT THE COMPUTER OPERATOR LOAD A TAPE BEFORE YOUR PROGRAM EXECUTES, OPERATOR LOAD A TAPE BEFORE YOUR PROGRAM EXECUTES, YOUR PROGRAM WOULD CONTAIN YOUR PROGRAM WOULD CONTAIN JOB CONTROL JOB CONTROL INSTRUCTIONSINSTRUCTIONS THAT THE OS. WOULD DISPLAY ON A CONSOLE THAT THE OS. WOULD DISPLAY ON A CONSOLE AT THE START OF YOUR JOB.AT THE START OF YOUR JOB.

PROGRAMS RAN IN SERIAL - ONE AFTER THE OTHER. THE CPU PROGRAMS RAN IN SERIAL - ONE AFTER THE OTHER. THE CPU WAS BORED 96% OF THE TIME.WAS BORED 96% OF THE TIME.

Page 36: Chapter 6

HOW WOULD YOU LIKE TO BE A 2ND GENERATION OPERATING SYSTEM PROGRAMMER?

HOW WOULD YOU LIKE TO BE A 2ND GENERATION OPERATING SYSTEM PROGRAMMER?

YOU WOULD HAVE TO ADD YOU WOULD HAVE TO ADD MEMORY PROTECTION FEATURES MEMORY PROTECTION FEATURES

YOU MUST MAKE SURE THAT YOU MUST MAKE SURE THAT PROGRAMS DO NOT ATTEMPT TO PROGRAMS DO NOT ATTEMPT TO ACCESS A MEMORY LOCATION ACCESS A MEMORY LOCATION THAT IS OUTSIDE OF ITS THAT IS OUTSIDE OF ITS DESIGNATED PROGRAM-SPACE.DESIGNATED PROGRAM-SPACE.

Page 37: Chapter 6

THIRD GENERATION (MID 1960'S) - MULTI-PROGRAMMED, BATCHED SYSTEMS

THIRD GENERATION (MID 1960'S) - MULTI-PROGRAMMED, BATCHED SYSTEMS

APPLICATION PROGRAMMERS... GIVE ME YOUR APPLICATION PROGRAMMERS... GIVE ME YOUR PROGRAMS!PROGRAMS!

MY OPERATING SYSTEM WILL LOAD THEM ALL MY OPERATING SYSTEM WILL LOAD THEM ALL INTO MEMORY AT ONCE!INTO MEMORY AT ONCE!

BUT IF YOUR JOB PAUSES TO DO A (SLOW) I/O BUT IF YOUR JOB PAUSES TO DO A (SLOW) I/O OPERATION, MY OPERATING SYSTEM WILL PUT OPERATION, MY OPERATING SYSTEM WILL PUT YOUR PROGRAM ON HOLD (CALLED A “WAIT-YOUR PROGRAM ON HOLD (CALLED A “WAIT-STATE”) AND START RUNNING SOMEONE ELSE’S STATE”) AND START RUNNING SOMEONE ELSE’S PROGRAM! YOU’LL GET TO FINISH YOUR TURN PROGRAM! YOU’LL GET TO FINISH YOUR TURN LATER.LATER.

Page 38: Chapter 6

HOW WOULD YOU LIKE TO BE A 3RD GENERATION OPERATING SYSTEM PROGRAMMER?

HOW WOULD YOU LIKE TO BE A 3RD GENERATION OPERATING SYSTEM PROGRAMMER?

NOW YOU’VE GOT TO KNOW HOW TO PAUSE AND NOW YOU’VE GOT TO KNOW HOW TO PAUSE AND RESUME RUNNING PROCESSES!RESUME RUNNING PROCESSES!

MULTI-PROGRAMMING REQUIRES THE USE OF MULTI-PROGRAMMING REQUIRES THE USE OF INTERRUPTS! (INTERRUPTS ARE DISCUSSED INTERRUPTS! (INTERRUPTS ARE DISCUSSED UNDER “TIME SHARING)”.UNDER “TIME SHARING)”.

Page 39: Chapter 6

THEN CAME THE “AGE OF THE INTERACTIVE COMPUTER”

THEN CAME THE “AGE OF THE INTERACTIVE COMPUTER”

(MY TURN, COMPUTER’S TURN, MY TURN, (MY TURN, COMPUTER’S TURN, MY TURN, COMPUTER’S TURN....)COMPUTER’S TURN....)

AIRLINE RESERVATION SYSTEMS, VISA AIRLINE RESERVATION SYSTEMS, VISA AUTHORIZATION SYSTEMS, FINANCIAL AUTHORIZATION SYSTEMS, FINANCIAL INSTITUTION ON-LINE SYSTEMSINSTITUTION ON-LINE SYSTEMS

LOTS OF PEOPLE INTERACTING WITH THE LOTS OF PEOPLE INTERACTING WITH THE MAINFRAME, ALL WANTING RAPID RESPONSE MAINFRAME, ALL WANTING RAPID RESPONSE TIME. TIME.

LET’S GIVE EVERYBODY A “TIME SLICE”!LET’S GIVE EVERYBODY A “TIME SLICE”!

Page 40: Chapter 6

TIME SHARINGTIME SHARING

USER 1 GETS 1/10 OF A SECOND OF CPU TIME, USER 1 GETS 1/10 OF A SECOND OF CPU TIME, THEN USER 2 GETS 1/10 OF A SECOND OF CPU THEN USER 2 GETS 1/10 OF A SECOND OF CPU TIME, THEN USER 3, THEN USER 1 AGAIN, THEN TIME, THEN USER 3, THEN USER 1 AGAIN, THEN USER 2 AGAIN...USER 2 AGAIN...

Page 41: Chapter 6

TIME SHARING REQUIRES INTERRUPT HANDLINGTIME SHARING REQUIRES INTERRUPT HANDLING

THE CPU IS EXECUTING YOUR PROCESS.THE CPU IS EXECUTING YOUR PROCESS. YOUR TIME IS UP. IT’S MY TURN.YOUR TIME IS UP. IT’S MY TURN. AN INTERUPT SIGNAL IS SENT TO THE CPU.AN INTERUPT SIGNAL IS SENT TO THE CPU. THE CPU COMPLETES THE CURRENT MACHINE CYCLE.THE CPU COMPLETES THE CURRENT MACHINE CYCLE. THE CPU RECORDS THE ADDRESS OF THE NEXT THE CPU RECORDS THE ADDRESS OF THE NEXT

INSTRUCTION TO BE EXECUTED IN YOUR PROCESS, AND INSTRUCTION TO BE EXECUTED IN YOUR PROCESS, AND THE CONTENTS OF EACH OF ITS REGISTERS (CALLED THE THE CONTENTS OF EACH OF ITS REGISTERS (CALLED THE “STATE OF THE PROCESS”)“STATE OF THE PROCESS”)

IT (RE)LOADS THE NEXT (FIRST) INSTRUCTION IN MY IT (RE)LOADS THE NEXT (FIRST) INSTRUCTION IN MY PROCESS AND STARTS EXECUTING MY PROCESS.PROCESS AND STARTS EXECUTING MY PROCESS.

Page 42: Chapter 6

AND THEN CAME THE PC....AND THEN CAME THE PC....

PCs APPEARED ON PEOPLE’S WORK PCs APPEARED ON PEOPLE’S WORK DESKS AROUND 1981DESKS AROUND 1981

THE CONCEPT OF A LARGE CENTRAL THE CONCEPT OF A LARGE CENTRAL MACHINE SERVING MANY USERS MACHINE SERVING MANY USERS GAVE WAY TO THE CONCEPT OF GAVE WAY TO THE CONCEPT OF MANY SMALL MACHINES MANY SMALL MACHINES CONNECTED VIA NETWORKCONNECTED VIA NETWORK..

Page 43: Chapter 6

FOURTH GENERATION OPERATING SYSTEMS: THE NETWORK OPERATING SYSTEM!

FOURTH GENERATION OPERATING SYSTEMS: THE NETWORK OPERATING SYSTEM!

APPLICATION PROGRAMMERS... GIVE ME YOUR APPLICATION PROGRAMMERS... GIVE ME YOUR PROGRAMS!PROGRAMS!

MY OPERATING SYSTEM CAN HANDLE MY OPERATING SYSTEM CAN HANDLE ALLALL YOUR YOUR REQUEST!REQUEST!

IF YOU WANT TO DOWNLOAD FILES FROM THE IF YOU WANT TO DOWNLOAD FILES FROM THE MAINFRAME, FINE! IF YOU WANT TO PRINT USING MAINFRAME, FINE! IF YOU WANT TO PRINT USING THE LASER PRINTER DOWN THE HALL, FINE! I THE LASER PRINTER DOWN THE HALL, FINE! I CAN HANDLE IT! WANT YOUR E-MAIL? FINE!CAN HANDLE IT! WANT YOUR E-MAIL? FINE!

OS MUST BE ABLE TO COORDINATE THE OS MUST BE ABLE TO COORDINATE THE ACTIVITIES OF MANY COMPUTERS ACTIVITIES OF MANY COMPUTERS SIMULTANEOUSLY.SIMULTANEOUSLY.

Page 44: Chapter 6

HOW WOULD YOU LIKE TO BE A 4TH GENERATION OPERATING SYSTEM PROGRAMMER?

HOW WOULD YOU LIKE TO BE A 4TH GENERATION OPERATING SYSTEM PROGRAMMER?

BECAUSE OF THE LIMITATIONS ON (EARLY) PC BECAUSE OF THE LIMITATIONS ON (EARLY) PC MEMORY, YOU’D HAVE TO USE MORE MEMORY, YOU’D HAVE TO USE MORE SOPHISTICATED MEMORY MANAGERS, OTHERWISE SOPHISTICATED MEMORY MANAGERS, OTHERWISE YOU MIGHT RUN OUT OF MEMORY SPACE ON YOUR YOU MIGHT RUN OUT OF MEMORY SPACE ON YOUR PC WHEN YOU’RE LOADING THOSE SOPHISTICATED PC WHEN YOU’RE LOADING THOSE SOPHISTICATED PROGRAMS AND LARGE FILES.PROGRAMS AND LARGE FILES.

BECAUSE SO MANY PEOPLE ARE USING BECAUSE SO MANY PEOPLE ARE USING COMPUTERS, YOU’LL NEED A BETTER, FRIENDLIER COMPUTERS, YOU’LL NEED A BETTER, FRIENDLIER USER INTERFACE (A NEW RECEPTIONIST)USER INTERFACE (A NEW RECEPTIONIST)

WHAT ELSE CAN YOU THINK OF?WHAT ELSE CAN YOU THINK OF?

Page 45: Chapter 6

WHAT IS A FIFTH GENERATION OPERATING SYTEM?

WHAT IS A FIFTH GENERATION OPERATING SYTEM?

MORE POWERFUL USER INTERFACES SUCH AS MORE POWERFUL USER INTERFACES SUCH AS VOICE RECOGNITION SYSTEMS.VOICE RECOGNITION SYSTEMS.

PARALLEL PROCESSING SYSTEMS THAT CAN PARALLEL PROCESSING SYSTEMS THAT CAN MANAGE HUNDREDS OF PROCESSORS AT A TIME.MANAGE HUNDREDS OF PROCESSORS AT A TIME.

DISTRIBUTED SYSTEM WHICH WOULD PROVIDE DISTRIBUTED SYSTEM WHICH WOULD PROVIDE USERS WITH FILES, ACCESS TO PRINTERS, ACCESS USERS WITH FILES, ACCESS TO PRINTERS, ACCESS TO MAIL, TOTALLY TRANSPARANTLY TO THE USER. TO MAIL, TOTALLY TRANSPARANTLY TO THE USER. USERS COULD ACCESS FILES WITHOUT KNOWING USERS COULD ACCESS FILES WITHOUT KNOWING WHERE THOSE FILES ARE STORED OR SEND OUTPUT WHERE THOSE FILES ARE STORED OR SEND OUTPUT TO DIFFERENT PRINTERS WITHOUT KNOWING HOW TO DIFFERENT PRINTERS WITHOUT KNOWING HOW TO SELECT DIFFERENT PRINT DRIVERS.TO SELECT DIFFERENT PRINT DRIVERS.

Page 46: Chapter 6

THE BOOT PROCESS:THE BOOT PROCESS:

1.1. THE POWER SUPPLY DISTRIBUTES THE POWER SUPPLY DISTRIBUTES CURRENT TO THE MOTHER BOARD.CURRENT TO THE MOTHER BOARD.

2.2. THE CPU PASSES CONTROL TO THE THE CPU PASSES CONTROL TO THE BIOS PROGRAM STORED PERMANENTLY BIOS PROGRAM STORED PERMANENTLY THE COMPUTER'S MEMORY (IN ROM THE COMPUTER'S MEMORY (IN ROM CHIPS) THE BIOS PROGRAM BEGINS CHIPS) THE BIOS PROGRAM BEGINS EXECUTING. EXECUTING.

Page 47: Chapter 6

THE BOOT PROCESS:THE BOOT PROCESS:

3..THE RESIDENT PORTION OF THE 3..THE RESIDENT PORTION OF THE OPERATING SYSTEM (OPERATING SYSTEM (THE KERNELTHE KERNEL) ) LOADS INTO RAM MEMORY.LOADS INTO RAM MEMORY.

4. THE KERNEL EXECUTES THE 4. THE KERNEL EXECUTES THE COMMANDS IN THE CONFIGURAION COMMANDS IN THE CONFIGURAION FILES (DEVICE DRIVERS ARE FILES (DEVICE DRIVERS ARE LOADED)LOADED)

Page 48: Chapter 6

THE BOOT PROCESS:THE BOOT PROCESS:

5. THE KERNEL LOADS THE 5. THE KERNEL LOADS THE COMMAND INTERPRETOR PROGRAM COMMAND INTERPRETOR PROGRAM ((COMMAND.COMCOMMAND.COM).).

6. THE COMMAND INTERPRETOR 6. THE COMMAND INTERPRETOR EXECUTES THE STATEMENTS IN THE EXECUTES THE STATEMENTS IN THE AUTOEXEC.BAT FILE. AUTOEXEC.BAT FILE.