Article 1149 of alt.sys.pdp10: Path: shellx.best.com!news1.best.com!news3.net99.net!news.cais.net!newsfeed.internetmci.com!usenet.eel.ufl.edu!tank.news.pipex.net!pipex!howland.reston.ans.net!swrinde!sgigate.sgi.com!uhog.mit.edu!bloom-beacon.mit.edu!ai-lab!usenet From: tk@ai.mit.edu (Tom Knight) Newsgroups: alt.sys.pdp10 Subject: Re: TECO and mung command Followup-To: alt.sys.pdp10 Date: 26 Sep 1995 00:23:45 GMT Organization: MIT Artificial Intelligence Laboratory Lines: 25 Message-ID: References: <441uci$d4l$1@perth.dialix.oz.au> <443pfm$7l7@news.cerf.net> <444687$t3h@agate.berkeley.edu> <444a1d$dm4@news.cerf.net> NNTP-Posting-Host: entropy.ai.mit.edu In-reply-to: pd@sics.se's message of 24 Sep 1995 22:44:57 GMT >>> "-" == Per Danielsson writes: -> That would have been Stewart Nelson borrowing a screwdriver from -> Bill Bennett. Or so the story goes. I don't think Nelson munged -> the screwdriver, though. On the contrary. Bill Bennett was fond of telling anyone around that "Tools don't just get used up." Nelson was rewiring one of the light switches, which, regretably, was live. He shorted the live wire to the box, blew the breaker, and arc-welded this 1/4" circular hole out of the corner of the screwdriver blade. He left it on Bennett's desk with a note that said "used up." Someone asked how many ITS machines there were. There was the original PDP-6, AI, and a KA-10 (with pager) (also called AI). There was a Mathlab KA, ML, with SC pager. There was a dynamic modelling KA, DM (home of Zork), also with SC pager. There was a new Mathlab KL (MC). There was a pair of KS-10's later which were renamed AI and MC. I think that was it for the systems at MIT. I think a few others were brought up other places -- one of the KL's went to Sweden, and I think MRC brought ITS up a few times on his machine. KLH has run ITS on his simulator. Article 1155 of alt.sys.pdp10: Path: shellx.best.com!news1.best.com!sgigate.sgi.com!swrinde!tank.news.pipex.net!pipex!btnet!uunet!in1.uu.net!news.u.washington.edu!Tomobiki-Cho.CAC.Washington.EDU!mrc From: Mark Crispin Newsgroups: alt.sys.pdp10 Subject: Re: TECO and mung command Date: Mon, 25 Sep 1995 21:53:57 -0700 Organization: Networks & Distributed Computing Lines: 31 Message-ID: References: <441uci$d4l$1@perth.dialix.oz.au> <443pfm$7l7@news.cerf.net><444687$t3h@agate.berkeley.edu> <444a1d$dm4@news.cerf.net> Reply-To: Mark Crispin NNTP-Posting-Host: tomobiki-cho.cac.washington.edu Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII NNTP-Posting-User: senf In-Reply-To: On 26 Sep 1995, Tom Knight wrote: > I think that was it for the systems at MIT. I think a few others were > brought up other places -- one of the KL's went to Sweden, and I think > MRC brought ITS up a few times on his machine. KLH has run ITS on his > simulator. Yup. I helped debug the RM03 code; there was a loop waiting for a controller status register to get lit that happened with RP06s, but never on RM03s. Unfortunately, ITS on an RM03 was pretty much useless; with only 67MB to play around with you ending up having to be fairly aggressive in flushing stuff. It was easy to flush some of the random crud that had accumulated over the years, but then you had to start making tough decisions... I thought about writing RM05 support, but I never got A Round Tuit. ;-) What did strike me was how dependent ITS had become on the network. There were links to MC: in the system directories, MAIL and INQUIR wouldn't run without the network, and I think that LISP would valret if it couldn't find the net. I still have the ITS pack mounted on one of the RM03 spindles, so ITS is only a boot switch away... -- Mark -- DoD #0105, R90/6 pilot, FAX: (206) 685-4045 ICBM: N 47 39'35" W 122 18'39" Science does not emerge from voting, party politics, or public debate. Article 3998 of alt.sys.pdp10: Path: nntp1.ba.best.com!news1.best.com!newshub.northeast.verio.net!logbridge.uoregon.edu!news.oru.edu!sol.pdnt.net!bony.umtec.com!root From: Daniel Seagraves Newsgroups: alt.sys.pdp10 Subject: How does the ITS filesystem work? Date: Mon, 29 Jun 1998 13:34:10 -0500 Organization: Planet Digital Network Technologies Lines: 163 Approved: Why bother? Message-ID: NNTP-Posting-Host: bony.umtec.com Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Xref: nntp1.ba.best.com alt.sys.pdp10:3998 I'm trying to figure this out myself. I ran into the wall. I'll post what I do know, and maybe someone can fill in the gaps. All of the specifics came from syseng;fsdefs.40 (Did I get THAT right?) The ITS filesystem has 3 main parts: The MFD, the TUT, and UFDs. The MFD is the Master File Directory. UFD is User File Directory. I don't know what TUT stands for. MFD STRUCTURE: Location equation: MFDBLK=NBLKS/2-1 MFDCYL=MFDBLK/NBLKSC MFDSRF=(MFDBLK-MFDCYL*NBLKSC)*SECBLK/NSECS MFDSEC=(MFDBLK-MFDCYL*NBLKSC)*SECBLK-MFDSRF*NSECS I guess this is to put it toward the center of the disk. Info in MFD: MDNUM Ascending dir # I assume this would be zero for the MFD? MDNAMP PTR to org of user name block area MDYEAR Current year MPDOFF De-coriolis clock offset What does de-coriolis mean? MPDWDK Preferred writing disk (Physical #) I guess this means "Write to disk #N instead of me"? MDCHK Must say "M.F.D." (For checking) MDNUDS Number of user directories (For checking) LMIBLK Total stg used by hacks like this Okay, what's stg? ;USER NAME BLOCKS FROM C(MDNAMP) TO END LMNBLK #WDS/BLK MNUNAM UNAME (SIXBIT) ;SECOND WORD OF A USER-NAME BLOCK IS ZERO Where do passwords get stored? TUT INFO: What the heck does TUT stand for? Or is it some meaningless acronym, just to confuse? Location Equation: TUTBLK=MFDBLK-NTUTBL TUTCYL=TUTBLK/NBLKSC TUTSRF=(TUTBLK-TUTCYL*NBLKSC)*SECBLK/NSECS TUTSEC=(TUTBLK-TUTCYL*NBLKSC)*SECBLK-TUTSRF*NSECS Other info: TUTBYT Size of bytes (?) TUTBP (440000+TUTBYT_6) (?) TUTEPW Entries per word (36/TUTBYT) TUTMAX 1_TUTBYT TUTLK TUTMAX-1 Highest code means locked out Locked out of what? TUTMNY TUTLK-1 TUT many or more refs? What is this for? ;Info in TUT (At the front) QPKNUM Pack # QPAKID Pack ID QTUTP Free space pointer to track area. Advance by cylinders. QSWAPA Swapping area. First track of non-swapping area. New files will not be written lower than this. QFRSTB First block TUT'ed. QLASTB Last block TUT'ed. I guess I would understand this if I knew what TUT was. QTRSRV -1 if only allocated dirs can have files on this pack. If not 0 and not -1, SIXBIT name of SECONDARY pack. ;STG FOR RANDOM INFO ^ LTIBLK Bytes mapping the disk start here How do these bytes work? UFD INFORMATION: Location equation: If A is relative location of MFD entry, user dir is located in track numbered (A-2000+2*MDNUDS)/2 (See QFL2) ^^^^^^^^^^^^^^^- That's pretty... UFDBYT Size of bytes UFDBPW 36/UFDBYT Bytes per word Random info in UFD: UDESCP FS ptr to descriptor area UDNAMP Ptr to org of name area UDNAME Username (For checking) UDBLKS Left half has amount of space allocated (Not currently used by system), right half has number of blocks used. UDALLO If nonzero, left half has disk number, right half has amt of space allocated UDDESC First loc avail for desc UFD descriptors: 0=FREE, 1-UDTKMX = Take next N UDTKMX+1 thru UDWPH-1 = Skip N-UDTKMX and take one UDTWPH = Write-Place-Holder 40 bit set = load address. Lower 5 bits plus next NXLBYT (2) chars (17 bits in all) 40 bit & 20 bit set = "Funny" block if DMDSK. What is this, anyway? End by 0. What is all this crud for? Can someone explain it better? If link descr 6 char or until ; = SYS NAME. Must have no char = 0 in this or next 2 names. Next char quoted by : (For names with : or ;) Next char N1 Next char N2 End by 0 Link... like a UNIX symlink/hardlink? UDTKMX Highest "TAKE N" code UDWPH Place holder on write (Or null file) UDSKMX # of blocks that can be skipped NXLBYT # of additional bytes for load addr In system this is defined at front of file Name Area Data LUNBLK WDS/NAME block UNFN1 First FN UNFN2 Second FN UNRNDM All kinds of random info UNDSCP 1500 PTR to desc UNPKN 150500 pack # UNLINK 1 Link bit UNLNKB 220100 UNREAP 2 If one, don't reap file UNWRIT 4 Open for writing UNMARK 10 GC mark bit UNCDEL 20 Del when closed DELBTS 20 Deleted - Ignore UNIGFL 24 Bits to ignore file UNWRDC 301200 Word count of last block mod 2000 UNDUMP 400000 Has been dumped UNDATE Date etc. UNTIM 2200 Compacted time of creation UNYMD 222000 Y,M,D of creation UNMON 270400 Month UNDAY 220500 Day UNYRB 330700 Year UNREF Refrence date same as left half of UNDATE UNREFD 222000 Refrence date byte pointer UNAUTH 111100 MFD index of author, all 1 = no directory UNBYTE 001100 File byte size and length info Let S=bits per byte, c=count of unused bytes in last wd 400+100xS+C S=1 to 3 C=0 to 35 200+20xS+C S=4 to 7 C=0 to 8 44+4xS+C S=8 to 18 C=0 to 3 44-S S=19 to 36 C=0 Note that old files have UNBYTE 0 => S=36 ^L IF1 IFDEF NUDSL, IFG NUDSL*LMNBLK+LMIBLK-2000,.ERR MFD LOSES What does this line mean? So, to read FOO;BAR.TXT: 1. Locate MFD 2. Read dirnum of FOO 3. Seek to (dirnum-2000+2*MDNUDS)/2, this is the UFD start 4. Search for FN1 match. 5. Check FN2 for match, go back to 4 is mismatch. Note the file #. Now what? Article 3999 of alt.sys.pdp10: Newsgroups: alt.sys.pdp10 Subject: Re: How does the ITS filesystem work? References: Organization: D Bit, Troy, NY From: wilson@dbit.com (John Wilson) NNTP-Posting-Host: 199.181.141.53 Message-ID: <3597f08f.0@news.wizvax.net> Date: 29 Jun 1998 15:52:47 -0500 X-Trace: 29 Jun 1998 15:52:47 -0500, 199.181.141.53 Lines: 8 Path: nntp1.ba.best.com!news1.best.com!newsxfer3.itd.umich.edu!news-out.internetmci.com!newsfeed.internetmci.com!205.231.236.10!newspeer.monmouth.com!newsfeed.wizvax.net!news.wizvax.net!dbit.com!wilson Xref: nntp1.ba.best.com alt.sys.pdp10:3999 In article , Daniel Seagraves wrote: > What the heck does TUT stand for? Track Usage Table, I think. John Wilson D Bit Article 4000 of alt.sys.pdp10: Path: nntp1.ba.best.com!news1.best.com!news.maxwell.syr.edu!agate!bh From: bh@anarres.CS.Berkeley.EDU (Brian Harvey) Newsgroups: alt.sys.pdp10 Subject: Re: How does the ITS filesystem work? Date: 30 Jun 1998 02:23:29 GMT Organization: University of California, Berkeley Lines: 38 Message-ID: <6n9i71$87q$1@agate.berkeley.edu> References: NNTP-Posting-Host: anarres.cs.berkeley.edu Xref: nntp1.ba.best.com alt.sys.pdp10:4000 Daniel Seagraves writes: >I don't know what TUT stands for. Track Usage Table -- basically this is where you look for a free disk block. >MPDOFF De-coriolis clock offset > What does de-coriolis mean? This is only a guess, but probably Paul DeCoriolis, who worked there, built a hardware interval clock and this is the offset to convert clock ticks into some absolute time standard. >LMIBLK Total stg used by hacks like this > Okay, what's stg? Storage! > Where do passwords get stored? (grin) Actually, one April 1 you actually did need a password to log in. If I remember correctly it was "foo." >TUTLK TUTMAX-1 Highest code means locked out > Locked out of what? This sounds like a synchronization mechanism, to prevent two processes trying to allocate the same block, but I'm not sure. >TUTMNY TUTLK-1 TUT many or more refs? > What is this for? I believe that the TUT contained a reference count for each track. When the reference count is zero, the block is free. Since there are only a few bits per track, the count can max out. Such a track is then permanently allocated. > Link... like a UNIX symlink/hardlink? Like a symlink. Article 4179 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!su-news-hub1.bbnplanet.com!news.bbnplanet.com!newsfeed.corridex.com!europa.clark.net!206.55.3.15!news.clark.net!not-for-mail From: gagner@clark.net (Philip Gagner) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Wed, 07 Oct 1998 14:22:55 GMT Organization: TWLG Lines: 49 Message-ID: <361f769b.76525319@news.clark.net> References: <3613e9a8.18494117@news.clark.net> <6uvli1$o2j$1@strato.ultra.net> <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> Reply-To: gagner@clark.net NNTP-Posting-Host: gagner-ppp.clark.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 Xref: news3.best.com alt.sys.pdp10:4179 jmfbahciv@aol.com wrote: >> >I never met an ITS. Would you mind explaining why you'ld rather see >ITS run? What did you prefer in ITS over the -10 or -20? >/BAH This is a troll, right? :-o ITS was a cleaner implementation of an operating system. It could be, because it didn't have to support hundreds of thousands of different combinations of devices. As you know, it was developed at MIT AI. It lacked a lot in the area of security (this wasn't considered a defect, particularly), but it gave a lot on performance. And it was easier to maintain, by far. ITS didn't really have a command set. When you "logged in" (i.e. tickled the TTY controller or network controller), ITS would start a job process and load a copy of DDT. That DDT had been modified somewhat due to the complaints of non-hacker graduate students and some professors used to systems like MULTICS or CTSS, so that it had an overlay of "commands". Actually, there was only one "command", which was colon (:). The next word was dispatched through a table so that it looked like :LOAD or :DIR did useful things. But in reality, you were running a much enhanced version of DDT, which know about sub-processes. This made programming and debugging very much simpler, and you didn't have to load DDT in the address space of your program (remember all the times a program would run only with DDT loaded??) Anyway, ITS was designed early on to know about multiple processors (sort of--shared memory processors anyway) and remote devices. There was a real drive towards device independence, much more so than at DEC. So tape drives looked like disks, and so did pretty much everything else. This made remote devices a snap, because the system already encapsulated the hardware for devices and presented a uniform interface. The job control system calls were easier to use and more sophisticated. Inter-process communication was a very big item, much earlier than TOPS-10 had it. In fact, that part of the DECSystem-10 IPCF (InterProcess Communication Facility) which I worked on was modeled after the way ITS did it. Finally, the operating system package was much, much smaller than DECs. Problems with ITS included random musings which tried to pass for system documentation, almost completely uncommented system code (like some sort of recursive sacred scripture, the code was its own commentary), and lack of support for any device which didn't interest MIT or Stanford. Article 4189 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!nntprelay.mathworks.com!newsfeed.direct.ca!news.u.washington.edu!Tomobiki-Cho.CAC.Washington.EDU!mrc From: Mark Crispin Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Wed, 7 Oct 1998 14:23:20 -0700 Organization: Networks & Distributed Computing Lines: 47 Message-ID: References: <3613e9a8.18494117@news.clark.net> <6uvli1$o2j$1@strato.ultra.net> <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> NNTP-Posting-Host: tomobiki-cho.cac.washington.edu Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: nntp1.u.washington.edu 907795402 30208 (None) 140.142.17.40 X-Complaints-To: help@cac.washington.edu NNTP-Posting-User: chince In-Reply-To: <6vfom2$326$1@ligarius.ultra.net> Xref: news3.best.com alt.sys.pdp10:4189 On Wed, 7 Oct 1998 jmfbahciv@aol.com wrote: > I never met an ITS. Would you mind explaining why you'ld rather see > ITS run? What did you prefer in ITS over the -10 or -20? ITS and TOPS-20 were both much more advanced operating systems than TOPS-10. TOPS-20 had significantly better virtual memory than ITS. Conversely, ITS had more forward-looking processes (much like UNIX); TOPS-20 processes were in some ways like threads since they all shared the same job status (for example, changing the connected directory in one process did so for all processes). Like TOPS-10, ITS had a terrible mishmash of system calls in the early days, but later on the wonderful .CALL UUO (every argument and every return value followed very specific rules. TOPS-20's system calls started out with a better design, but it was allowed to get messy (although never as bad as TOPS-10). TOPS-20's command decoder was like TOPS-10's, only much better; however by today's shell standards it was pretty weak. ITS' command decoder was DDT; it was great for hackers but once again by today's shell standards it was even weaker than TOPS-10's. There may have been a MIC equivalent in ITS, but certainly nothing like PCL in TOPS-20. PCL in turn never matched the Unix shell; TOPS-20 and Unix were often compared as "TOPS-20 is an incredibly powerful OS hidden behind an incredibly powerless shell; UNIX is an incredibly powerful shell hiding an incredibly powerless OS." ITS used a significantly simpler pager than TOPS-20, but it was much better than the KI pager that all but the final versions of TOPS-10 used. ITS had good display terminal support (although not as good as WAITS), and the inspiration for Unix termcap came from ITS. Curiously, ITS never had built-in support for ANSI terminals. However, this definitely beat out anything that TOPS-20 (and especially TOPS-10) ever had, which is charitably characterized as "knowing the right way to draw delete last character on various terminals". ITS was a great "hacker's playground", but active development fell by the wayside in the late 1970s -- Mark -- * RCW 19.149 notice: This email address is located in Washington State. * * Unsolicited commercial email may be billed $500 per message. * Science does not emerge from voting, party politics, or public debate. Article 4207 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!su-news-hub1.bbnplanet.com!news.bbnplanet.com!logbridge.uoregon.edu!news.u.washington.edu!Tomobiki-Cho.CAC.Washington.EDU!mrc From: Mark Crispin Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Thu, 8 Oct 1998 12:20:30 -0700 Organization: Networks & Distributed Computing Lines: 26 Message-ID: References: <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <6vifaa$8of@bonkers.taronga.com> NNTP-Posting-Host: tomobiki-cho.cac.washington.edu Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: nntp1.u.washington.edu 907874447 29162 (None) 140.142.17.39 X-Complaints-To: help@cac.washington.edu NNTP-Posting-User: jjs To: Peter da Silva In-Reply-To: <6vifaa$8of@bonkers.taronga.com> Xref: news3.best.com alt.sys.pdp10:4207 On 8 Oct 1998, Peter da Silva wrote: > >However, this definitely beat out > >anything that TOPS-20 (and especially TOPS-10) ever had, which is > >charitably characterized as "knowing the right way to draw delete last > >character on various terminals". > I definitely recall hitting ^U on a TOPS-20 system on a 300 baud terminal > and seeing it use cursor positioning commands to clear the line. ^U (and ^W) are just multiple forms of "delete last character". TOPS-20 had a limited table of how to do certain things (line starve, clear to end of screen) but didn't do anything with them other than make delete (including ^W and ^U) do the right thing. MIT did real ITS-style display handling (I think that it was Mike McMahon who did the work, maybe Dan Gerson) but it was never widely adopted. However, nothing ever matched the wonderful display system that WAITS had. -- Mark -- * RCW 19.149 notice: This email address is located in Washington State. * * Unsolicited commercial email may be billed $500 per message. * Science does not emerge from voting, party politics, or public debate. Article 4192 of alt.sys.pdp10: Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands References: <361ba313.5952698@news.clark.net> Organization: D Bit, Troy, NY From: wilson@dbit.com (John Wilson) NNTP-Posting-Host: dbit.dbit.com Message-ID: <361c085e.0@news.wizvax.net> Date: 7 Oct 1998 20:33:34 -0500 X-Trace: 7 Oct 1998 20:33:34 -0500, dbit.dbit.com Lines: 41 Path: news3.best.com!news1.best.com!feed1.news.rcn.net!rcn!news.idt.net!newspeer.monmouth.com!newsfeed.wizvax.net!news.wizvax.net!dbit.com!wilson Xref: news3.best.com alt.sys.pdp10:4192 In article , Daniel Seagraves wrote: >On Wed, 7 Oct 1998, Philip Gagner wrote: >> I'm probably wrong about this, but as I recall ITS ran on the >> modified page controller that MIT used--would it ever run on a vanilla >> KL? I vaguely remember an effort to make it do that, but I never heard >> whether anyone got it working. The modified page controller existed in hardware form only on the KA machines, for the KL and KS it was done using custom microcode on vanilla hardware. Which is good news if that's what you have, but since the emulator won't be running the real microcode it will need to have a special ITS mode to emulate the behavior of the ITS microcode. >I have the DECsystem 10/20 Processor Refrence Manual from 36bit.org, >and I plan on emulating everything in it that I can. And if I can't, I'll >fake it, or find someone to explain it to me. FYI the ITS paging stuff isn't in any of the DEC docs, and neither are a few other goodies (like BLTBU/BLTUB) that may come up later. The ITS microcode sources will help a lot though. FWIW, I did a quick sketch of my understanding (from various sources) of ITS paging in http://www.dbit.com/pub/pdp10/info/paging.its >I'm at 43% done, and I'm not giving up Just to chime in with everyone else, don't underestimate the difficulty of the paging, interrupt, and I/O systems. Just to do KS10 style I/O you need to do a whole lot of twiddling to bridge between the Unibus and the KS10 bus (Unibus maps and BRx translation for both UBAs), and emulating the Unibus devices themselves is no picnic; I'm sure the KL10 I/O system is a lot harder. Thanks to bad docs, the TU77 is very difficult to get right, and the RM/RP disks aren't as bad but still non-trivial. But it's still doable, luckily the 10s don't seem to have had anything like the insane proliferation of different peripherals that DEC's 16/32-bit machines had, so you can do just one kind of disk (e.g. RP06) and one kind of tape (e.g. TU77) and probably satisfy 99% of everybody. John Wilson D Bit Article 4214 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!nntprelay.mathworks.com!howland.erols.net!newspeer.monmouth.com!news.ultranet.com!d16 From: jmfbahciv@aol.com Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Fri, 09 Oct 98 10:50:36 GMT Organization: UltraNet Communications, Inc. Lines: 96 Message-ID: <6vku3e$tba$1@ligarius.ultra.net> References: <3613e9a8.18494117@news.clark.net> <6uvli1$o2j$1@strato.ultra.net> <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <361f769b.76525319@news.clark.net> NNTP-Posting-Host: d16.dial-13.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 9 Oct 1998 12:03:58 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Xref: news3.best.com alt.sys.pdp10:4214 In article <361f769b.76525319@news.clark.net>, gagner@clark.net (Philip Gagner) wrote: >jmfbahciv@aol.com wrote: >>> >>I never met an ITS. Would you mind explaining why you'ld rather see >>ITS run? What did you prefer in ITS over the -10 or -20? >>/BAH > >This is a troll, right? :-o Actually, no. I'm really interested and very ignorant. > >ITS was a cleaner implementation of an operating system. It could be, >because it didn't have to support hundreds of thousands of different >combinations of devices. Yup. That's was always one of the compromises we had to make. One of the very first things that JMF and TW did when starting 7.01 was use that as an opportunity to bundle in sensible stuff and get rid of the stuff that had been haunting them for years. > As you know, it was developed at MIT AI. It >lacked a lot in the area of security (this wasn't considered a defect, >particularly), but it gave a lot on performance. And it was easier to >maintain, by far. > >ITS didn't really have a command set. When you "logged in" (i.e. >tickled the TTY controller or network controller), ITS would start a >job process and load a copy of DDT. That DDT had been modified >somewhat due to the complaints of non-hacker graduate students and >some professors used to systems like MULTICS or CTSS, so that it had >an overlay of "commands". Actually, there was only one "command", >which was colon (:). The next word was dispatched through a table so >that it looked like :LOAD or :DIR did useful things. But in reality, >you were running a much enhanced version of DDT, which know about >sub-processes. This made programming and debugging very much simpler, >and you didn't have to load DDT in the address space of your program >(remember all the times a program would run only with DDT loaded??) Actually, no. Example, please? > >Anyway, ITS was designed early on to know about multiple processors >(sort of--shared memory processors anyway) and remote devices. Was it a timesharing system or one these task partition systems that people have a tendency to call timesharing? > There >was a real drive towards device independence, much more so than at >DEC. My plan was to get the guys to figure out a way to add a new device without doing a rebuild. If a rebuild wasn't required, then a reload wouldn't be either. Jim always said that the whole data structure would have to be redefined and, if that had to be done, starting from scratch would be more cost effective. TW just pooh-poohed the idea; he was the type who never thought about the next thing :-)--he was content to leave that to us. > So tape drives looked like disks, and so did pretty much >everything else. This made remote devices a snap, because the system >already encapsulated the hardware for devices and presented a uniform >interface. The job control system calls were easier to use and more >sophisticated. Inter-process communication was a very big item, much >earlier than TOPS-10 had it. In fact, that part of the DECSystem-10 >IPCF (InterProcess Communication Facility) which I worked on was >modeled after the way ITS did it. That's why Peter was given the project (or so I thought). > >Finally, the operating system package was much, much smaller than >DECs. > >Problems with ITS included random musings which tried to pass for >system documentation, almost completely uncommented system code (like >some sort of recursive sacred scripture, the code was its own >commentary), and lack of support for any device which didn't interest >MIT or Stanford. > Yea, that's curse/blessing of being in business rather than education. What I would have liked to have seen, was the lights when ITS was running. When Dan was developing TOPS20 on the KI, the light patterns were almost alien to me. I wouldn't have minded using one either :-). Thank you for the explanation. :-) Would something like DECnet or ANF-10 have been difficult to incorporate into the system? /BAH Sigh! - Subtract a hundred and four for e-mail. Article 4251 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!newshub.sdsu.edu!newshub.csu.net!pln-w!extra.newsguy.com!lotsanews.com!ix.netcom.com!newsfeed.enteract.com!netnews.com!europa.clark.net!206.55.3.15!news.clark.net!not-for-mail From: gagner@clark.net (Philip Gagner) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Mon, 12 Oct 1998 19:42:20 GMT Organization: TWLG Lines: 116 Message-ID: <361e29e6.61611468@news.clark.net> References: <3613e9a8.18494117@news.clark.net> <6uvli1$o2j$1@strato.ultra.net> <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <361f769b.76525319@news.clark.net> <6vku3e$tba$1@ligarius.ultra.net> Reply-To: gagner@clark.net NNTP-Posting-Host: gagner-ppp.clark.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 Xref: news3.best.com alt.sys.pdp10:4251 jmfbahciv@aol.com wrote: >In article <361f769b.76525319@news.clark.net>, > gagner@clark.net (Philip Gagner) wrote: >>jmfbahciv@aol.com wrote: >>>> >>>I never met an ITS. Would you mind explaining why you'ld rather see >>>ITS run? What did you prefer in ITS over the -10 or -20? >>>/BAH >> >>This is a troll, right? :-o > >Actually, no. I'm really interested and very ignorant. >> >Actually, no. Example, please? Okay. For DECSystem-10 debugging, you'd load DDT in the address space of your program, and then load the program. If the program had address-specific dependency bugs (like .CORE problems or calculated but illegal memory references ), then it might still appear to run when DDT was loaded, but would fail when you removed DDT. This was very frustrating. Also, swapping in QMANGR (or whatever it was called) with DDT loaded in either the object program or even worse Qmangler itself was a royal pain. Examples abound. Debugging MACRO-10 and LINK-10 was a nightmare, because its core management was really really poorly done (memory allocation calls distributed throughout the programs since they were grown rather than actually programmed). The particular examples, other than MACRO-10 and LINK, that I remember were the TYPSET-10 programs, particularly ALLOC, which was the program that was supposed to run multiple typesetting machines at the same time, keeping all of them busy. They had lots of real-time calls. We actually distributed one release with DDT loaded because we developed it with DDT loaded and couldn't get it to work without DDT before the announced release date. The problem, as I remember, actually was a bug in LINK. LINK would improperly resolve a symbol table reference to point into DDT, and it happened that the location contained a suitable value so that the program would work just fine, despite the bug. ITS had much better job control functions (inter-process communications functions) so that it was easy to have DDT loaded in its own job space. In fact, you got it whether you wanted it or not (although you COULD replace it with a different job control process if you wanted). It was more like Un*x where you had a top process which controlled child processes. That way the job running below would never have to know that it had a supervisor process, and (in the usual case) didn't read or write the memory where DDT resided. > >> >>Anyway, ITS was designed early on to know about multiple processors >>(sort of--shared memory processors anyway) and remote devices. > >Was it a timesharing system or one these task partition systems that >people have a tendency to call timesharing? Oh no, it was very real timesharing. It developed as a reaction to CTSS (Compatible Time Sharing System) on IBM 7094 machines, which were compatible with batch processing. ITS was Incompatible Time Sharing, and truly was clock-driven interrupt timesliced processing with exec and user paged address spaces and the whole ball of wax. Very sophisticated and pure, in fact, far more so than DECSystem-10 timesharing. > >>interface. The job control system calls were easier to use and more >>sophisticated. Inter-process communication was a very big item, much >>earlier than TOPS-10 had it. In fact, that part of the DECSystem-10 >>IPCF (InterProcess Communication Facility) which I worked on was >>modeled after the way ITS did it. > >That's why Peter was given the project (or so I thought). I think Peter was given the project so that it would be more like BBN's model, actually. But the BBN model and the ITS model were not independant--ideas were shared freely. > > >What I would have liked to have seen, was the lights when ITS was >running. When Dan was developing TOPS20 on the KI, the light patterns >were almost alien to me. I wouldn't have minded using one either :-). The similarities were that on all of them you could tell how sick the system was by looking at the PI lights. I think ITS displayed the current job number in lights, so if one job was hogging the system you could easily tell which one. (Jobs could set their own priority, and did so frequenty). Of course on the KL-10 there were very few differences... >Would something like DECnet or ANF-10 have been difficult to >incorporate into the system? Well, the first question is who would have wanted to? ITS was on the ARPANET early on, and the task wasn't that difficult. Because ITS had strong device independence, network devices weren't hard to implement, and because the file systems were designed to be device independent, remote file systems were also up pretty early (in fact the various ITS systems around MIT were tied together over the ARPANET very shortly after the IMP arrived). DECNET would have been pretty easy, I think, because it was pure and clean (although slow and severely lacking in power and features). ANF-10 would probably have been more difficult, because it was impure and quirky (although fast and powerful). I think it would not have been very difficult to stick a DL10 on an ITS machine and run straight DN8x software in the front end. Maybe someone even did this, although I never heard about it. The calls between the DN8x boxes and the KL were pretty straightforward. That way you'd get both DECNET and ANF-10 for the same price, then map the devices and file systems. Remote terminal support over DECNET or ANF-10 would have been a snap in ITS, but remote LPT support and remote tape support, I think, would have been harder. I don't know, actually, how hard it would be. By the time anyone would have wanted to do this, it probably would be easier just to use the ARPANET to connect the two networks. Article 4225 of alt.sys.pdp10: Newsgroups: alt.sys.pdp10 Path: news3.best.com!news1.best.com!news.maxwell.syr.edu!news-nyc.telia.net!newsfeed.axxsys.net!router1.news.adelphia.net!uunet!in1.uu.net!world!bzs From: bzs@world.std.com (Barry Shein) Subject: Re: KL Console Commands Message-ID: Sender: bzs@world.std.com In-Reply-To: Mark Crispin's message of Fri, 9 Oct 1998 14:11:36 -0700 Date: Sat, 10 Oct 1998 05:35:02 GMT References: <3613e9a8.18494117@news.clark.net> <6uvli1$o2j$1@strato.ultra.net> <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <6viopm$9le$1@teabag.demon.co.uk> <6vkv9p$tba$4@ligarius.ultra.net> <361D8AA4.2781@s054.aone.net.au> Organization: The World @ Software Tool & Die X-Newsreader: Gnus v5.1 Lines: 18 Xref: news3.best.com alt.sys.pdp10:4225 It's probably worth pointing out that ITS had a working network file system in the late 1970's or thereabouts. I remember when someone decided that I really ought to be running macsyma on MIT-MC rather than MIT-AI (more memory, and AI was a KA, MC a KI) so gave me an account on MC and I thought, hmm, what about my files, but there they were! Today we wouldn't think twice about this but at the time I was astounded when I realized what was going on, that the disk was just transparent across the network. -- -Barry Shein Software Tool & Die | bzs@world.std.com | http://www.world.com Purveyors to the Trade | Voice: 617-739-0202 | Login: 617-739-WRLD Article 4222 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!newshub.sirius.com!news.maxwell.syr.edu!logbridge.uoregon.edu!news.u.washington.edu!Tomobiki-Cho.CAC.Washington.EDU!mrc From: Mark Crispin Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Fri, 9 Oct 1998 14:11:36 -0700 Organization: Networks & Distributed Computing Lines: 58 Message-ID: References: <3613e9a8.18494117@news.clark.net> <6uvli1$o2j$1@strato.ultra.net> <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <6viopm$9le$1@teabag.demon.co.uk> <6vkv9p$tba$4@ligarius.ultra.net> <361D8AA4.2781@s054.aone.net.au> NNTP-Posting-Host: tomobiki-cho.cac.washington.edu Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: nntp1.u.washington.edu 907967504 9350 (None) 140.142.17.37 X-Complaints-To: help@cac.washington.edu NNTP-Posting-User: swirly To: "Mark & Suzanne (gcs might work)" In-Reply-To: <361D8AA4.2781@s054.aone.net.au> Xref: news3.best.com alt.sys.pdp10:4222 On Fri, 9 Oct 1998, Mark & Suzanne (gcs might work) wrote: > jmfbahciv@aol.com wrote: > > In article <6viopm$9le$1@teabag.demon.co.uk>, > > cbh@REMOVE_THIS.teabag.demon.co.uk (Chris Hedley) wrote: > > >In article > > , > > > Mark Crispin writes: > > >> ITS and TOPS-20 were both much more advanced operating systems than > > >> TOPS-10. > > >Dunno about anyone else, but I'm taking cover now. > > Why? > I think they expecting a flame from BAH or others in this group to > tell them why TOPS-10 was really the better OS :) I doubt it. All the PDP-10 OSs were fundamentally good, particularly compared to that abomination called VMS. > I guess I'd agree > with the TOPS-20 since I have more of a single CPU business approach > to thinks and like what I see as TOPS-20. But again this is unfair > since I gave never logged onto WAITS and ITS and to a lesser degree > TOPS-10 though I have a stronger fealing of who it worked (documentation > wise). Well, I have extensive programming experience on TOPS-10, TOPS-20, ITS, Tenex, WAITS, and some of the TOPS-10 variants such as CompuServe and CMU. Excluding Tenex (which was essentially version 0.xxx of TOPS-20), all of these systems had unique features that made them special compared to all the others: TOPS-10 high performance, SMP, support for lots of CPUs (I don't think PDP-6 support was flushed until 6 series, and KA support wasn't flushed until 7 series) and devices. TOPS-20 a modern OS even by today's standards, albeit hampered by a weak shell and a programming environment that assumes that all the world is assembly language. Better virtual memory than any other PDP-10 OS or most modern OSs. ITS type-independent dumb terminal support in the kernel, albeit limited (the kernel supported two types of Datamedias, but no ANSI terminals). PCLSR (which no other OS has). MLDEV (user mode device drivers). Great hacker playground. WAITS most advanced display support of all, not duplicated even today. Last shared code with TOPS-10 in 3.54 days, but was extensively hacked even then. Filesystem and device drivers were completely different (most reliable filesystem of any PDP-10 OS, the result of the world's worst hardware). Lots of funky devices. -- Mark -- * RCW 19.149 notice: This email address is located in Washington State. * * Unsolicited commercial email may be billed $500 per message. * Science does not emerge from voting, party politics, or public debate. Article 4226 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!su-news-hub1.bbnplanet.com!su-news-feed1.bbnplanet.com!news.bbnplanet.com!news-master.cisco.com!not-for-mail From: Bill Westfield Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: 09 Oct 1998 23:19:28 -0700 Organization: Cisco Systems, Inc. Lines: 27 Message-ID: <54ogrlhrbj.fsf@flipper.cisco.com> References: <3613e9a8.18494117@news.clark.net> <6uvli1$o2j$1@strato.ultra.net> <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <6viopm$9le$1@teabag.demon.co.uk> <6vkv9p$tba$4@ligarius.ultra.net> <361D8AA4.2781@s054.aone.net.au> NNTP-Posting-Host: flipper.cisco.com X-Newsreader: Gnus v5.3/Emacs 19.34 Xref: news3.best.com alt.sys.pdp10:4226 WAITS most advanced display support of all, not duplicated even today. Was it WAITS that had great display support SOFTWARE, or was it just a superior display hardare system? Certainly it would have been difficult to do the things WAITS did with displays without near-DMA speed access to the screen... cisco considered building a sorta-datadisk display device as a terminal server - you know: pack 10 "Hercules" style displays on a multibus card, and put a bunch of them in a box with an ethernet. You'd've gotten near ethernet display speeds at a not-horrendous cost per port, and the software would be where we could've done neat things with it. (obviously, we never did this. NCD came close to the concept with their X terminals.) There still isn't an OS (other than waits?) that understands what to do with that sort of display speed - they just all run a bunch of "ordinary" terminal windows. (actually, I'm not sure what I'd do with it either.) Not many applications use it effectively either, dispite 15 years of having the technology available in the PC arena.) (I may have to take that back - I think IBM does some reasonable things with their 3270-style terminals, and at least they have full language support for displays via CICS...) BillW -- (remove spam food from return address) Article 4231 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!su-news-hub1.bbnplanet.com!news.bbnplanet.com!logbridge.uoregon.edu!netnews1.nw.verio.net!netnews.nwnet.net!news.u.washington.edu!Tomobiki-Cho.CAC.Washington.EDU!mrc From: Mark Crispin Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Sat, 10 Oct 1998 22:38:26 -0700 Organization: Networks & Distributed Computing Lines: 25 Message-ID: References: <3613e9a8.18494117@news.clark.net> <6uvli1$o2j$1@strato.ultra.net> <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <6viopm$9le$1@teabag.demon.co.uk> <6vkv9p$tba$4@ligarius.ultra.net> <361D8AA4.2781@s054.aone.net.au> <54ogrlhrbj.fsf@flipper.cisco.com> NNTP-Posting-Host: tomobiki-cho.cac.washington.edu Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: nntp1.u.washington.edu 908084308 16694 (None) 140.142.17.37 X-Complaints-To: help@cac.washington.edu NNTP-Posting-User: trebor To: Bill Westfield In-Reply-To: <54ogrlhrbj.fsf@flipper.cisco.com> Xref: news3.best.com alt.sys.pdp10:4231 On 9 Oct 1998, Bill Westfield wrote: > WAITS most advanced display support of all, not duplicated even > today. > > Was it WAITS that had great display support SOFTWARE, or was it just a > superior display hardare system? Certainly it would have been difficult to > do the things WAITS did with displays without near-DMA speed access to the > screen... Great display hardware *and* software. Some things (such as vector or bitmapped graphics) required a III or TV (DataDisc) display, but most WAITS display applications worked fine on dumb terminals. Even on dumb terminals we had the line editor, multiple page printers, and display programs. It's hard to explain to someone who hasn't seen it, or only saw it on a casual basis. -- Mark -- * RCW 19.149 notice: This email address is located in Washington State. * * Unsolicited commercial email may be billed $500 per message. * Science does not emerge from voting, party politics, or public debate. Article 4227 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!nntprelay.mathworks.com!cam-news-hub1.bbnplanet.com!news.bbnplanet.com!newsfeed.xcom.net!news.ultranet.com!d15 From: jmfbahciv@aol.com Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Sat, 10 Oct 98 09:30:34 GMT Organization: UltraNet Communications, Inc. Lines: 86 Message-ID: <6vndpj$g5r$1@strato.ultra.net> References: <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <6viopm$9le$1@teabag.demon.co.uk> <6vkv9p$tba$4@ligarius.ultra.net> <361D8AA4.2781@s054.aone.net.au> NNTP-Posting-Host: d15.dial-15.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 10 Oct 1998 10:44:03 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Xref: news3.best.com alt.sys.pdp10:4227 In article , Mark Crispin wrote: >On Fri, 9 Oct 1998, Mark & Suzanne (gcs might work) wrote: >> jmfbahciv@aol.com wrote: >> > In article <6viopm$9le$1@teabag.demon.co.uk>, >> > cbh@REMOVE_THIS.teabag.demon.co.uk (Chris Hedley) wrote: >> > >In article >> > , >> > > Mark Crispin writes: >> > >> ITS and TOPS-20 were both much more advanced operating systems than >> > >> TOPS-10. >> > >Dunno about anyone else, but I'm taking cover now. >> > Why? >> I think they expecting a flame from BAH or others in this group to >> tell them why TOPS-10 was really the better OS :) > >I doubt it. All the PDP-10 OSs were fundamentally good, particularly >compared to that abomination called VMS. Yea, well, my first impression of VMS was that it was terribly senile (that left no time for maturity). However, people who haven't had any other exposure to a timesharing system like VMS because of its on-line help. I suppose VMS has to have improved because the PDP-10ers infiltrated the group :-). Now that I've announced my bias .... > >> I guess I'd agree >> with the TOPS-20 since I have more of a single CPU business approach >> to thinks and like what I see as TOPS-20. But again this is unfair >> since I gave never logged onto WAITS and ITS and to a lesser degree >> TOPS-10 though I have a stronger fealing of who it worked (documentation >> wise). > >Well, I have extensive programming experience on TOPS-10, TOPS-20, ITS, >Tenex, WAITS, and some of the TOPS-10 variants such as CompuServe and CMU. >Excluding Tenex (which was essentially version 0.xxx of TOPS-20), all of >these systems had unique features that made them special compared to all >the others: > >TOPS-10 high performance, SMP, support for lots of CPUs (I don't > think PDP-6 support was flushed until 6 series, and KA > support wasn't flushed until 7 series) and devices. Right. One of the reasons I preferred TOPS-10 was because I could get my work done (and I usually had 3-4 projects going at once). I never did a timing but I eventually had the final "make the tapes for SDC" procedures down to a point that I think I could do a complete TOPS-10 submission build in eight hours (but only if the monitor didn't crash). And TOPS-10 was my baby :-). I would work on the -20 in the early morning hours when TW had all our -10s stand-alone. But, as soon as somebody else logged in (those people didn't work nights), I left because the performance degraded to the point where I was swearing for the at-sign after exiting from the editor. > >TOPS-20 a modern OS even by today's standards, albeit hampered by > a weak shell and a programming environment that assumes > that all the world is assembly language. Better virtual > memory than any other PDP-10 OS or most modern OSs. I hated the user interface; it required too much typing. On the other hand, I preferred the UUO (oops, JSYS) interface to TOPS-10's. It was much, much easier to code a user mode program in assembly language on the -20 than on the -10...especially I/O. >WAITS most advanced display support of all, not duplicated even > today. Last shared code with TOPS-10 in 3.54 days, but > was extensively hacked even then. Filesystem and device > drivers were completely different (most reliable > filesystem of any PDP-10 OS, the result of the world's > worst hardware). Lots of funky devices. Would you explain why its filesystem was more reliable? I think I'm trying to get at the difference in philosophies more than the details of the implementations. /BAH Sigh! - Subtract a hundred and four for e-mail. Article 4232 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!su-news-hub1.bbnplanet.com!news.bbnplanet.com!logbridge.uoregon.edu!news.u.washington.edu!Tomobiki-Cho.CAC.Washington.EDU!mrc From: Mark Crispin Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Sat, 10 Oct 1998 22:52:06 -0700 Organization: Networks & Distributed Computing Lines: 32 Message-ID: References: <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <6viopm$9le$1@teabag.demon.co.uk> <6vkv9p$tba$4@ligarius.ultra.net> <361D8AA4.2781@s054.aone.net.au> <6vndpj$g5r$1@strato.ultra.net> NNTP-Posting-Host: tomobiki-cho.cac.washington.edu Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: nntp1.u.washington.edu 908085129 28430 (None) 140.142.17.39 X-Complaints-To: help@cac.washington.edu NNTP-Posting-User: wwoodf In-Reply-To: <6vndpj$g5r$1@strato.ultra.net> Xref: news3.best.com alt.sys.pdp10:4232 On Sat, 10 Oct 1998 jmfbahciv@aol.com wrote: > Would you explain why its filesystem was more reliable? I think I'm > trying to get at the difference in philosophies more than the > details of the implementations. WAITS' filesystem was incredibly robust, with huge amounts of redundant information. One of the people who actually worked on the filesystem code (Ralph Gorin, Jeff Rubin, Brian Harvey, Martin Frost) would have to give full (and authoritative) details; but I remember that all the retrieval links had back pointers and I'm pretty sure that data blocks had retrieval information as well. There was also a read-after-write. All sorts of things to deal with incredibly flakey disk channels. I think that when I first got there, they were still using the PDP-6 167 channel. It was replaced (JBR was writing its driver code) with a Foonly channel, a wire-wrap behemoth. It wasn't until the final days that WAITS finally got a real channel (an RH20, using PHYSIO drivers from TOPS-20). I remember when the Foonly channel started scribbling all sorts of lossage on the disk. There were something like a dozen different algorithms that the channel was using to clobber the filesystem; but they were able to write a program to analyze a disk block, determine which algorithm had whacked it, and then undo the damage. I don't recall a full filesystem reload from tape ever happening on WAITS. -- Mark -- * RCW 19.149 notice: This email address is located in Washington State. * * Unsolicited commercial email may be billed $500 per message. * Science does not emerge from voting, party politics, or public debate. Article 4256 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!newshub.sdsu.edu!newshub.csu.net!usc!howland.erols.net!netnews.com!mr.net!data.pa.vix.com!news1.digital.com!pa.dec.com!nntpd.lkg.dec.com!not-for-mail From: nospam@zk3.dec.com (Eric Werme - replace nospam with werme) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: 13 Oct 1998 01:11:11 GMT Organization: Digital Equipment Corporation Lines: 29 Message-ID: <6vu9bf$f9g$1@nntpd.lkg.dec.com> References: <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <6viopm$9le$1@teabag.demon.co.uk> <6vkv9p$tba$4@ligarius.ultra.net> <361D8AA4.2781@s054.aone.net.au> <6vndpj$g5r$1@strato.ultra.net> Reply-To: (Replace nobody with werme) nobody@zk3.dec.com NNTP-Posting-Host: alingo.zk3.dec.com X-Newsreader: NN version 6.5.0 CURRENT #60 Xref: news3.best.com alt.sys.pdp10:4256 Mark Crispin writes: >I don't recall a full filesystem reload from tape ever happening on WAITS. At CMU, our definition of a successful backup was if FAILSA exited after writing the the data tape. The number of write error messages was immaterial, as we figured we wouldn't be able to read the tapes even if there weren't write errors. Well, it wasn't that bad, but close! We had also found that the the TU10 tape drives used quieted vacuum cleaner motors, but DEC charged a lot for those. so we started using the vacuum cleaner motors and put up with the tape drives sounding like vacuum cleaners. At any rate, my disk patcher was writen as a bunch of User UUOs and used DDT as a command parser. The AC field was the buffer number, the effective address was the block. I got very good at patching file systems back together instead of trusting the tapes. Eventually I wrote COPSTR to copy all the files from one file system to another. (Hey, TOPS-10 didn't have tar and pipes!) When I discovered ITS also used DDT for a parser I was mightily impressed, both with MIT's good taste and how overboard they went with it. What was the command to logout - $$K? -Ric -- <> Eric (Ric) Werme <> The above is unlikely to contain <> <> ROT-13 addresses: <> official claims or policies of <> <> <> Compaq Computer Corp. <> <> <> http://www.cyberportal.net/werme <> Article 4260 of alt.sys.pdp10: Path: news3.best.com!nntp1.ba.best.com!not-for-mail From: inwap@best.com (Smith and O'Halloran) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: 12 Oct 1998 23:58:02 -0700 Organization: Chez INWAP (people, computers, cats) Message-ID: <6vutlq$8o8$1@shell3.ba.best.com> References: <6vkv9p$tba$4@ligarius.ultra.net> <361D8AA4.2781@s054.aone.net.au> Lines: 21 NNTP-Posting-Host: shell3.ba.best.com X-Trace: 908261886 25911 inwap 206.184.139.134 Xref: news3.best.com alt.sys.pdp10:4260 In article , Mark Crispin wrote: >ITS PCLSR (which no other OS has). There was an attempt to add PCLSR functionality into the TOPS-10 HIBER uuo. The code did special things if the word at SAVED.PC-1 was a HIBER. I remember they forgot about XCT [HIBER AC,] but I don't remember if that hack was kept in the Monitor. TYMCOM-X Tymshare's custom Monitor. Shared features with TYMCOM-IX (which ran on 24-bit XDS-940 CPUs) and TOPS-10 5.04. (The X in TYMCOM-X was Roman numeral 10.) It had page-formatted disks (sort of like TOPS-20) permitting memory-mapped files. Other than the console, all terminal access was through TYMNET using a co-processor that did DMA into the -10's memory. -Joe -- INWAP.COM is Joe and Sally Smith, John and Chris O'Halloran and our cats See http://www.inwap.com/ for PDP-10, "ReBoot", "Shadow Raiders"/"War Planets" Article 4234 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!nntprelay.mathworks.com!howland.erols.net!netnews.com!newsfeed.enteract.com!chicago-news-feed1.bbnplanet.com!news.bbnplanet.com!web.onecall.net!news.iupui.edu!haystack!mhwood From: mhwood@Ameritech.net (Mark H. Wood) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Sun, 11 Oct 1998 19:29:01 GMT Organization: La Petite Hackerie Lines: 51 Message-ID: References: NNTP-Posting-Host: mhw.ulib.iupui.edu X-Newsreader: TIN [UNIX 1.3 950515BETA PL0] Xref: news3.best.com alt.sys.pdp10:4234 jmfbahciv@aol.com wrote: : In article <6viopm$9le$1@teabag.demon.co.uk>, : cbh@REMOVE_THIS.teabag.demon.co.uk (Chris Hedley) wrote: : >In article : , : > Mark Crispin writes: : >> ITS and TOPS-20 were both much more advanced operating systems than : >> TOPS-10. : > : >Dunno about anyone else, but I'm taking cover now. : : Why? Please, everyone, note that MRC said "more advanced", not "better". They probably were more advanced in various areas, but "better" depends on what you, personally, want. As for me, my favorite time was that period when we were migrating from TOPS-10 to TOPS-20. We had brought in a brace of KL10Es to replace an older-model KL10. We plugged the disks from the older system into one box (cleverly named DECA::) and ran TOPS-10 on it, then plugged some new disks into the other box (DECB::) and began figuring out TOPS-20. Gradually we moved users from one environment to the other, until they were all converted. Then we split them between the two machines again and ran TOPS-20 on both -- one system for students, one for faculty/staff. At first I disliked the thought of moving to TOPS-20. It looked like it did way too much hand-holding. Then I began programming on it and found it quite nice. I really enjoyed having *both* OSes at my fingertips. I was sad the day we took down TOPS-10 for the last time, but they were both good helpful OSes. }HERESY ON{ Later I had to go through the same process with VMS by the time our VAX 8800 arrived. The 780 seemed like a toy compared to a KL, and then they kept making VAXen *smaller*. I was present at the unveiling of the 8600 model in Indianapolis (it probably happened somewhere else first :-) and, when I saw how familiar the in'ards were, I thought maybe it wouldn't be so bad. Eventually I developed a style for VMS programming and grew to love it *too*. }HERESY OFF{ Now I miss them *all*. The Powers That Be are taking out our VAX 7620 and replacing it with a whole roomful of Microsoft-spawned abominations that are no match, in stability or control, for any DEC system we ever owned. Sic transit gloria mundi -- -- Mark H. Wood, radical centrist mhwood@ameritech.net Having seen what's at the edges of the road, I much prefer the dead armadillos. Article 4240 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!su-news-hub1.bbnplanet.com!su-news-feed1.bbnplanet.com!news.bbnplanet.com!news-master.cisco.com!not-for-mail From: Bill Westfield Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: 11 Oct 1998 22:22:23 -0700 Organization: Cisco Systems, Inc. Lines: 13 Message-ID: <54iuhqnyls.fsf@flipper.cisco.com> References: NNTP-Posting-Host: flipper.cisco.com X-Newsreader: Gnus v5.3/Emacs 19.34 Xref: news3.best.com alt.sys.pdp10:4240 [PDP-10 Operating systems compared] I found it really annoying that there were things that you could do from the tops10 command parser ("." prompt)that were (apparently) not possible to do from a program. I went so far as to write a set of ttcall-like luuos for manipulating PTYs so that I could do tty sends (for example) from a program. In tops20, there was a close to 1:1 corrospondence between exec commands and jsys calls, which was elegant from my tops10ish perspective. BillW -- (remove spam food from return address) Article 4241 of alt.sys.pdp10: Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands References: <54iuhqnyls.fsf@flipper.cisco.com> Organization: D Bit, Troy, NY From: wilson@dbit.com (John Wilson) NNTP-Posting-Host: dbit.dbit.com Message-ID: <362197af.0@news.wizvax.net> Date: 12 Oct 1998 01:46:23 -0500 X-Trace: 12 Oct 1998 01:46:23 -0500, dbit.dbit.com Path: news3.best.com!news1.best.com!nntprelay.mathworks.com!woodstock.news.demon.net!demon!newspeer.monmouth.com!newsfeed.wizvax.net!news.wizvax.net!dbit.com!wilson Lines: 20 Xref: news3.best.com alt.sys.pdp10:4241 In article <54iuhqnyls.fsf@flipper.cisco.com>, Bill Westfield wrote: >I found it really annoying that there were things that you could do from the >tops10 command parser ("." prompt)that were (apparently) not possible to do >from a program. TSS/8 had this problem too, but in that case it was a miracle that it had the features at all (on a timesharing system that could live in 12K) so the fact that there was only one way to get at them wasn't so bad. There are a few parts of MTS (weird IBM 370 OS) where it's clear that the system call interface to some features is just a thin veneer covering the user command parsers. You had to build an EBCDIC string (telling it how to do things like mount tapes or control print jobs or TCP connections) and pass that in, and in some cases an EBCDIC string was what you got back for status too. What a pain... One more place to worry about when they add to the command language and have to increase the minimum valid abbreviation for keywords. John Wilson D Bit Article 4265 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!newsfeed.slip.net!newsxfer.visi.net!news.clark.net!not-for-mail From: gagner@clark.net (Philip Gagner) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Tue, 13 Oct 1998 22:55:11 GMT Organization: TWLG Lines: 16 Message-ID: <3623d979.19069925@news.clark.net> References: <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <6viopm$9le$1@teabag.demon.co.uk> <6vkv9p$tba$4@ligarius.ultra.net> <361D8AA4.2781@s054.aone.net.au> <6vndpj$g5r$1@strato.ultra.net> <6vu9bf$f9g$1@nntpd.lkg.dec.com> Reply-To: gagner@clark.net NNTP-Posting-Host: gagner-ppp.clark.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 Xref: news3.best.com alt.sys.pdp10:4265 nospam@zk3.dec.com (Eric Werme - replace nospam with werme) wrote: >Mark Crispin writes: > >When I discovered ITS also used DDT for a parser I was mightily impressed, >both with MIT's good taste and how overboard they went with it. What >was the command to logout - $$K? > Let $ = (octal 33): To login one would type, e.g., pag$U and to logout I think it was $$U This is from memory. I think I have somewhere (but who knows where?) a copy of the DDT manual written by Eric Osman sometime about 1971 Article 4285 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!newsfeed.slip.net!peerfeed.ncal.verio.net!newsfeed.axxsys.net!news.idt.net!netnews.com!europa.clark.net!206.55.3.15!news.clark.net!not-for-mail From: gagner@clark.net (Philip Gagner) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Sat, 17 Oct 1998 00:30:30 GMT Organization: TWLG Lines: 104 Message-ID: <3627e1cf.119660567@news.clark.net> References: <3613e9a8.18494117@news.clark.net> <6uvli1$o2j$1@strato.ultra.net> <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <361f769b.76525319@news.clark.net> <6vku3e$tba$1@ligarius.ultra.net> <361e29e6.61611468@news.clark.net> <707pq8$7al$4@strato.ultra.net> Reply-To: gagner@clark.net NNTP-Posting-Host: gagner-ppp.clark.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 Xref: news3.best.com alt.sys.pdp10:4285 jmfbahciv@aol.com wrote: > >So, when you patched, where did the patch go? In the DDT address space >or the user's (child's) address space? And I'm assuming that the symbol >table had to be in DDT's address space; wouldn't there have to be >some really interesting screwing around to resolve them when debugging >was invoked? Let job = the job being debugged: It worked the way it should -- the symbol table was read by the DDT process, so it would know what locations were assigned what symbolic names, but of course it wouldn't be loaded in the job's address space (why should it?) Patches were made into the job's address space, like they should be. There wasn't any screwing around necessary, because the symbol table didn't really live anywhere -- it was read by DDT and used to convert symbolic addresses into numerical ones (the way DDT always works, even when loaded in the job's address space). DDT knew that memory references were ALWAYS to the job and never to DDT's address space (why should they be?). So it was all clean and easy. Let's say you do the following: FOO+23/ JRST @SYMBOL(J) JRST @SYMBOL+1(J) as your patch. DDT knows that FOO is in the job's address space (because everything is--DDT doesn't know that it itself even exists), so it resolves the reference and adds 23, then opens the location with a system call, getting the value and using the usual DDT magic to turn it into symbolic representation (JRST @SYMBOL(J)) and then waits for the user input, which is the patch. The user types it, DDT resolves the symbol references and makes a deposit into process memory system call, and everything goes on as before, except you've fixed the fencepost error. So what's the problem? >>>>Anyway, ITS was designed early on to know about multiple processors >>>>(sort of--shared memory processors anyway) and remote devices. >>> >>>Was it a timesharing system or one these task partition systems that >>>people have a tendency to call timesharing? >>Oh no, it was very real timesharing. It developed as a reaction to >>CTSS (Compatible Time Sharing System) on IBM 7094 machines, which were >>compatible with batch processing. ITS was Incompatible Time Sharing, >>and truly was clock-driven interrupt timesliced processing with exec >>and user paged address spaces and the whole ball of wax. Very >>sophisticated and pure, in fact, far more so than DECSystem-10 >>timesharing. > >In what way was it purer than the -10? I remember Jim wanting >to do VM differently but don't remember the details or the >problems. And nobody agreed on the scheduler. I can't recall >what the attitude to the swapper was at the moment. Oh, ITS had things like dymanic core allocation done in user mode earlier than TOPS-10, and in fact more stuff was done by system jobs than in TOPS. This is purer because it prevents certain types of system crashes. Also, ITS had far more device independence (there was, for example, a CORE device), and there were very many more job control calls for detailed communication with sub-processes or sister processes. ITS had streams and the like. And so forth. >>The similarities were that on all of them you could tell how sick the >>system was by looking at the PI lights. I think ITS displayed the >>current job number in lights, so if one job was hogging the system you >>could easily tell which one. (Jobs could set their own priority, and >>did so frequenty). Of course on the KL-10 there were very few >>differences... > >So, did you have "I have priority" wars :-)? Rarely. User's were pretty much careful about other folks. The kill user command (and the kill user system call) were both unprivileged, so that if you really got torqued at someone you could zap him/her right off the machine. But this rarely happened. The community of users was very sophisticated, and not folks you'd want to start a hack war with if you had any sense. So everybody behaved. Often people used the feature to give certain jobs (like computing very large Mersenne primes) LESS priority. But if I needed to finish a little job because I had a class in twenty minutes, nobody really objected if I stole a few more cycles than my share. > >> >>>Would something like DECnet or ANF-10 have been difficult to >>>incorporate into the system? >> >>Well, the first question is who would have wanted to? ITS was on the >>ARPANET early on, and the task wasn't that difficult. Because ITS had >>strong device independence, network devices weren't hard to implement, >>and because the file systems were designed to be device independent, >>remote file systems were also up pretty early (in fact the various ITS >>systems around MIT were tied together over the ARPANET very shortly >>after the IMP arrived). > >When did the ARPANET happen? I remember Jim talking about working on >a project that connected systems at ORNL, but then, the next time >I had an inkling of computers talking reasonably to each other >was ANF10. ITS was on the ARPANET in 1971 or 72 or so. Article 4310 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!su-news-hub1.bbnplanet.com!news.bbnplanet.com!newsfeed.berkeley.edu!netnews.com!europa.clark.net!206.55.3.15!news.clark.net!not-for-mail From: gagner@clark.net (Philip Gagner) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: Sun, 18 Oct 1998 20:45:18 GMT Organization: TWLG Lines: 103 Message-ID: <362c4959.4453162@news.clark.net> References: <3613e9a8.18494117@news.clark.net> <6uvli1$o2j$1@strato.ultra.net> <3615172c.19558816@news.clark.net> <36149B71.237C@s054.aone.net.au> <361b6174.71109341@news.clark.net> <6vfom2$326$1@ligarius.ultra.net> <361f769b.76525319@news.clark.net> <6vku3e$tba$1@ligarius.ultra.net> <361e29e6.61611468@news.clark.net> <707pq8$7al$4@strato.ultra.net> <3627e1cf.119660567@news.clark.net> <70ab55$qr9$3@ligarius.ultra.net> Reply-To: gagner@clark.net NNTP-Posting-Host: gagner-ppp.clark.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 Xref: news3.best.com alt.sys.pdp10:4310 jmfbahciv@aol.com wrote: >> >>Patches were made into the job's address space, like they should be. >>There wasn't any screwing around necessary, because the symbol table >>didn't really live anywhere -- it was read by DDT and used to convert >>symbolic addresses into numerical ones (the way DDT always works, even >>when loaded in the job's address space). DDT knew that memory >>references were ALWAYS to the job and never to DDT's address space >>(why should they be?). So it was all clean and easy. > >Where did it get the symbol table of the program that the job >was running? From the symbol table that the linker stuck onto the job's relocatable job image (generally on disk, but you could of course use magnetic tape or even paper tape--if an absolute image, then the symbol table was after the core image, otherwise it was pointed to after the relocatable image of that part of the memory map. The loader was smart enough to know that it (generally) didn't have to load the job's symbol table. That way jobs could be smaller, too. > >>So what's the problem? > >Well, it sounds like the neat hack that RDH (bless that man) >did for me wouldn't work with that scheme although I don't >know how he implemented the hack. All I know is that, when >he told me is was up on the system, he said that it wasn't >easy to do (Bob never said that). > >What he did for me was store a given string of DDT commands to >be executed when a particular breakpoint was encountered. It >cut my debugging time by 90% whenever I had to investigate any >BACKUP problems (I hated magtapes). Sure, it is actually easier given the way ITS did it. The job's PC is halted by the trap from the memory location (via the paging box) and DDT is waiting for control to return from the job. The trap makes it wake up. DDT then executes the DDT commands in the job's address space with the job status bit set to single instruction execute. The only two problems are indirect loops and XCT instructions. Indirect loops aren't a problem unless the PC is altered by the instruction (which DDT knows will happen), and the XCT instruction is a problem because you might have something funny like XCT with an instruction which stores in memory then loads the PC. So you have to watch for those. Otherwise, no sweat. There was a strange syntax for DDT breakpoints which gave you the DDT commands to execute at the breakpoint, but I can't for the life of me remember it. Double-quotes and angle-brackets or something like that. > >Now, I thought that the breakpoints and all that were a part of the >DDT address space (but then you're talking about ITS and I'm thinking >TOPS10). It's an affliction of only working with one OS and not >as a monitor programmer :-). The way DEC DDT did breakpoints originally was to insert a jump to DDT into the actual job image and not display it to the user (makes for interesting bugs if your code is self-modifying). The way ITS did it, I think, was to set a bit in the job's page map. This is documented in several MITAI memoranda, which are stored wherever my ITS DDT manual is stored. > >How would I use a core device? Or is that what we did with the >CORE UUO? You'd use a CORE device if you were the monitor, to allocate memory for yourself and for other jobs. Since memory allocation isn't real-time anyway, you can put it off until an interrupt, and then when you're busy shuffling jobs, etc., you can update the various jobs' page maps. > > > >To get back to another post that you made: You mentioned that you >built -20F with MACDLX or MACY11. That implies that you built the >thing on the -10. Do you know when (or why) that changed and the >thing had to be built on the 11/70? Or was I getting hoodwinked? >It's safe to say because I've already done the appropriate >swearing :-). Um, not quite. RSX20F was built using RSX-11M, but the various parts were assembled and loaded and tested using MACDLX (later MACY11, which had to be changed to work). I wrote a special program that would write a MACDLX image onto the -11's file system so that we wouldn't have to reload the front end every time we wanted to check out a change to one of the front end jobs (like the parser). You'd just load the image onto the -11's disk, kill the old job and invoke the new one. For a release build, somebody else had to do the build (nobody in her right mind would trust me near a real PDP-11, especially if there was a wire wrap gun nearby--there were these simple ways they could be improved, see? and it always bugged me that... well, never mind...). As to why, working with PDP-11s was a royal pain anyway, and there weren't very many of them around LCG. I'd rather work at a real computer with all the right editing, file copying, backup, and debugging tools. Then you could make the front end -11 run the code to test it. Assuming your code wouldn't crash the front end, you could even do this while other users were using the -10. Heck, you could do it anyway... it didn't really matter to the other developers if the front end crashed. Article 4311 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!nntprelay.mathworks.com!europa.clark.net!206.55.3.15!news.clark.net!not-for-mail From: gagner@clark.net (Philip Gagner) Newsgroups: alt.sys.pdp10 Subject: Re: The PDP-1, testword switches, and Spacewar (also tenex, -10 & -20 code) Date: Sun, 18 Oct 1998 20:45:21 GMT Organization: TWLG Lines: 30 Message-ID: <362e50d7.6371491@news.clark.net> References: <36281142.EE583CCF@concentric.net> Reply-To: gagner@clark.net NNTP-Posting-Host: gagner-ppp.clark.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 Xref: news3.best.com alt.sys.pdp10:4311 NOYB wrote: >The PDP-1/B at BBN used the testword switches for spacewar >left 4 for one player, right 4 for the other >These were standard bat handled DPST Microswitches >they would usually last a week or so if we were playing 14 hours/day >(Spacewar Elbow was, I'm sure, the first computer induced physical >malady) >the first time, it took me about 2 hours to replace 1 for the working >day, >I got that down to about 18 minutes. (Cosell won most games though) This was why MIT built lovely wooden boxes with two switches and a button. Each player got one. > >Pete, I still love that starfield over Boston. Especially the way it rotated to reflect the actual starfield at the time you were playing... ah yes. > > ...wex >wex@concentric.net > >(PMW on the TOPS-10 and TOPS-20 listing headers) > >Another question, how manyother folks have code in >TENEX, TOPS-10 and TOPS-20? >(I'll admit to a bit of my code in the BBN Compatibility package, too) > Article 4318 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!su-news-hub1.bbnplanet.com!su-news-feed2.bbnplanet.com!news.bbnplanet.com!news1.digital.com!pa.dec.com!nntpd.lkg.dec.com!zk2nws.zko.dec.com!denton.zko.dec.com!amartin From: amartin@denton.zko.dec.com (Alan H. Martin) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: 19 Oct 1998 18:59:25 GMT Organization: DEC Lines: 46 Message-ID: <70g26d$u5p@zk2nws.zko.dec.com> References: <362a0977.0@news.wizvax.net> NNTP-Posting-Host: denton.zko.dec.com Xref: news3.best.com alt.sys.pdp10:4318 In article <362a0977.0@news.wizvax.net> wilson@dbit.com (John Wilson) writes: >Wasn't the PDP-10 RAD50 code different from the PDP-11 one? The PDP-11 >code is in this order: sp, A-Z, $, ., %/?, 0-9, ... Well, the RADIX50-10 collating sequence is ,0-9,A-Z,.,$,% >... which has the annoying side effect that if you sort your symbol table in >RAD50 order, it's not in ASCII order (more like EBCDIC!). I kind of thought >10 software did this right, but maybe I'm confusing RAD50 with SQUOZE or >something. However, the RADIX50 and SQUOZE pseudo-ops have identical semantics in MACRO-10, although I recall the manual treating SQUOZE as the deprecated synonym. They both dispatch to the same entry in the P-Z pseudo-op semantic table, RADX50: " TITLE MACRO %53B(1252) 24-JUN-88 SUBTTL EDIT BY MCHC/JBC/EGM/MFB/PY/HD/TL/RJF ... X RADIX5, 707 ... X SQUOZE, 707 ... OP1TAB: ZA PAGE0 ;PAGE ZAL PASS20 ;PASS2 ZAL PHASE0 ;PHASE Z POINT0 ;POINT ZA PRNTX0 ;PRINTX ZA PURGE0 ;PURGE ZA RADIX0 ;RADIX Z RADX50 ;RADIX50,SQUOZE ... " I'd like to know the history of having two terms (RADIX 50 and SQUOZE) behind what ended up as the same representation. Was SQUOZE the spelling in MIDAS or FAIL code or something? A few friends might know, but I may as well see if the question sends this free-associating thread to yet another new place. Super-bat snatch! Elsewheresville for you, /AHM -- Alan Howard Martin AMartin@ZKo.DEC.Com Article 4319 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!newshub1.home.com!news.home.com!newshub1-work.home.com!void.agames.com!albaugh From: albaugh@agames.com (Mike Albaugh) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: 19 Oct 1998 20:40:15 GMT Organization: Atari Games Corporation Lines: 27 Message-ID: <70g83f$a8h$1@void.agames.com> References: <362a0977.0@news.wizvax.net> <70g26d$u5p@zk2nws.zko.dec.com> NNTP-Posting-Host: java.agames.com X-Newsreader: TIN [version 1.2 PL2] Xref: news3.best.com alt.sys.pdp10:4319 I can dd very little, but that little might tickle the neurons of someone who can help, so... Alan H. Martin (amartin@denton.zko.dec.com) wrote: : I'd like to know the history of having two terms (RADIX 50 and SQUOZE) behind : what ended up as the same representation. Well, RADIX 50 is pretty obvious, if you've lost your thumbs, but until today I'd only heard SQUOZE used in a computer context to refer to the object format on some IBM 7xx systems. I believe it refered to "SQUOZE Assembly", as IIRC, the object decks really wer sort of a compressed assembly form (similar to that used in MINIX?). I have a certain soft-spot for such representations (also including Fraser & Hansen's machine-independant linker) in that it doesn't try to restrain what sort of expressions are legal. If you have never had such a linker available, you don't know what you are missing. Unfortunately, I did, and do, now that I'm stuck on Unix and soon NT :-( :-( :-( :-( :-( : A few friends might know, but I may as well see if : the question sends this free-associating thread to yet another new place. Sure, why not... Mike | albaugh@agames.com, speaking only for myself Article 4321 of alt.sys.pdp10: Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands References: <362a0977.0@news.wizvax.net> <70g26d$u5p@zk2nws.zko.dec.com> Organization: D Bit, Troy, NY From: wilson@dbit.com (John Wilson) NNTP-Posting-Host: dbit.dbit.com Message-ID: <362bbcb2.0@news.wizvax.net> Date: 19 Oct 1998 18:26:58 -0500 X-Trace: 19 Oct 1998 18:26:58 -0500, dbit.dbit.com Lines: 9 Path: news3.best.com!news1.best.com!newshub.northeast.verio.net!newspeer.monmouth.com!newsfeed.wizvax.net!news.wizvax.net!dbit.com!wilson Xref: news3.best.com alt.sys.pdp10:4321 In article <70g26d$u5p@zk2nws.zko.dec.com>, Alan H. Martin wrote: >Was SQUOZE the spelling in MIDAS or >FAIL code or something? I've definitely seen it in MIDAS, I don't know if that's the origin though. John Wilson D Bit Article 4322 of alt.sys.pdp10: Path: news3.best.com!news1.best.com!su-news-hub1.bbnplanet.com!su-news-feed2.bbnplanet.com!news.bbnplanet.com!news1.digital.com!pa.dec.com!nntpd.lkg.dec.com!not-for-mail From: nospam@zk3.dec.com (Eric Werme - replace nospam with werme) Newsgroups: alt.sys.pdp10 Subject: Re: KL Console Commands Date: 20 Oct 1998 00:26:13 GMT Organization: Digital Equipment Corporation Lines: 25 Message-ID: <70glb5$v66$1@nntpd.lkg.dec.com> References: <3615172c.19558816@news.clark.net> <707ok7$7al$3@strato.ultra.net> <362a0977.0@news.wizvax.net> Reply-To: (Replace nobody with werme) nobody@zk3.dec.com NNTP-Posting-Host: alingo.zk3.dec.com X-Newsreader: NN version 6.5.0 CURRENT #60 Xref: news3.best.com alt.sys.pdp10:4322 wilson@dbit.com (John Wilson) writes: >In article <54sogmmlpk.fsf@flipper.cisco.com>, >>RAD50 was used in pretty much all the compilers/assemblers on the 10s >>for symbols. . In 36 bits you got 6 characters worth of symbol name and >>4 bits of flags. >Wasn't the PDP-10 RAD50 code different from the PDP-11 one? The PDP-11 >code is in this order: sp, A-Z, $, ., %/?, 0-9, Octal chars 00 null 01-12 0-9 13-44 A-Z 45 . 46 $ 47 % About the only thing I'd change in ASCII is to put the digits before letters. However, never needed hex much on the -10. -- <> Eric (Ric) Werme <> The above is unlikely to contain <> <> ROT-13 addresses: <> official claims or policies of <> <> <> Compaq Computer Corp. <> <> <> http://www.cyberportal.net/werme <> Article 180 of alt.sys.pdp10: Path: nntp1.ba.best.com!news1.best.com!newsfeed.mathworks.com!europa.netcrusader.net!205.231.236.10!newspeer.monmouth.com!nntp2.giganews.com!nntp3.giganews.com!news5.giganews.com.POSTED!not-for-mail From: Timothy Stark Subject: prep.ai.mit.edu... Newsgroups: alt.sys.pdp10 User-Agent: tin/1.4.2-20000205 ("Possession") (UNIX) (Linux/2.2.16 (i686)) Lines: 16 Message-ID: NNTP-Posting-Date: Tue, 18 Jul 2000 18:16:46 CDT Organization: Giganews.Com - Premium News Outsourcing X-Trace: sv2-7tKq2fu9D+qps4u5900axM0L+eINGTBfcKfmKWn5gSGi6z/YEeBG/h82rih3EwWapwBjLZivye3YDRE!kw50JEpNbCLtZDyLay5C+h3NWmo= X-Complaints-To: abuse@GigaNews.Com X-Abuse-Info: Please be sure to forward a copy of ALL headers X-Abuse-Info: Otherwise we will be unable to process your complaint properly Date: Tue, 18 Jul 2000 23:16:46 GMT Xref: nntp1.ba.best.com alt.sys.pdp10:180 All Folks: For your information, I found out that ITS source package (kshack, etc) on Alan's directory on ftp://prep.ai.mit.edu was gone! That's why it turned into the GNU ftp site. However, another ITS source package still is available in ftp://ftp.swiss.ai.mit.edu/pub/its. Good news! I still have them from prep.ai.mit.edu. Whew. -- Tim Stark -- Timothy Stark <>< Inet: sword7@speakeasy.org, sword7@firesword7.net -------------------------------------------------------------------------- "For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life. Amen." -- John 3:16 (King James Version Bible) Article 186 of alt.sys.pdp10: Path: nntp1.ba.best.com!news2.best.com!news.maxwell.syr.edu!newspeer1.nac.net!nntp1.savvis.net!nntp2.savvis.net!news.premier1.net!uunet!sea.uu.net!sac.uu.net!fox.almaden.ibm.com!newsfeed.btv.ibm.com!newshost.transarc.com!pat From: Pat Barron Newsgroups: alt.sys.pdp10 Subject: Re: prep.ai.mit.edu... Date: 19 Jul 2000 16:50:27 GMT Organization: Transarc Corporation Lines: 14 Distribution: world Message-ID: References: NNTP-Posting-Host: smithfield.transarc.ibm.com In-reply-to: Timothy Stark's message of Tue, 18 Jul 2000 23:16:46 GMT Xref: nntp1.ba.best.com alt.sys.pdp10:186 In article Timothy Stark writes: > For your information, I found out that ITS source package (kshack, etc) > on Alan's directory on ftp://prep.ai.mit.edu was gone! That's why > it turned into the GNU ftp site. However, another ITS source package > still is available in ftp://ftp.swiss.ai.mit.edu/pub/its. Good news! > I still have them from prep.ai.mit.edu. Whew. Alan's directory is actually on ftp.ai.mit.edu (not prep.ai.mit.edu); the directory and its contents are still there. The archive on ftp.swiss.ai.mit.edu only contains sysdoc and system, and is missing the KS10-specific bits from Alan's directory. --Pat. Article 4614 of alt.sys.pdp10: Path: nntp1.ba.best.com!news1.best.com!newsfeed.mathworks.com!dispose.news.demon.net!demon!btnet-peer0!btnet-feed5!btnet!NewsPeer!Fusion!NewsReader.POSTED!not-for-mail Reply-To: "JD" From: "JD" Newsgroups: alt.sys.pdp10 References: <3AD18A06.25DABDFB@inwap.com> <9ba4iu$aa0$1@bob.news.rcn.net> <9bhc25$9un$6@bob.news.rcn.net> <4FID6.4541$%Q.7798@NewsReader> <9bpa02$ea4$2@bob.news.rcn.net> <2VbE6.863$vs4.2536@NewsReader> <9brv7m$j87$1@bob.news.rcn.net> Subject: Re: Bulletproofing Tops10 Lines: 111 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Message-ID: Date: Sat, 21 Apr 2001 18:30:49 +0100 NNTP-Posting-Host: 213.123.161.93 X-Trace: NewsReader 987874458 213.123.161.93 (Sat, 21 Apr 2001 18:34:18 BST) NNTP-Posting-Date: Sat, 21 Apr 2001 18:34:18 BST Xref: nntp1.ba.best.com alt.sys.pdp10:4614 wrote in message news:9brv7m$j87$1@bob.news.rcn.net... > In article <2VbE6.863$vs4.2536@NewsReader>, > "JD" wrote: > > > > wrote in message > >news:9bpa02$ea4$2@bob.news.rcn.net... > >> In article <4FID6.4541$%Q.7798@NewsReader>, > >> "JD" wrote: > >> > >> >Of course the real weakness of any of these systems is a totally > >> >privileged 'operator'. > >> > >> That's just BS. The real weakness of any system is the fact > >> that humans use them. > >> > >Barb, I disagree. Most of the operators I knew were good people, hard > >workers and wanted to get things right, but they weren't programmers. > > Sure. I was not casting aspersions on operators. I commenting > on the fact that a really secure, 100% infallible system cannot > allow humans to make a decision....hmmm...I may have to rethink > this one; Misoft's proved me wrong. > > >They didn't really know what was going on inside the operating system > >or the applications. > > Most of them learned how to do all of that stuff. I've always > thought that one of the reasons TOPS-10 was so beloved was for > this exact reason. Anybody could learn anything about the > hard/software. I guess we've had different experiences of operators. The ones I knew were in shops split between IBM and DEC kit, and the former didn't encourage them to learn much about what was actually going on inside the system, except to wait for the bell to ring, mount the tape and type incantations like . The operators were selected for punctuality and efficiency, not curiosity, and they weren't rewarded for curiosity; the systems programmers chewed up operators who performed unauthorised magic. The few DEC-10/20 only shops I knew were in university settings, where the operators were part-time students. That (usually) worked a lot better because of different selection and reward approaches. > > >So why give them the ability to read or write > >any file, patch the monitor, etc? > > They had to know the magic incantations to do those things. > We did not try to make those actions hard to do because > most of our customers needed to do them. Remember, that > the philosophy of TOPS-10 was "gentleman's timesharing". > The penalty of screwing around was eliminating access to > the system; most people didn't want to give that up because > they were allowed to learn and do computering stuff that > users of IBM systems never even knew existed. > Of course this is the ideal for timesharing. It works well where there is a small(ish) and well defined group, and a principle of mutual reciprocity holds: don't chew up all the resources, because if someone else did this, you wouldn't be able to work. Don't screw around with the system, because we'll eliminate you from our circle if you do. The early Unix communities worked this way. ITS was probably the extreme case. > Look, either you allow users > or you limit users. My attitude is that limiting users just > makes them more destructive. Yes, I agree. But the ideal breaks down where the user population is large and anonymity/non-reciprocity is easy -- e.g. where "tourists" who will never see you or interact with you are jumping in on a network, or where you are providing a "utility" service to people who are anonymous to you and might easily be opportunistic. It's no accident that Multics (the "information utility") featured elaborate security and resource control arrangements; part of the Multics vision was that it would serve thousands, perhaps millions of users some day. You can deny service to the tourists (or try to) but that isn't sufficient penalty, they'll just jump onto another site. Hence the ITS sites experienced difficulties as the Arpanet got bigger and random hackers arrived. Of course it didn't help that the command language for ITS was a souped-up DDT and that there were no controls at all; it was fairly easy to wreak havoc without meaning to, just by writing things like :ZIP!FOO$U^PZ(*&&K. Monkeys and typewriters. If I recall correctly there was one of the ITS sites (ML? MC?) that tried to implement security, with hilarious results. It was like putting a lock on the front door of a house built out of tissue paper. > > All of our operators did quite a bit > of systems programming work. A number of them actually learned > programming while babysitting the machines. In our shop, an > operator's job slot was an entry point into the company and not > a dead-end job on the technical side. > That sounds great. All jobs should give scope for development. People don't have to stop learning. I just didn't see much of this going on in the IBM shops I knew: you were either an operator or a programmer, and almost nobody crossed the line. Change sevens to noughts for e-mail. Article 4620 of alt.sys.pdp10: Newsgroups: alt.sys.pdp10 Path: nntp1.ba.best.com!news2.best.com!news.maxwell.syr.edu!newsswitch.lcs.mit.edu!world!news From: Christopher Stacy Subject: ITS security [Re: Bulletproofing Tops10] Message-ID: Sender: CStacy@BONK Date: Sat, 21 Apr 2001 23:40:38 GMT References: <3AD18A06.25DABDFB@inwap.com> <9ba4iu$aa0$1@bob.news.rcn.net> <9bhc25$9un$6@bob.news.rcn.net> <4FID6.4541$%Q.7798@NewsReader> <9bpa02$ea4$2@bob.news.rcn.net> <2VbE6.863$vs4.2536@NewsReader> <9brv7m$j87$1@bob.news.rcn.net> NNTP-Posting-Host: ppp0b157.std.com Organization: The World @ Software Tool & Die X-Newsreader: Gnus v5.7/Emacs 20.7 Lines: 87 Xref: nntp1.ba.best.com alt.sys.pdp10:4620 >>>>> On Sat, 21 Apr 2001 18:30:49 +0100, JD ("JD") writes: JD> Hence the ITS sites experienced difficulties as the Arpanet JD> got bigger and random hackers arrived. I am wondering what the basis is for your statements about ITS. For example, could you provide a story or something to explain what specific problems you are referring to and how they are related to security? For those who don't know: the policy on the ITS systems was fairly unique: essentially anybody was allowed to use the system as a guest. This was an administrative policy decision, not an artifact of the system security features or lack thereof. I certainly agree that such a policy is not appropriate for all environments and cultures! Originally, ITS did not require a user account for logging in. (In fact, logging in was optional. All it did was set your home directory, if you had one, and run your login init file.) The only notable problem with the ARPANET was that lots of users started connecting, and they would tie up the system. Sometimes they would log in using other people's user-names. The solution was to implement user accounts, which required network users to log in with a registered user-name and password. However, almost anybody was given an account for the mere asking. When the system was over busy, guests were asked or forced to log out. Misbehaving guests had their accounts revoked. People using direct terminals, or coming from blessed network sites, still did not have to supply a password or log in to gain access. ITS still had no system security beyond the login firewall. Once you were logged in, you could do anything. This resulted in very few problems (perhaps two or three incidents occurring over about eight years and around 10,000 users.) I think this was remarkable. JD> Of course it didn't help that the command JD> language for ITS was a souped-up DDT and that there were no controls JD> at all; it was fairly easy to wreak havoc without meaning to, just by JD> writing things like :ZIP!FOO$U^PZ(*&&K. Monkeys and typewriters. However, in practice, that didn't ever happen, partly because people are not monkeys. By the way, your example :ZIP!FOO$U^PZ(*&&K. doesn't mean or do anything. Also, the DDT command interpreter didn't work exactly as you suggest; the dangerous commands (such as "delete file") were by defaultly available only in their keyword forms like on most systems. So if you wanted to delete a file, you would type the :DELETE command, but if you were an expert user, you could enable the command shortcut as ^O. Of course, since most DDT commands are for debugging some job you're running, the worst damage would be that you might trash your program. Although most ITS users were not experts and would never try to use most DDT commands on purpose, this never turned out to be a problem. They just did :LISTF and :DELETE and :RUN and :KILL and so on, and didn't generally make the kinds of mistakes that you suggest. The few problems we experienced were deliberate and studied malice. They were never sophisticated (since there was nothing in your way to outsmart), but if you wanted to be an asshole you could just go around deleting all the files or telling the system to reboot. I can only remember that sort of thing happenning once. JD> If I recall correctly there was one of the ITS sites (ML? MC?) that JD> tried to implement security, with hilarious results. It was like JD> putting a lock on the front door of a house built out of tissue paper. I don't have any idea what you're talking about here, as ITS never tried to implement any security beyond requiring a login account. Well, there was one thing. In order to debug the running kernel using DDT, you had to type a command first. That wasn't in the early versions of the system, but it had nothing to do with ARPANET tourists. ITS was designed to provide a relatively small number of trusted users with a high level of service, suitable for tasks ranging from interactive program development to real-time control of robots. By contrast, Multics was designed to provide an adequate level of service to many users, presuming them all untrusted. ITS worked wonderfully in the environment it was designed for, and, surprisingly, even when there were zillions of unculterated anonymous tourists. If you can recall correctly some hilarous story about the implementation of security on ITS, I would love to hear it, as I very much enjoy that sort of laugh, and somehow totally missed out on it... Article 4621 of alt.sys.pdp10: Path: nntp1.ba.best.com!news1.best.com!news.voicenet.com!feed2.news.rcn.net!rcn!news.maxwell.syr.edu!btnet-peer!btnet-peer0!btnet-peer1!btnet-feed3!btnet!NewsPeer!Fusion!NewsReader.POSTED!not-for-mail Reply-To: "JD" From: "JD" Newsgroups: alt.sys.pdp10 References: <3AD18A06.25DABDFB@inwap.com> <9ba4iu$aa0$1@bob.news.rcn.net> <9bhc25$9un$6@bob.news.rcn.net> <4FID6.4541$%Q.7798@NewsReader> <9bpa02$ea4$2@bob.news.rcn.net> <2VbE6.863$vs4.2536@NewsReader> <9brv7m$j87$1@bob.news.rcn.net> Subject: Re: ITS security [Re: Bulletproofing Tops10] Lines: 65 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Message-ID: <0VvE6.21685$vk1.29136@NewsReader> Date: Sun, 22 Apr 2001 08:36:09 +0100 NNTP-Posting-Host: 213.123.160.139 X-Trace: NewsReader 987925180 213.123.160.139 (Sun, 22 Apr 2001 08:39:40 BST) NNTP-Posting-Date: Sun, 22 Apr 2001 08:39:40 BST Xref: nntp1.ba.best.com alt.sys.pdp10:4621 "Christopher Stacy" wrote in message news:uzod97rex.fsf_-_@spacy.Boston.MA.US... > >>>>> On Sat, 21 Apr 2001 18:30:49 +0100, JD ("JD") writes: (snippage throughout) > JD> Of course it didn't help that the command > JD> language for ITS was a souped-up DDT and that there were no controls > JD> at all; it was fairly easy to wreak havoc without meaning to, just by > JD> writing things like :ZIP!FOO$U^PZ(*&&K. Monkeys and typewriters. > > By the way, your example :ZIP!FOO$U^PZ(*&&K. > doesn't mean or do anything I know that! > Also, the DDT command interpreter didn't > work exactly as you suggest; the dangerous commands (such as "delete > file") were by defaultly available only in their keyword forms like on > most systems. So if you wanted to delete a file, you would type the > :DELETE command, but if you were an expert user, you could enable the > command shortcut as ^O. Was this the case from the beginning? I do not recall having to enable the shorter commands; but perhaps this was done in an init file. > If you can recall correctly some hilarous story about the implementation > of security on ITS, I would love to hear it, as I very much enjoy that > sort of laugh, and somehow totally missed out on it... > What I do recall was that the use of passwords on ITS was not uncontroversial. One site, in particular (I think it was MC or ML) was the first to implement a password system. Other sites (AI?) did not. And, for awhile at least, the password system would be there one day, gone the next; or instead of ITS xxxx, you would get a message telling you to use uname such-and-such with password so-and-so, as if the system was deliberately fighting itself. RMS, in particular, was exercised about passwords and controls of any sort, and was vocal about the folly of implementing them. If I recall correctly there were commands like :GUN (this killed a process) which anyone could use but which logged their use on the ITS console teletype, so you could tell who was using them. I thought there had been an attempt to implement more controls than this, though, and corresponding squabbles within the ITS community about whether and how they should be implemented. But memories fade, especially after 25 years away from all of this; I don't remember the details, any more than I remember commands from ITS DDT. I am sure your recollections are far sharper. Change sevens to noughts for e-mail. Article 4627 of alt.sys.pdp10: Path: nntp1.ba.best.com!news1.best.com!newshub.sdsu.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!canoe.uoregon.edu!logbridge.uoregon.edu!newsfeed.berkeley.edu!ucberkeley!agate.berkeley.edu!agate!abbenay.CS.Berkeley.EDU!not-for-mail From: bh@abbenay.cs.berkeley.edu (Brian Harvey) Newsgroups: alt.sys.pdp10 Subject: Re: ITS security [Re: Bulletproofing Tops10] Date: 22 Apr 2001 11:33:05 -0700 Organization: University of California, Berkeley, Computer Science Division Lines: 34 Message-ID: <9bv851$cff$1@abbenay.CS.Berkeley.EDU> References: <0VvE6.21685$vk1.29136@NewsReader> NNTP-Posting-Host: abbenay.cs.berkeley.edu X-Trace: agate.berkeley.edu 987964383 5001 128.32.45.203 (22 Apr 2001 18:33:03 GMT) X-Complaints-To: abuse@berkeley.edu NNTP-Posting-Date: 22 Apr 2001 18:33:03 GMT Xref: nntp1.ba.best.com alt.sys.pdp10:4627 "JD" writes: >> So if you wanted to delete a file, you would type the >> :DELETE command, but if you were an expert user, you could enable the >> command shortcut as ^O. > >Was this the case from the beginning? In the *very* beginning, there were no colon commands. If you were using ITS, you were an expert! Or at least you were a programmer, and therefore familiar with DDT. I think it was Don Eastlake who added the colon commands. For a while you actually had to type the colon; then, later, there was a "monitor mode" in which DDT printed the colon as a prompt, and if you wanted an old-style altmode command you hit rubout, I mean delete, to get rid of the colon. Then after that someone invented the clever heuristic that if you logged in with :LOGIN FOO it put you in monmode, but if you said FOO$U it put you in ddtmode. I don't remember having to enable the ddtmode commands, either, so that came some time after 1973, when I moved out west, I think. Unless :DDTMOD is what "enable" means in this context. >What I do recall was that the use of passwords on ITS was not >uncontroversial. [...] RMS, in particular, was >exercised about passwords and controls of any sort, and was vocal >about the folly of implementing them. The way I remember it is that nobody was particularly enthusiastic about passwords, but ARPA insisted; they were starting to get worried about malicious users net-hopping. The ability to have a null password (you just hit return at the password prompt) was the compromise. But I was in California by that time, so I got much of this second-hand. Article 4629 of alt.sys.pdp10: Path: nntp1.ba.best.com!news2.best.com!news.maxwell.syr.edu!dispose.news.demon.net!demon!btnet-peer0!btnet-feed5!btnet!NewsPeer!Fusion!NewsReader.POSTED!not-for-mail Reply-To: "JD" From: "JD" Newsgroups: alt.sys.pdp10 References: <0VvE6.21685$vk1.29136@NewsReader> <9bv851$cff$1@abbenay.CS.Berkeley.EDU> Subject: Re: ITS security [Re: Bulletproofing Tops10] Lines: 50 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Message-ID: Date: Sun, 22 Apr 2001 22:59:39 +0100 NNTP-Posting-Host: 213.123.161.221 X-Trace: NewsReader 987976994 213.123.161.221 (Sun, 22 Apr 2001 23:03:14 BST) NNTP-Posting-Date: Sun, 22 Apr 2001 23:03:14 BST Xref: nntp1.ba.best.com alt.sys.pdp10:4629 "Brian Harvey" wrote in message news:9bv851$cff$1@abbenay.CS.Berkeley.EDU... > "JD" writes: > I think it was Don Eastlake who added the colon commands. For a while > you actually had to type the colon; then, later, there was a "monitor mode" > in which DDT printed the colon as a prompt, and if you wanted an old-style > altmode command you hit rubout, I mean delete, to get rid of the colon. > > Then after that someone invented the clever heuristic that if you logged > in with :LOGIN FOO it put you in monmode, but if you said FOO$U it put > you in ddtmode. > > I don't remember having to enable the ddtmode commands, either, so that > came some time after 1973, when I moved out west, I think. Unless :DDTMOD > is what "enable" means in this context. > I first used ITS in something like 1971. Whether you logged in as name$U or :LOGIN name I am almost sure you had to type the colon for long mode commands; I don't remember ITS prompting. Later (1975) when early Unix users complained that it was overly terse (e.g. the famous "?" error message from the ed editor), I remember comparing it to ITS, which was truly terse. I also thought you could fairly freely mix colon commands and DDT commands. But that was a long time ago! Wasn't WAITS (the Stanford Tops10) a bit more into security? Didn't you have to get Les Earnest or someone like that to authorise an account before you could use that system? They had the brainwave to change PPNs into 3 letter pairs (SIXBIT, right?) so you could be [FOO,BH] instead of [123532,324234]. (other posters, I am sure that 123532 is not SIXBIT /FOO/ ... please don't flame). There was also a CMU Tops10, substantially different to the DEC version, but I never used it. Change sevens to noughts for e-mail. Article 4633 of alt.sys.pdp10: Newsgroups: alt.sys.pdp10 Path: nntp1.ba.best.com!news1.best.com!news2.best.com!feed2.news.rcn.net!rcn!dca6-feed2.news.digex.net!intermedia!newsfeed.skycache.com!Cidera!news-reader.ntrnet.net!uunet!ash.uu.net!world!news From: Christopher Stacy Subject: Re: ITS security [Re: Bulletproofing Tops10] Message-ID: Sender: CStacy@BONK Date: Sun, 22 Apr 2001 23:29:27 GMT References: <0VvE6.21685$vk1.29136@NewsReader> <9bv851$cff$1@abbenay.CS.Berkeley.EDU> NNTP-Posting-Host: ppp0b150.std.com Organization: The World @ Software Tool & Die X-Newsreader: Gnus v5.7/Emacs 20.7 Lines: 12 Xref: nntp1.ba.best.com alt.sys.pdp10:4633 You didn't have to enable colon commands; you had to enable certain dangerous things commands by setting variables in your login init file. For example, regarding job control: $$^X (:MASSACRE) is enabled by the MASSCP variable; GENJFL controls whether :FOO starts a new program FOO if you already have a job named FOO; CLOBRF controls whether FOO^K (start a new FOO) will clobber an existing FOO. The CONFRM variable controls whether short commands like $$^X require a trailing "." on them. The DELWARN variable controls how the file deletion command ^O and the :LINK commands work: disabling them, degree of prompting, etc. Of course, these aren't security features: they are just user interface customizations. ITS explicitly did not have security. Article 4634 of alt.sys.pdp10: Path: nntp1.ba.best.com!news1.best.com!newsfeed.mathworks.com!arclight.uoregon.edu!logbridge.uoregon.edu!newsfeed.berkeley.edu!ucberkeley!agate.berkeley.edu!agate!abbenay.CS.Berkeley.EDU!not-for-mail From: bh@abbenay.cs.berkeley.edu (Brian Harvey) Newsgroups: alt.sys.pdp10 Subject: Re: ITS security [Re: Bulletproofing Tops10] Date: 22 Apr 2001 16:50:19 -0700 Organization: University of California, Berkeley, Computer Science Division Lines: 48 Message-ID: <9bvqnr$clp$1@abbenay.CS.Berkeley.EDU> References: <0VvE6.21685$vk1.29136@NewsReader> <9bv851$cff$1@abbenay.CS.Berkeley.EDU> NNTP-Posting-Host: abbenay.cs.berkeley.edu X-Trace: agate.berkeley.edu 987983417 7971 128.32.45.203 (22 Apr 2001 23:50:17 GMT) X-Complaints-To: abuse@berkeley.edu NNTP-Posting-Date: 22 Apr 2001 23:50:17 GMT Xref: nntp1.ba.best.com alt.sys.pdp10:4634 "JD" writes: >Wasn't WAITS (the Stanford Tops10) a bit more into security? Didn't >you have to get Les Earnest or someone like that to authorise an >account before you could use that system? They had the brainwave to >change PPNs into 3 letter pairs (SIXBIT, right?) so you could be >[FOO,BH] instead of [123532,324234]. >(other posters, I am sure that 123532 is not SIXBIT /FOO/ ... please >don't flame). For most of the time that I was at SAIL, there was a [NET,GUE] login for Network Guests, with no password. I think files written in its directory were deleted on logout, but otherwise it could do anything a local user could do, until we started having malicious-user troubles. Then Ralph Gorin changed the file permission categories from the standard user-project-other to user-known-guest, i.e., a category for everyone other than GUE and a separate category for GUE. (Okay, I lied, it was never user-project-other. We used the "project" half of the PPN as a sort of cheap SFD feature before DEC invented SFDs, so the three categories were same PPN, same programmer, other.) The standard file protection allowed guests read access and everyone else read-write access. I got a free ice cream sundae out of this because after changing the file protection categories Ralph said something along the lines of "Now we're safe from malicious guests" and I bet him I could find a dozen ways that guests could still break into other accounts. The reason I won the bet is that WAITS was *not* very security-conscious; there was, for example, a UUO that put your program in "IOT-User" mode, in which it was allowed to do hardware I/O instructions. The purpose was to allow the robotics people to hack together hardware they could run directly, without having to write monitor support, but you could use it to read passwords off the disk. (That's right, they weren't encrypted.) We could, of course, disallow that one for guests, but we couldn't disallow the one that let you have the monitor as your upper segment, because the WHO program (sorta like systat) used it to gather its information. As for account authorization, all you had to do to create an account was log in under that PPN from a machine in the building. (Which was unlocked most of the time, by the way. But it was off of the main campus, so you had to make a special trip to be a malicious user in that way. :-) It's true that if we had no idea who you were, the account would eventually get turned off. But we were quite loose about letting random people wander in and start writing programs, many of which turned out to be useful. And you could set up your account with a remote-only password, so that if you were in the building you didn't need your password to log in. We did require a password for remote login, though, except for GUE. And I think I'm vaguely remembering that eventually GUE was turned off altogether. Article 4635 of alt.sys.pdp10: Newsgroups: alt.sys.pdp10 Path: nntp1.ba.best.com!news1.best.com!newsfeed.mathworks.com!europa.netcrusader.net!63.208.208.143!feed2.onemain.com!feed1.onemain.com!uunet!dca.uu.net!ash.uu.net!world!news From: Christopher Stacy Subject: Re: ITS security [Re: Bulletproofing Tops10] Message-ID: Sender: CStacy@BONK Date: Sun, 22 Apr 2001 23:51:33 GMT References: <0VvE6.21685$vk1.29136@NewsReader> <9bv851$cff$1@abbenay.CS.Berkeley.EDU> NNTP-Posting-Host: ppp0b150.std.com Organization: The World @ Software Tool & Die X-Newsreader: Gnus v5.7/Emacs 20.7 Lines: 30 Xref: nntp1.ba.best.com alt.sys.pdp10:4635 >>>>> On Sun, 22 Apr 2001 22:59:39 +0100, JD ("JD") writes: JD> I also thought you could fairly freely mix colon commands and DDT commands. Unless you were in "monitor mode" (supposed to be a little more like a conventional user interface such as TOPS-10), then, yes. Many users would mix commands like :DELETE (a file) and ^F (list a directory). If you gave the command :MONMODE (or someone put that into your login init file for you), then DDT would prompt with a colon and expect colon commands like :LISTF. The :DDTMOD command put you back into normal mode. If you were in "monitor mode" and typed a rubout at the prompt, I think it would let you enter one control-character command. Logging in with the :LOGIN CSTACY command did not put you into monitor mode. Logging in with CSTACY$U was the same as :LOGIN, but put a zero value into the CLOBRF and MORWARN variables. Note that either way, the default for DELWARN was to be verbose, CONFRM is on, and so on. JD> Wasn't WAITS (the Stanford Tops10) a bit more into security? Well, WAITS of course started with TOPS-10 security. Maybe some SAIL people (MRC? BH?) will be able to comment on how it was modified, but it certainly had user accounts. I have heard that it was not too unusual for DEC customers to modify TOPS-10 policies about how PPNs worked. WAITS may have had some interesting things going on with that, though. I would like to hear more things about WAITS in general. ITS was an original system; it was not a version of TOPS-10 or anything else. I don't know of any other general purpose timesharing systems besides ITS that eschewed security. Article 4626 of alt.sys.pdp10: Path: nntp1.ba.best.com!news1.best.com!newsfeed.mathworks.com!feeder.qis.net!news.maxwell.syr.edu!news-peer1.tiac.net!posterchild2.tiac.net!news@tiac.net From: Bob Supnik Newsgroups: alt.sys.pdp10 Subject: ITS 1-proceed flag Date: Sun, 22 Apr 2001 13:48:56 -0400 Organization: www.us.inter.net Lines: 51 Message-ID: NNTP-Posting-Host: ip240.bedford3.ma.pub-ip.psi.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.8/32.548 Xref: nntp1.ba.best.com alt.sys.pdp10:4626 The last work item on my ITS list is the 1-proceed capability. It is rather complicated, so I wanted to check out my understanding of its operation, as derived from the KS10 microcode. [An initial question: did ITS require it for operation? The ITS KS10 microcode is conditionalized for three features: PC sampling, 1-proceed, and jump PC (JPC). The first two are enabled, the third is not.] 1-proceed is PC flag<8> (reuse of address inhibit). It can only be set by a "traditional" style JRSTF or JEN. (The ITS KS10 microcode still has the extended JRSTs but doesn't check for 1-proceed in those code paths.) If set, 1-proceed allows the next instruction to execute but then causes a trap through UPT 432/433. The instruction being "1-proceeded" executes as though PC flag<8> was clear; that is, if it is flag-saving jump, PC flag<8> will be clear. There are special cases: - If the instruction following the "1-proceeded" instruction page faults on fetch, the page fault is supressed and the 1-proceed trap occurs instead. [Because the KS10 prefetches the next instruction, normally page faults normally occur before traps.] - If the instruction being "1-proceeded" faults during execution, the page fault PC flags will have the 1-proceed flag set, so that when execution is retried, the 1-proceed trap will occur. - If an interrupt occurs while the "1-proceed" instruction is executing, the interrupt PC flags (for JSR, not for XPCW) will have the 1-proceed trap flag set. The KS10 implements this feature entirely through internal state flags. When a JRSTF or JEN with flags<8> set is seen, an internal flag, FLG.1PROC is set (flags<8> is not set in the hardware). During decode, an extra check is put in to test for FLG.1PROC. If set, then another internal flag, FLG.2PROC, is checked. If FLG.2PROC is clear, it is set, and normal execution occurs. If FLG.2PROC is set, the 1-proceed trap is sprung, and both FLG.1PROC and FLG.2PROC are cleared. The interrupt JSR and page fault handlers check FLG.1PROC and, if it is set, set flags<8> in the save flags word. The fetch trap handler checks FLG.2PROC and, if it is set, takes the 1-proceed trap instead. Comments welcome. /Bob Supnik Article 4643 of alt.sys.pdp10: Path: nntp1.ba.best.com!news1.best.com!newshub.sdsu.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!grolier!sn-xit-01!sn-post-01!supernews.com!corp.supernews.com!not-for-mail From: Bob Supnik Newsgroups: alt.sys.pdp10 Subject: Re: ITS 1-proceed flag Date: Mon, 23 Apr 2001 10:40:27 -0400 Organization: Posted via Supernews, http://www.supernews.com Message-ID: References: X-Newsreader: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Complaints-To: newsabuse@supernews.com Lines: 50 Xref: nntp1.ba.best.com alt.sys.pdp10:4643 On further reflection, I think that the KS10's implementation is broken. On the KS10, FLG.1PROC and FLG.2PROC are supposed to work rather like the VAX T and TP bits. FLG.1PROC (VAX T) is checked after interrupts and traps are processed; if set, it sets FLG.2PROC (VAX TP) to trigger the trap before the next instruction. For the KS10 (not the VAX), the problem is that FLG.2PROC is checked at the same point that FLG.1PROC is checked - after interrupts and traps, not before. Imagine this scenario: n-1/ set FLG.1PROC via JRSTF n/ fetch check FLG.1PROC/2PROC; 1PROC set, hence set 2PROC execute n+1/ interrupt... 1-proceed set in saved flags : JRSTF from interrupt n+1/ fetch check FLG.1PROC/2PROC; 1PROC set, hence set 2PROC n+2/ fetch check FLG.1PROC/2PROC; 2PROC set, hence trap The 1-proceed trap at the end of instruction n has been missed. This is because the state of 2PROC is not saved (no equivalent to VAX TP). To make this work, 2PROC would need to be checked BEFORE interrupts and traps, not after. /Bob On Sun, 22 Apr 2001 13:48:56 -0400, Bob Supnik wrote: >The last work item on my ITS list is the 1-proceed capability. It is >The KS10 implements this feature entirely through internal state >flags. When a JRSTF or JEN with flags<8> set is seen, an internal >flag, FLG.1PROC is set (flags<8> is not set in the hardware). During >decode, an extra check is put in to test for FLG.1PROC. If set, then >another internal flag, FLG.2PROC, is checked. If FLG.2PROC is clear, >it is set, and normal execution occurs. If FLG.2PROC is set, the >1-proceed trap is sprung, and both FLG.1PROC and FLG.2PROC are >cleared. > >The interrupt JSR and page fault handlers check FLG.1PROC and, if it >is set, set flags<8> in the save flags word. > >The fetch trap handler checks FLG.2PROC and, if it is set, takes the >1-proceed trap instead.