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
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.
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
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
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