高级操作系统高级操作系统 (8).pdf
第 2 讲:OS Architecture&Structure第二节:HistoryHistoryMULTiplexed Information and ComputingService(MULTICS)Multics is a timesharing OS begun in1964 and used until 2000.Joint project between MIT,Bell Labs,and GEPrimary usage was with a mainframeand multiple terminals.historyMultics onGE645.HistoryDesign Goals&Features of multics(1964)?Segmented|Paging based VirtualmemoryFirst hierarchical file systemHigh-level language implementation(IBMs PL/I)Shared memory multiprocessorDynamic linking and function call bynameSecurity and rings.HistoryAddressingMultics uses a GeneralizedAddressIt is calculated differentlydepending on if the CPU isattempting to read aninstruction or data.HistoryAddressingMultics uses a GeneralizedAddressIt is calculated differentlydepending on if the CPU isattempting to read aninstruction or data.HistoryTHE Structure of the“THE”-MultiprogrammingSystemMay,1968Response to a call for papers on timely research anddevelopment effortsSix person team3 Guiding PrinciplesSelect an ambitious projectSelect a machine with a good basic design(EL X8)Experience!=Wisdom.HistorySIGOPS Hall of Fame summary“The first paper to suggest that an operating system bebuilt in a structured way.That structure was a series oflayers,each a virtual machine that introducedabstractions built using the functionality of lower layers.The paper stimulated a great deal of subsequent work inbuilding operating systems as structured systems.”ContributionsSystem HierarchyStorage AllocationProcessor AllocationSemaphores.HistoryTHE Structure of the“THE”-MultiprogrammingSystemGoalQuick turn-around for short term programsEconomic peripheral useEconomic backing store and processor useFlexibility as a general purpose computer.HistoryTHE Structure of the“THE”-MultiprogrammingSystemChallenge:Complex softwares v.s.puny hardwareChallenge:Multiprogramming.HistoryTHE Structure of the“THE”-MultiprogrammingSystemSolution:Layered StructureVirtualized I/O streamsPrivate consoleOne huge/unlimited memory spaceOne processor,manage interrupt.HistoryThe Structure of the“THE”-Multiprogramming SystemSolution:SemaphoreTHE OS requires synchronization.HistoryThe Structure of the“THE”-Multiprogramming SystemFuture:verificationTesting was done from the bottom level up,Eachlevel was exhaustively tested prior to the next.ButTesting is not enough.HistoryIs THE a good system at that time?YesPerformance20%slower than single machineShort turnaround time(latency)for short jobsBenefit from the multiprogramming design choiceProgrammabilityvirtual BIG memoryBenefit from the VM design choiceReliability.