• Keine Ergebnisse gefunden

PROCESS DATA SEGMENT (PDS) ELIGIBLE)

THE MULTICS FILE SYSTEM

D- PROCESS DATA SEGMENT (PDS) ELIGIBLE)

ONE PER PROCESS (WIRED-WHEN_

-."-".---'

-CONTAINS PROCESS RELEVANT INFO SUCH AS PROCESS ID, USER ID, HOME/WORKING/PROCESS DIRECTORIES, AIM CLASSIFICATION, INITIAL

RING, ETC .

D CONTAINS ALL INFORMATION ABOUT ·.rn~ PROCESS NEEDED BY THE

SUPERVISOR CODE WHEN THE PROCESS IS RUNNING

CONTAINS SAVE AREAS FOR CONTEXT INFORMATION. ABOUT FAULTS WrlICH CAN RESULT IN GIVING UP THE PROCESSOR: PAGE FAULTS, SEGMENT FAULTS, AND ALL FAULTS NOT HANDLED BY THE SUPERVISOR

PROCESSOR DATA SEGMENT (PRDS) - ONE PER CONFIGURED CPU (WIRED) SERVES AS RING-ZERO STACK FOR PAGE CONTROL AND TRAFFIC CONTROL

n ALSO CONrAINS SAVE AREAS FOR CONTEXT INFORMATION ABOUT FAULTS WHICH USUALLY DO NOT MEAN GIVIN.G UP THE PROCESSOR: CONNECT FAULTS AND INTERRUPTS.

Not To Be Reproduced 2-28 FaQA

FAULT AND INTERRUPT HANDLING

FIM TABLE

~rr-.i'\ O~

'r-'.lY'

V'\ V\ k ('e 0\\ "(A~\ ~.

D A TABLE IN THE FIM PROGRAM WHICH DESCRIBES THE ACTION TO BE TAKEN FOR VARIOUS TYPES OF FAULTS

a.,

Pt t

( 001.

LJ

Not To

Be

Reproduced 2-29 F8GA

SYSTEM, INITIALIZATION SVre0

V

1SO( L,n'<:

>!lfjff'h!::>

~ FUNCTION

1 S ~}-fl\(, t )

nC) T

f)-{hA'f'--:('

\e'. JOl\e o-.~C(~&

Dr '\

lVv-e.

~

·

~~

a cd

oe

> Y1"

J,/'n""" ~ \:" k,,~.

PREPARE THE-SYSTEM TO OPERATE, . STARTING FROM A COMPLETELY EMPTY MACHINE

READS IN SUPERVISOR PROGRAMS FROM SYSTEM TAPE, SNAPS LINKS BETWEEN SUPERVISOR COMPONENTS, VERIFIES AND INITIALIZES HARDWARE CONFIGURATION, SETS UP SYSTEM DATABASES, ACCEPTS STORAGE SYSTEM DISKS AND PREPARES THEM FOR USE BY THE FILE SYSTEM

-n --MOST -PROGRAMS I N SYSTEM INITIALIZATION IS COMPLETE.

INITIALIZATION ARE

0(' I y' 'E>~T SP c -,\~'"

DELETED AFTER l,.s IC'~ (1'.

SUPERVISOR PROGRAMS ARE LOADED IN THREE "COLLECTIONS", EACH OF WHICH DEPENDS ON THE MECHANISMS SET UP BY THE PREVIOUS ONE

~ V~JOR DATA BASES

THESE DATA BASES ARE ALL BUILT DURING THE PROCESS OF INITIALIZATION (EXCEPT FOR THE CONFIG DECK) AND KEPT AFTER

I NI TI ALI ZATI ON IS FI NI SHED f (9 r ~ <: ~v~~ ''''~

SEGMENT LOADING TABLE (>sll>slt)

~

CONTAINS AN ENTRY DESCRIBING THE ATTRIBUTES OF EACH SEGMENT 'IN THE SUPERVISOR

Not To Be Reproduced .2-30 FBQA

D

n

SYSTEM INITIALIZATION

. \ 0 f

~~\\J")~'.n~

NAME TABLE (>sll>name table)

- ()

.jIY'-B~~

s

<t '~£J ~

o CONTAINS A LIST OF NAMES FOR EACH OF SUPERVISOR

\ ·f,

b

O()f\-~--""-"\~( [~r<'O ("

~ ~f ~e'v\JC1)~-\V\") DEFINITIONS SEGMENT (>sll>definitions_)

THE SEGMENTS IN THE

o CONTAINS THE DEFINITIONS SECTIONS FOR ALL THE -SEGMENTS IN THE SUPERVISOR, WHICH ARE USED IN ORDER TO SNAP LINKS BETWEEN THE SUPERVISOR MODULES

o CONFIG DECK (>sll·>conf i9_deck)

CONTAINS A DESCRIPTION OF THE HARDWARE CONFIGuRATION AND CERTAIN SOFTWARE PARAMETERS

o PROVIDED TO SYSTEM INITIALIZATION BY BOS

z SHUTDO~ -- TERMINATES THE ACTIVITIES OF THE SYSTEM IN AN ORDERLY FASHION

TWO TYPES OF SHUTDOWN:

NORMAL REQUESTED BY THE INITIALIZER, RUNS IN THE USUAL SUPERVISOR ENVIRONMENT

n EMERGENCY -- OSED AFTER A CRASH, MUST MAKE THE SUPERVISOR ENVIRONMENT OPERABLE BEFORE PROCEEDING

Not To 3e Reproduced 2-31 F80A

SYSTEM INITIALIZATION

BOTH TYPES EXIST PRIMARILY TO SHUT DOWN THE FILE SYSTEM -- THAT IS, TO WRITE ALL DATA IN ~~MORY INTO ITS PROPER HOME ON DISK

n INCLUDES PAGES OF SEGMENTS, VTOCES, VOLUME AND VTOC MAPS

n SHUTDOWN ESSENTIALLY RUNS THE STEPS OF INITIALIZATION BACKWARDS, BUT WITH A LOT OF SHORTCUTS

Not To Be Reproduced 2-32 F80A

FILE SYSTEM SALVAGERS

§D FUNCTION

n ENSURE THE CONSISTENCY OF THE FILE SYSTEM DATABASES AND PERFORM PERIODIC PREVENTIVE MAINTENANCE OPERATIONS

THERE ARE SEVERAL SALVAGERS, EACH WITH A DIFFERENT FUNCTION

o BECAUSE OF THE COMPLICATED INTERACTIONS THEY HAVE WITH THE REST OF THE FILE SYSTEM, THE SALVAGERS ARE PERHAPS THE MOST COMPLICATED SINGLE PROGRAMS IN THE SUPERVISOR

n SOME SALVAGING IS DONE AUTOMATICALLY, WHEN THE SYSTSM DETECTS AN

INCONSISTENCY. OTHER SALVAGE OPERATIONS ARE EXPLICITLY REQUESTED, BY PRIVILEGED USERS.

o EXCEPT FOR SUPERVISOR BUGS, THE ONLY TIME DAMAGE OCCURS THAT REQUIRES SALVAGING TO FIX IS AFTER A CRASH WHERE EMERGENCY SHUTDOWN FAILS

~ THE SALVAGERS:

DIRECTORY SALVAGER

CORRECTS INCONSISTENCIES IN DIRECTORY SEGMENTS BY REBUILDING THEM

THIS IS THE ONLY SALVAGER INVOKED AUTOMATICALLY IN USER·

PROCESSES: ANY ATTEMPT TO LEAVE RING ZER0 WITH A DIRECTORY LOCKED FOR WRITING WILL CAUSE IT TO BE SALVAGED

Not To 3e Reproduced 2-33 F80A

FILE SYSTEM SALVAGERS

DIRECTORY SALVAGING ALSO RECLAIMS WASTED SPACE IN THE DIRECTORY, AND IS RUN PERIODICALLY TO COMPACT DIRECTORIES

QUOTA SALVAGER

CORRECTS INCONSISTENCIES IN THE QUOTA SYSTEM

PHYSICAL VOLUME SCAVENGER

f I.ye>.

V6IvpV\~ f"lCx(1

l

\!'\OC~

MltP f I~p~ vP fe ( or}.S

{\'la '(

fC~d

c 5

b<J.n ~ v>fd.

n RECONSTRUCTS RECORD AND, VTOCE STOCK INFORMATION .FROM THE VTOCES ON A VOLUMEy THEREBY RECLAIMING ANY RECORDS OR VTOCES WHICH MIGHT HAVE BEEN 'LOST

RUNS ENTIRELY ONLINE WHILE THE SYSTEM IS UP FOR USERS (NEW IN MR10.1)

THIS TYPE OF DAMAGE IS USUALLY BENIGN, SO RUNNING THE SCAVENGER CAN BE DELAYED.

'PHYSICAL VOLUME SALVAGER

n RECONSTRUCTS RECORD AND VTOCE STOCK INFORMATION

RUNS ONLY DURING INITIALIZATION, AND THEREFORE DELAYS CRASH RECOVERY

n NOW USED ONLY FOR RARE CASES WHERE THERE IS NOT ENOUGH FREE SPACE LEFT FOR THE SCAVENGER TO RUN. IN THESE RARE CASES, Tm IS INVOKED AUTOMATICALLY BY SYSTEM INITIALIZATION.

SWEEP PV

Not To Be Reproduced 2-34 • F8QA

FILE SYSTEM SALVAGERS

n DELETES UNUSED VTOC ENTRIES WHICH HAVE ·NO DIRECTORY ENTRY POINTING TO THEM

RUNS ENTIRELY IN USER RING, EXCEPT FOR ACTUALLY READING VTOC ENTRIES AND DIRECTORY ENTRIES

PURELY A HOUSEKEEPING FUNCTION, AND RUN ONLY RARELY.

Not To Be Reproduced 2-35 F8CA

METERING & TUNING

~ WHILE NOT A SUBSYSTEM ITSELF, METERING AND TUNING IS A POLICY AND CAPABILITY COMMON TO ALL OF THE SUPERVISOR'S SUBSYSTEMS

~ FUNCTION

METERING (CONSISTS OF THREE ACTIVITIES) ACCUMULATING DATA: THIS

SUPERVISOR BY CODE WHICH

IS PERFORMED THROUGHOUT THE

D RECORDS THE NUMBER OF TIMES AN EVENT HAPPENS- OR A PARTICULAR PIECE OF CODE IS EXECUTED; AND/OR

RECORDS THE TIME REQUIRED TO PERFORM A TASK

SUCH· DATA I S STORED IN AREAS REFERRED TO AS "~.ETERING

CELLS"

. n EXTRACTING DATA: THIS IS PERFORMED BY NUMEROUS METERING COMMANDS WHICH (WHEN INVOKED)

READ AND STORE THE CURRENT VALUES OF RELEVANT METERING CELLS

REPORTING THE DATA: THIS IS PERFORMED BY THE METER COMMANDS WHICH (WHEN INVOKED)

COMPARE CURRENT METERING CELL VALUES WITH ?REVIOUSLY READ VALUES

PERFORM THE APPROPRIATE ARITHMETIC COMPUTATIONS UPON THE DATA IN ORDER .TO ARRIVE AT THE DESIRED STATISTIC

ARRANGE THE DATA IN A USEFUL FORMAT (A REPORT OR DIAGRAM) AND PRINT IT

Not To Be Reproduced 2-36 F8QA

METERING & TUNING

TUNING

n CHANGING THE SYSTEM'S OPERATING PARAMETERS AND/OR CONFIGURATION BASED UPON THE DATA AND INSIGHTS FROM THE SYSTEM'S METERS

z MAJOR.DATA ,BASES

D SST HEADER, TC DATA HEADERf ~TCe

Not To 3e Reproduced 2-3i ?80A

INITIALIZER.SYSDAEMON

~ FUNCTION

THE SYSTEM'S INITIALIZATION! ADMINISTRATIVE AND CONTROL PROCESS (Initializer.SysDaemon.z), aESPONSIBLE FOR:

INITIALIZING THE OPERATING SYSTEM AT BOOTLOAD, FOLLOWING SUCCESSFUL INITIALIZATION OF THE SUPERVISOR

n ANSWERING SERVICE (login' and logout) n PROCESS CREATION AND DESTRUCTION

MESSAGE COORDINATOR (DAEMON C90RDINATION) SYSTEM ADMINISTRATION.FUNCTIONS

n SYSTEM ACCOUNTING FUNCTIONS

~ MAJOR DATA BASES, ALL KEPT'IN >scl

ANSWER TABLE

ABSENTEE USER TABLE

n DAEMON USER TABLE

-

-Not To Be Reproduced 2-38 F8QA

INITIALIZER.SYSDAEMON

n MASTER GROUP TABLE (MGT)

o CHANNEL DEFINITION TABLE (CDT)

SYSTEM ADMINISTRATION TABLE (SAT)

PERSON NAME TABLE (PNT)

D PROJECT DEFINITION TABLES (PDT'S)

Not To Be Rep:oduced 2-39 ?80A

(Ene Of Topic)

TOPIC III

The Multics Environment

What is a Proce~s • • • • Cooperating Processes • .

The PL/I Operators • • • • • • Interfaces to System Modules Deadlock Prevention • • •

Types of Locks e _ e e e e

3-i

Page

• 3-1

· 3-4 3-7 .• 3-9

• 3-10 3-15

FSQA.

~ ~ ~ PROCESS

~ A MOLTICS PROCESS IS A WELL DEFINED COLLECTION OF SEGMENTS, EACH WITH DEFINED ACCESS, OVER WHICH A SINGLE EXECUTION POINT IS FREE TO ROAM (I.E., FETCH INSTRUCTIONS AND MAKE DATA REFERENCES)

~ THE ADDRESS SPACE OF A PROCESS IS THE ABOVE "COLLEC~ION OF SEGMENTS". SUCH SEGMENTS ARE SAID TO BE KNOWN TO THE PROCESS

~ EVERY LOGGED IN USER HAS A PROCESS

~ VERY IMPORTANT CONCEPT: THE MOtTICS SUPERVISOR RUNS IN THE USER'S PROCESS (IE: IN THE USER'S ADDRES·S SPACE), BUT IN A DIFFERENT RING

~ A PROCESS TAKES ON THE IDENTITY OF THE SOFTWARE IT IS EXECUTING WHERE EVER IT GOES

WHEN A USER WISHES TO CREATE A SEGMENT, IT IS THE USER'S PROCESS wnICH EXECUTES THE SUPERVISOR CODE hcs_sappend, CREATING TEE SEGMENT

~ A PROCESS CAN BE VIEWED AS A CONTINUAL FLOW OF EXECUTION FLUCTUATING BETWEEN DIFFERENT RINGS: PRIMARILY RING FOUR AND RING ZERO

Not To 3e Reproduced 3-1 F8GA

7 6 5 4 3 2

c::J 1

Z

0 : 0

....

WHAT IS A PROCESS