dtss – (1963 to 1965) page 4, paragraph 2. dtss – (1963 to 1965) hardware components time-line...

30
DTSS – (1963 to 1965) page 4, paragraph 2

Post on 22-Dec-2015

220 views

Category:

Documents


0 download

TRANSCRIPT

DTSS – (1963 to 1965)

page 4, paragraph 2

DTSS – (1963 to 1965)

Hardware components Time-line Software Anecdotes

By John S. McGeachie ‘65

DTSS Component Overview

DISC

GE-235

(40)

DN-30

Teletypes – slow but reliable

• Photo is 33 ASR but we had model 35 KSR units – larger and rock-solid

• Upper case only• 10 characters per second• 11 bits per character:

Start bit – zeroEight data bits (7 + parity) (ASCII)Two stop bits – ones

DN-30 Communications Processor

• User I/O – bit-by-bit!• Master scheduler• Storage manager• 16K 18-bit words• 7 µsec cycle time

Extraordinarily elegant design, built for multi-terminal I/O

GE-235 processing unit

• Compile and run user programs• Background tasks• 16k 20-bit words• 6 µsec cycle time• Separate floating point arithmetic unit

Standard batch-oriented computing workhorse … with a priority interrupt mechanism

Disc Storage Unit

Physically massive dual-access disc subsystem

• Three boxes:- Access controller- File electronics- Storage unit

• 64-word records• 225 ms average access time• 238 & 476 kbps xfer rates• 14 MB storage capacity …

for all users

16 coffee-table-size platters

Other stuff

Card reader Card punch

Magnetic tape

Printer

Dual-access

Cooperative access – each machine “relinquished” access to the other

DN-30 read/write: 18 bits of each 20-bit word DN-30 could override and seize control Special modification: 96-record read-write (6144

words) with one seek (normally 16 records max)

Computer-to-computer

Key to system operation DN-30 reads/writes GE-235 memory via

Computer Interface Unit (“CIU-930”) 18-bit DN-30 word to bits 2-19 of GE-235 word;

bits 0, 1, and parity bit sent from “control flip-flops” – essentially, three extra bits available for certain I/O operations.

DTSS – 1963 to 1965

Hardware components Time-line Operating systems software Anecdotes

Time-line – we beat the estimates!

1963 Fall – learn to program, grasp strategy 1964:

– Winter – code execs, debug Basic– Spring – success! Three teletypes.– Summer – 20 teletypes, Algol– Fall – background; system replicated at GE

1965:– Summer – GE begins commercial service in Phoenix & NYC– Fall – 40 teletypes

The early players

Kemeny & Kurtz – select hardware, develop strategy, create Basic

Busch ’66 (DN-30) & McGeachie ’65 (GE-235) – design and code execs, devise overall tactics, be impatient

Bellairs ’65 – Basic (JGK on sabbatical) Moore ’65 – Symmaint, Fortran Froehbose ’65 – Edit Garland ’63, O’Gorman ’64 (?) – Algol Jim Brackett (GE) – keep hdwe running, get modifications

approved

The later players – some errors and omissions (after my time)

Dick Lacey ‘67 Ron Martin ’67 Steve Hobbs ’67 Dave McGill ’67 Gary Broughton ‘? At GE – Larry Hittel, George Freund, George

Friend, Walt Kozinski & others

Hardware components Time-line Operating systems software Anecdotes

DTSS – 1963 to 1965

DN-30 – operating system (“exec”)

D-30 exec had two modes of operation:• Real-time – not interruptible

•An interrupt every bit-time for TTY I/O – 10 cps x 11 bits/char => 110 interrupts/sec => 9 ms

•Five TTYs serviced during each of eight interrupts•CIU (to/from GE-235) serviced on cycles 4, 8, and 11

• Spare-time – interruptible•Disc I/O (19 seconds to output 64 words to TTY)•Hello, OLD, LIST, SAVE, RUN, BYE, …•Schedule jobs to run on GE-235•Assign disk space for saving programs

DN-30 – memory usage

Exec data & tables 1024 wordsPer TTY data 3072

Code 5120 !!!

I/O buffers 7168

Total 16384 words

Each terminal has 48 words of character and control storage, and two 64-word disc I/O buffers. Addressing idiosyncrasies require that these all start on 64-word boundaries.

DN-30 – scheduler

Six priority levels:0 – OLD 1 – LIST2 – SAVE3 – Initial RUN4 – Program request for input5 – Continued RUN, background

“As a given problem continues to run, it is given progressively longer running times in the GE-235, but is eligible for scheduling progressively less often. The effect is to allow long problems to run with fewer swaps, while short problems receive rapid response.” [Comments in the code!]

Computer-to-computer (cont.)

DN-30 sends commands to a mailbox area:– List or Save (implies Edit)– Compile and run (Basic, Algol, etc.)– Suspend and swap– Continue previously suspended program

GE-235 responds with acknowledgment and other info Failure to respond in ~20 ms results in re-boot DTSS innovation – use the CIU for commands, and the

disc for data exchange.

GE-235 executive

• Edit, compile, and execute user programs• Suspend and resume user programs on

instructions from DN-30• Run background tasks when time available:

– Run software maintenance and assembly– Billing– List card decks (on high-speed printer)– etc.

GE-235 memory usage

Data & buffers 2048 words

User program area 6144Compiler & run-time 6144Resident code 1536Overlay code 512

Total 16384 words

GE-235 overlay area

Small (512-word) area into which blocks of code were loaded as needed for background tasks:

•19 overlays by August 1965•Peripheral operations•Billing updates•Disc maintenance•Assemblers (for GE-235 and DN-30 programs)

GE-235 – application programs

• Application programs =• Languages (Basic, Algol, Fortran)• Special editors (document formatting)• “Background” maintenance aids (e.g.,

assemblers, assembly-language editors)• 6,144 words in memory at one time• Application “overlays” allowed – application

could ask 235-exec to overwrite itself with all or part of another 6,144-word block.

Efficiency issues

• Never reload a language system if it is already in memory

• Within given priority and run queue, sequence user programs using same compiler (see above)

• Alternate compilers on tape, read tape backwards or forwards according to system required (eventually moved languages to disc for reliability)

• Locate directories in middle of disc platters• Background software maintenance (Symmaint)

Implications

Good protection against errant (but not malicious) application software.

Subscript-checking for all user programs. Applications (compilers, run-time packages,

whatever) re-entrant. GE-235 exec required small footprint. Disc I/O significant (so what’s new?)

Fail-safe & unattended operation

GE-235 – DN-30 forces boostrap if:–Failure to respond to DN-30 in 20 ms–Too long to complete certain operations–Illegal response in mailbox area

DN-30–Q-ctr going to zero creates interrupt–If two reloads of Q-ctr w/o intervening interrupt,–If Q-ctr drops to –32, –If Halt instruction executed,DN-30 “hardware loads” (boostrap DN-30 from embedded paper tape reader)

Hardware modifications

Hardware components Time-line Operating systems software Anecdotes

DTSS – 1963 to 1965

Anecdotes

“He did it” … “I did it” Landers Restaurant Hide & seek The night is ours Kemeny goes on sabatical Kevin O’Gorman & “Dartmouth Algol”

Busch McGeachie

DTSS Component Overview