PDP-10 Revival
Lars Brinkhoff writes: "Remember the PDP-10 mainframe, the machine that ran the first version
of EMACS and helped foster the Free Software movement? Now a company
called XKL, LCC is funding a PDP-10 port of GCC. There's also
a project to create
a PDP-10 processor in an FPGA."
I guess just because it's cool..?
Moz.
see a Text Widget
The VAX11 hardware had virtual memory support. It was developed to support VMS, while PDP10 did not. The PDP10 was limited to 256K words of memory (36bit). The 11/780 had a complete 32 bit address space and similar processing speed approximately 1 MIPS.
My question is how are they going to effectively shoehorn GCC into such a small memory machine?
PLUGH and XYZZY to you, eschasi. :) By the way, Compuserve was one of the big 10/20 holdouts where lots of machines ran System 1022 until the late 80's at least. Tatters of the Jupiter project were reportedly purchased and kept (briefly) alive through the financial support of the 1022 base.
-- We all have enough strength to endure the misfortunes of other people. La Rochefoucauld
To all those who asked "Why?" -
If you follow the links and read the details you'll discover that a company that makes a computer compatible with the PDP-10 is funding this work. In other words they want to sell their hardware and they need more software and they think having a C compiler might help.
That doesn't sound so crazy to me. Even if it is - it's their money.
...interesting stuff isnt it ?!? If youre interested in historical stuff, check out Stephen Segallers Nerds 2.0.1 - A Brief History of the Internet, or Bruce Sterlins The Hacker Crackdown or Eric Raymonds stuff at http://www.tuxedo.org/~esr/ etc. When on his site especially check out A brief history of Hackerdom and Revenge of the Hackers...all pretty well written stuff. I can also recommend Peter Wayners Free For All. Am reading it right now, very nice book indeed !!! Regards from Gemany, Thomas
http://www.catalog.com/hopkins/images/mc-console.
A CADR Lisp Machine spews its guts, on the 9th floor MIT AI Lab at Tech Square.
http://www.catalog.com/hopkins/images/cadr.jpg
JSol, RMS, the gerbil, Liz, and MG, at Kabuki in Cambridge. The expression on Richard's face is saying, "I don't know, why do you wrap gerbils in duct tape?"r bil-liz-mg.jpg
http://www.catalog.com/hopkins/images/jsol-rms-ge
-Don
Take a look and feel free: http://www.PieMenu.com
I went to college at Indiana University Computer Science in the years (*cough, cough*). Professor Frank Prosser, now Emeritus, taught a hardware design course around constructing an "LD-14", which was essentially a cleaned-up PDP-8I, out of basic NAND/NOR gates (although we got to use an ALU chip!). Part of the exam was to bring up FOCAL, which was a DEC BASIC-ish language, and calculate 300! (factorial). Loading FOCAL required fat-fingering in the primary loader, then bringing in the main loader and FOCAL off paper tape at 110.5 baud. In the later years, we had a cassette interface that loaded at 1200 baud. We considered this a huge leap forward in technology!
As part of the course requirements, you had to extend the machine in some fashion: make an 8E, for example. I ended up adding a boot PROM, which was tricky, since all 8K (12-bit words, not bytes) were needed by FOCAL to run.
Prosser co-wrote the textbook for the course, which described how to build the thing, with Dave Winkel. Not surprisingly, it seems to be out of print.
Thank you for bringing back those years. That was one of the best courses I ever took!
Actually, it had a major part in the non-free software movement, too. Legend has it Paul Allen write an 8080 simulator on the PDP-10, and that's what he and Bill Gates used to write BASIC for the Altair.
Just junk food for thought...
I remember when you had to dial the phone and wait for the carrier signal, then slap it down on the teletypewriter and hope you logged in before the mainframe would hang up. Oh the grand evolutionary step up to the portable Silent 700 terminal. Same thing only 250 pounds lighter. Punch cards and paper tape were the shit. No typing in 500 lines of basic, Just code the cards and run em through the reader. Oregon trail was the game of choice. Too bad Apple had to come along and make life easy on everyone. Thats the way it was and we liked it! The weak and nerdy are admired for their computer programming abilities-Homer Simpson
Are you the real deal, or just someone posing as Don Hopkins? Not that I expect truth in the answer, anyways...
--
Information wants to be beer, or something like that.
In the words of the music group Stxy from their 1980 song...
Well, I'm a jet fuel genius - I can solve the world's problems
Without even trying
I have dozens of friends and the fun never ends
That is, as long as I'm buying
Is it any wonder I'm not the president
(He's not the president)
Is it any wonder I'm null and void?
Is it any wonder I've got
Too much time on my hands, it's ticking away at my sanity
I've got too much time on my hands, it's hard to believe such a calamity
I've got too much time on my hands and it's ticking away from me
Too much time on my hands, too much time on my hands
Too much time on my hands
Given one hour to live, the student replied: "I'd spend it with professor FP who can make an hour seem like a lifetime."
-Don
Take a look and feel free: http://www.PieMenu.com
Sorry, I've had a string of discussions over the past few days where nobody understood what anyone else was saying very well :)
Actually, both VMS (up to the current version, 7.2), and FreeBSD (believe it or not!) support CTRL-T today, as you describe. Yes, it is very useful for seeing if a program is hung.
Of course, Linux and Windows do not support this feature (big surprise).
I suspect that the feature has gone out of fashion as CPU speed has gotten faster and there is generally less of a need to wait for batch jobs. That's no excuse not to support it, of course.
..are available at ftp://ftp.digital.com/pub/DEC/sim
:)
... The simulator itself is in the sources directory (and this covers several of the PDP models!), and the OS choices are in the software directory.
Possible Operating Systems include RSTS/E, Digital UNIX, etc....
Just another computer geek....
When politicians are involved, everyone loses.
Top Most Bizarre/Disturbing Error Messages
Well, there's somewhat of a hierarchy for 'hating'. The top of the ladder is PDP-10/DECsystem-20 people who hate VMS. Then VMS people hate Unix. In turn, Unix people hate Linux. At the bottom of the food chain, Linux people hate Windows.
At least some PDP-10 types bypass VMS hating and go directly to Unix hating. For example, Mark Crispin (the author of Pine) is probably the most militant Unix hater in the world, but seems to like TOPS-10/20 as well as VMS.
May I ask what you mean by "real OS". Could it be Windows 95?
No, I was thinking along the lines of ITS or TOPS-10. I guess you are really new to copmputers since (a) you don't know the native software of a PDP-10 and (b) you aren't aware of any OS'es besides Linux and Windows 95.
-Doug Humphrey (aka DIGEX), pissing off the Vax weenies at DECUS
-Don
Take a look and feel free: http://www.PieMenu.com
Being ever optimistic, we're unilaterally lowering fetters constraining limitless, unrestricted systems technology, even retro-computing.
It almost makes sense, if you read between the lines...
pooptruck
In any case, telcos tend to be *very conservative* about introducing new hw/sw, which is why they may still be using their tried-and-true PDP-10 packages. Which is also why I don't see what the point of "new software" written in C would be: if the telcos wanted to try new stuff, they'd be trying new hardware, too. Wouldn't they?
[
-y
150 Opening BINARY mode data connection for slashdot.sig (129323052 bytes).
When I was an undergrad freshman/soph. year, i worked for a small molecule x-ray crystallographer (this was like 88..,89.. (postdoc now
-avi
What version of Unix ran on the -10? To my knowledge, one never did. (it certainly would have been a waste of an excellent machine).
I can't say I'm suprised... Microsoft probably has made use of GCC at some point for R&D.
If you want to give it a try, get the DECsystem-10/DECSYSTEM-20 Processor Reference Manual from my web site. Prove me wrong! Please!!
Thanks!
Eric
Lars Brinkhoff is indeed working on a port of GCC with our backing, to run under Tops-20. Until now, we have used the old KCC compiler--but that was enough for us to port Perl 4.036, a number of X clients, and GNU Emacs 18.59, on our Toad-1 System.
However, Hemos' posting makes it appear that Niel Franklin's FPGA implementation of the PDP-10 architecture is also supported by us; that's really a separate effort by an individual. Further, what he is interested in doing is a KI-10 processor, to run Tops-10. You can see the discussion of his project in alt.sys.pdp10 on your nearest archiving news server.
"You get what anybody gets. You get a lifetime." --Death, of the Endless
You misunderstand me, I didn't say it was *the* most important peice of code, I said it was probably *one of* the most important peices of code... not *the* most important peice
If you're asking what OS Brinkhoff's GCC port is for, he's writing it for Tops-20, since that's what we provide on the Toad-1 System.
If you're asking about Franklin's FPGA implementation, he seems to be most interested in Tops-10. TENEX and ITS are remote possibilities; even more remote is Tops-20, since that was only ever run on KI-10 hardware internally at DEC (while the KL-10 processor was still being designed).
"You get what anybody gets. You get a lifetime." --Death, of the Endless
The complete system is called a DECsystem-10 or a DECSYSTEM-20, depending on whether it ran TOPS-10 or TOPS-20.
PDP-10 fans (e.g. TOPS-10) are possibly the most intense Unix haters around (with possible exception of VMS). Will it have a real OS, or be stuck with Linux?
Your friend was much more likely talking about a small PDP-11. Even the big PDP-11s (e.g., 11/70) were not suited to running in extreme environmental conditions.
The PDP-10 had one of the most wonderful instruction sets imaginable. Consider:
1. Using a single, 36 bit word, you can have the lower half-word be the address (2^18 36bit words) and the upper half composed of fields indicating byte size and offset in the current word. Combine this with wonderful instructions like Increment and LoaD Byte and you have arrays of arbitrary-sized strings.
2. JFFO! Jump on Find First One. Although originally put in to help sell machines to the telco's (it is a really fast way to find the next available line), it is also a memory-allocator's dream.
3. "being able to reference them as absolute memory locations is of dubious value." Use your imagination! I had a roomate that wrote an amazing search program that first built a state table and then loaded the code that executed it in the registers. It only dropped into "normal" memory when it got a hit -- blazing!
And did you ever see a machine with a speed dial on the main console? On the KA-10, you could slow the machine's clock down to about an instruction every few seconds and watch the blink'n lights while you debugged. Especially impressive when mated to a BBN Pager Box.
Speaking of languages created to exploit the 10's instructions, remember SAIL ... ahhhh what a language. Especially LEAP -- an associative data store that stored 3 item numbers in a word (max 4090 items). It was weird and it was fast.
Extra point question: What does SAIL stand for? Hint: It does not stand for Stanford AI Lab/Language.
Whew! Taking a high-speed tobagon ride down memory lane, when people wrote self-modifying code for the kernel, languages were designed at 2am on drugs and rock-and-roll (they probably still are), and the only thing you couldn't do with a computer was pick it up.
Portability? We don't need no steekin' portability!
Isn't it strange to think that the computer that played a major part in starting the Free software movement never had what is probably one of the most important peices of code from that movement ported to it?
Just thought it was kinda interesting/strange...
The "fast registers" were optional on both the PDP-6 (166 processor) and the KA10. Reportedly no KA10s were ever shipped without the option.
Can you look up the part number (probably EK-something or DEC-10-something) and date? I've got the last version scanned on my web site, but it might be interesting to scan older ones for comparison.
How mant l33t cr4x0rz have tools to crack VMS boxen? Security through obscurity rules!
Well, since they are implementing the processor in an FPGA, I really don't think it'll come down to _really_ slow speeds or refrigerator sized casings as some have suggested.
Moz.
see a Text Widget
Anyone who has a system running Tops-20--besides the Toad-1 System from XKL, there are several PDP-10 emulators being written, one of which is already running Tops-10 and dying someways into the Tops-20 boot code. That's who will use this version of gcc.
"You get what anybody gets. You get a lifetime." --Death, of the Endless
Speaking of Foonly, it's worth pointing out that the Foonly F1 (and I do mean the F1 - only one was ever built, derived from the work of the Stanford "SuperFoonly" project) was used to generate the animation for "TRON", "Flight of the Navigator", and other movies.
Anyway, if anyone knows the whereabouts of any copy of the TENEX software still in existence, please let me know - I've been looking for quite a while now, and everyone who I thought might have it, doesn't ...
--Pat.
...a 1200bd was my first. My folks wouldnt buy me a 300bd one, and by the time I had saved enough - the first 1200 came out. I was the hero of the neighborhood for a while...everyone and his brother wanted to be my friend ;-)
When we unloaded the machine we were somewhat pressed for time, but Mike Cheponis managed to take a few photos.
There's apparently another 2065 still running in a school district in or around Boston.
We (ADP Network Services) had a C compiler for it back in late '82 or early '83. We'd started doing some UNIX work on 8086s, liked it and C, and management wanted to know if we could back-port some of our C stuff to TOPS-10. BLISS-10 seemed kind of an existence proof that C was possible for PDP-10s. So fella named Don Wakelin ported one from (I think) a Harris mini. We picked that one because the Harris had 18-bit words and the PDP-10 had 36.
36 bit words, 18-bit word addresses, and bit-addressable memory made for a rather, er, idiosyncratic C compiler. We chose to use 7bit characters (a stock PDP-10 type), which meant each word had one bit left over. If you think the assumption that (sizeof)* == (sizeof)int broke a lot of programs, you should *see* what happens when characters weren't 8 bits and were immutably unsigned. For the record, most ASCII data on PDP-10s was stored as 7bit characters packed five per 36-bit word with one bit left over.
The only reason that worked well (and yes, it worked quite well) was because memory on the 10 was bit-addressable. It had these peculiar things called `byte pointers'. An 18-bit word address was stuck into a 36-bit word. The other 18 bits indicated the number of bits offset into the word, and the number of bits to be obtained on a fetch. Good byte pointer users could fetch 1 bit, then the next 5, then 3, etc, etc. Brought a whole new level of complexity to incrementing your pointers. Most folks just used them for characters, tho, setting fetch size to 7. Machine-level instructions did the heavy lifting on pointer incrementing - take code like
char *i = "abcefg" ;
;
char c;
c = *i++
The first line caused a byte pointer to be created with the address of the word containing the start of the string. The offset was 0, the fetch size was 7. The last line was done with just two assembler instructions. One fetched 7 bits from the address pointed to into a register and incremented the offset portion of the byte pointer by seven bits; the second just stored the register contents into the variable c. After you fetch the fifth character using i, the auto-increment instruction added 1 to the 18-bit address and reset the offset to 0.
Address zero was addressable -- it happened to be register zero. In fact, all the registers were addressable as 0-15. But when the null pointer successfully loaded and stored data, programs did a whole 'nuther set of interesting things.
Another fellow at ADP successfully headed a project to port University Ingres to TOPS-10. He told the most amazing horror stories for years afterwards...
And will the true story ever be told of PDP-10 follow-on machine, the Jupiter? It was supposed to be a truly huge (for the day) PDP-10, intended to compete with the IBM System 370. It was constantly started and cancelled and started and cancelled. We (ADP) finally concluded that it was just a feint so we wouldn't switch to some other hardware before DEC got the equally-late Venus project done. When Venus finally did ship, DEC called it the VAX. At an East Coast SF convention in the late '80s I bumped into someone wearing a faded `36 bits forever' t-shirt. When I asked what happened to the 10 projects, she refused to answer and looked *really* pissed.
There have been a number of PDP-10 clones built over the years, at least two companies are still making them. One of them is the company sponsoring the port; big surprise, eh? The target customers are folks who wants to run TENEX (UNIX-alike for PDP-10s) or ITS (Incompatible Timesharing System), MIT LISP refugees, and hardcore TOPS-10/TOPS-20 sites, maybe including ADP.
No. It depends on the size of the wheels.
>But seriously folks, anyone have any idea about the comparative speed of the PDP-10? How well did these things scale up?
High for it's time. Particularly well for it's time
>Anyone tried using gcc to compile a linux kernel on it? My guess would be more in the days than the hours category.
Probably not a good guess. It has, however, been 20 years since I used one.
Zero Sum (doesn't amount to much)
Zero Sum (don't amount to much). [root@localhost]
"Len retired and wanted to make PDP-10 computers."
You can call Len a lot of things, but "retired" is not one of them. As for the PDP-10 comment, Len wanted to build a
TOAD ("10 on a desktop") in the 70's, when he worked for DEC; cisco Systems' original business plan was to do just
that.
Len's never stopped doing what he's interested in doing.
"You get what anybody gets. You get a lifetime." --Death, of the Endless
the Decsystem 10 CPU (KL10 model) was a 6ft high blue cabinet 6ft wide an about 30" deep containing a 19" wide section that had the pdp-11-45 frontend/console machine and a 48" wide section that held the CPU/IO/MEM inteerface cards ( DEC hex height cards) topped b4 10" fans and an air duct that vented out the top front of the cabinet
/asyncIO(more PDP-11/45) controllers were all in additional 6 foot high blue cabinets
memory/diskcontrollers/tape controllers
dave
old Decsystem 10/20 service engineer
Start with a 36 bit word and 18 bit addresses. Add sixteen "accumulator/index registers" and locate them at (octal) addresses 0..17 in main memory. Actually 16 GP registers is a decent complement, though being able to reference them as absolute memory locations is of dubious value.
Could be worse. 32 bit words are great for packing that limited 6 bit character set, once so popular in the DEC world: all the letters and numbers plus (IIRC) '$' and '.'. Two words give you 12 characters, more than enough for unique identifiers in any serious programming effort. "ASCII" then was generally a 7-bit "Half-Ascii" encoding to match up with most DEC unit record equipment at the time; 5 chars per word with a bit to spare. Imagine all the applications that were tempted to muck with that spare bit! Eight bit bytes were possible but not preferred because they wasted 4 bits in each word, but that led to the obvious solution: 9 bit character codes -- seven bits plus ESC and META, thus inevitably leading to EMACS.
Only thing that made this character endoding workable was the PDP10 had special so-called "byte" operations, where you could manipulate "byte" fields consisting of arbitrary bit ranges within a word. Further you could index bytes in packed arrays of such stuff.
On the plus side, the PDP10 was one of the first CISC minicomputers; it had a fairly complete instruction set, including a full complement of arithmetic and test operations, plus stack maniuplations and indirect addressing modes. This is probably why many early users loved it so -- it was the first mini where assembly language programming was NOT a royal pain in the ass.
On the other hand, the accepted wisdom these days is that nice, uniform RISC machines are a better match for compiler writers. Nevertheless, countless programmers devoted innumerable man years to compilers that tried to exploit every detail of the PDP10 instruction set.
In particular, The '10 had instructions to push and pop PC+status to/from a stack. However, there was no dedicated stack register. Rather the language designer presumably would designate one from the GP registers.
Further, the PDP10 retained traditional, non-reentrant "return jump" instructions, where the first word of your subroutine was overwritten with a jump to the point following the call. To return from sub you jump (perhaps indirectly) through address 0 in your subroutine. Although it makes re-entancy impossible (an infinite loop))this was a common mechanism in the old days. DEC10 Fortran compilers used this mode. Other languages used a variety of other calling conventions, though reentrancy and auto variables generally were a novel feature.
Of course, back in those days, 99% of computer cycles and programmer energy went to noble "systems" work. Programmers generally avoided working on ucky user applications.
Probably more than anything, the PDP-10 deserves credit for hosting a lot of the original development for the computer languages BLISS and BCPL, precursors to C [praise be to Ritchie].
For further reading, check out this PDP10 instruction reference in one try. Or read more about PDP10 History generally.
--JayBee [still waiting for a password]
but I'm not sure where the money would come for such a thing, and of course we are all so paranoid with our script kiddies and suchlike that there may be no room in the world for the ITS culture anymore.
:-(.
Sad, that
D
(former ITS user many years ago).
----
Because the PDP-8 was such a small machine (8bit!) ....
The PDP-8 was a 12-bit, word-addressed machine.
Well, TOPS-20 probably had the most user-friendly command line around, although I understand it made even simple command line utilities a bear to program. Its cool interface lives on in Cisco routers, so you could say it's had a better run than most people remember.
Tis true that many of the ideas were replicated in Bash and other shells, but for some reason I never felt they had as cool a feel as TOPS-20 or Cisco.
Unix is a toy, but that's its greatest strength, actually: It can be disassembled and reassembled into anything you want. That's why it survived instead of TOPS-10, Multics or Lisp Machines, all of which I've used and (at the time, anyway) preferred to Unix.
I actually don't quite understand Lisp machine nostalgia - when I used one in the late 70s, it was slow as a pig. I hate to be anti-trendy, but I actually preferred using the old AI PDP-10 at the time.
D
----
When I first wrote a computer program (c. 1975) it was hand-written on coding sheets, then punched up on cards and later entered into 'the machine' through a card reader! You got the printout back a couple of days later. If there were any errors you had to go through the whole rigmarole once again.
This was using a version of BASIC that anyone who is used to the current Visual Basic (any version) would pull their hair out at! Variables were limited to 2 characters and you had to use "LET". The only use of windows in those days was as a useful way of passing the trays of cards from the data keying area through to the operators in the 'inner sanctum', the computer room! How things have changed in the quarter century or so since then! We had to carry the rolls of paper tape from a digitizer in one department to the computer centre where there was a tape reader. After I started work in the early 80's The Mainframe was somewhat limited. The disks were large removable hard drives holding between 5 and 30 MB) and resembled small spin dryers. They made a noise a bit like spin dryers too when you started them up!
And do I miss any of the above - not a bit. Give me a good linux box with KDE any day!
"Linux users never complain about Microsoft. They don't need to!"
NO! 25Mhz is NOT the same on all processors; you cannot compare by cycles alone! You need to take lots of things into account, like cycles per instruction (Instructions per cycle if your superscalar), memory access speeds, variety of instructions... The clock speed of a microprocessor is a wildly inaccurate way to compare different processors. Hell, it's even inaccurate in comparing Intel processors to AMD processors of the same archetecture!
For example, a 700mhz processor that has a CPI of 10 would be slower then a 100Mhz processor with a CPI of 1, however if you had a particular operation that could be performed in one instruction on the 700Mhz Processor, but took 10 instructions on the 100Mhz processor, then the 700Mhz processor would still be faster for that particular task. It's not a simple as counting cycles.
Government is the abdication of your responsibility to a faceless bureaucracy. Anarchy(absence of government)is the acceptance of responsibility for yourself
Sure, but haven't you heard that any sufficiently organized society is indistinguishable from government?
Any sufficiently well-organized community is indistinguishable from Government.
in their day I think the TOPs guys hated the VMS guys more - because the vax ended up killing the 10/20 line and both groups were kind of competing for DECs internal R&D attention - back then Unix was a bit of a side show - its 'rise' sort of happened just about the time the 10/20 line was axed so there wasn't a lot of overlap
It seems like anything anyone does these days that doesn't serve a useful purpose gets this bewildered response. I don't understand what could prompt that kind of thought. I think it is the same sort of people that run Gnome because they think Athena is "ugly" (what's ugly about it? boxes and text... how ugly can that actually be?).
I am not saying I think this whole "why" thing is necessarily bad. I just don't get it. It sounds fun to get gcc working on a pdp. It's like Doom on a digital camera; it's funny, it's art; it's a good time.
More, better, faster, that's cool; I like that stuff too. Still, part of me wants to write a tcp stack for my trs-80 model 100.
Is that really so wrong? Besides, it will harm many fewer people than adding skin support to every program on the desktop.
You mean the paper that starts out with "There have been three versions of UNIX. The earliest version (circa 1969-70) ran on the Digital Equipment Corporation PDP-7 and PDP-9 computers."?
The first version Ritchie was involved with might've been one of the PDP-11 versions, but the very first UNIX was on the PDP-7 (the -9 was compatible with the -7; both were 18-bit machines, along with the -15).
Sounds vaguely familiar.... Back in the early 80's, I had a 300 baud manual carrier modem, where you dialed the phone, waited for the carrier, and then flipped a switch to 'recieve' and hung up the phone. If you wanted to upload a file, you had to coordinate with the person on the other end and flip the switch the other way. (I don't remember the exact proceedure... A few months after that modem, I got a brand new shiny 1200 baud modem... Such blinding speed! 100k files in under two hours!)
Well, they were originally called PDP-10s; I guess the DEC marketoons (or should that be "Digital marketoons"? :-)) decided to change the name, maybe because "PDP" was what they called minicomputers, but the '10's were Systems or something such as that.
There's a great Macintosh-based PDP8/e simulator here. It even has options to slow the CPU and I/O devices down to original speed. (I used to think that the 110-baud ASR-33 was blazing - sure could type faster than me!)
My Mac's been dead for a few weeks, but when it comes back up I plan to port the first game I ever wrote (er, ported), Lunar Lander, to it. That was back in '69...
--
The antidote for misuse of freedom of speech is more freedom of speech.
-- Molly Ivins
you'll never know...
"We obviously need a new moderation category: (-1, Woo-fucking-hoo)" --Mr. AC
__________________
No-one thinks only Microsoft lackeys hate Unix, except for inexperienced newbie B1FF3R5 who've never used anything but Linux, so they don't have anything to compare it with.
You shouldn't be using Linux if you don't know what sucks about it. The same goes for Windows or any other operating system.
http://www.catalog.com/hopkins/unix-haters/handboo k.html
http://catalog.com/hopkins/unix-haters/etc/magoo.h tml
http://catalog.com/hopkins/unix-haters/whinux/your -time.html
-Don
Take a look and feel free: http://www.PieMenu.com
Good luck using it in California.
Maybe the power outages are caused by someone running a PDP-10, and not the Internet.
because it was a 36bit machine, it was particularly good for LISP, or better than the alternatives. Because you could divide a 36bit word into two 18-bit pointers, you could implement a LISP cons cell in one word, and thus handle cons cells fairly quickly. The same hack with competing 32bit machines, 16bit ob references just didn't provide a big enough data space.
The PDP-10 had its registers mapped into memory as the first 16 words starting with 0. But, being registers, they were really fast. So the text editor TECO (daddy to EMACS) would "compile" a search command into a tiny little program stored in the registers. Executing the code in the fast registers made for really quick (for the time) text searching.
-
-Be a man. Insult me without using an AC.
- I don't care if they globalize against free speech. All my best free thoughts are done in my head.
They weren't lightening -- but they scaled well.
They ran TOPS-10 or TOPS-20 and did real nice SMP with more than 3 cpu's supported (even back in the old days).
I guess they were in the 1 mips range (KL10) or less (KA cpu, KI cpu, KS cpu) -- but with much more load handling than the 11/780 which really was less powerful than the KL10.
The TOPS-10 and TOPS-20 operating systems (both were available for the PDP10) were easy to use, friendly and WAS NOT UNIX like in the slightest.
They handled a ton of timeshared users efficiently and reliably and made IBM take notice of timeshared use. The OS was written in Macro10
(macro assembler) and the instruction set was RISC-like.
Microsoft did most of it's development cross developing on this CPU type. (As did DEC -- which used them for emulation of new CPU designs and for cross development of software for the PDP8 at times).
GCC would be interesting -- remember this isn't just another a POSIX box.
This is the CPU where EMACS really was born as editing MACROS for TECO (Tape--er Text Editor and Corrector).
Had Kernighan, Thompson and Richie gotten one of these they wouldn't have developed Unix in the first place.
These machines were used as some of the first machines on the internet. They were heavy crunching boxes at Western Electric for engineering time sharing.
Rutgers University had three that I knew of,
Columbia, Rider College, Johnson and Johnson...
These were CLASSIC Machines.
See alt.sys.pdp10.
--Bill
One of the things TOPS-10 had going for it was a control-T interrupt character. Whenever a program got one of these it was spit out some information about how far along it was in whatever processing it was doing. If, (like I do) you still do a lot of your computer interaction at the command line, you'll appreciate just how useful a feature that was. Why would someone want a DEC 10 or PDP 11 emulator? The same reason some people might want a Karman Ghia convertible, a Vincent Black Lightning, or a balsa surfboard. Because they're cool. Do you really think that the people who wrote the first Emacs in line noise cared about whether there was a market for it?
You shouldn't be using Linux if you don't know what sucks about it. The same goes for Windows or any other operating system.
Which is presumably why Windows is so widespread?
--
I *invented* pants!
that is a hack.
umm.. how fast does your car go?
6000rpm!
Wow, that's fast! Mine only does 5000rpm!
Obviously comparing speed in terms of how fast something cycles is silly. That's why we guage the speed of cars with different real world benchmarks: like mph, and 0-60 times.
Be ot or bot ne ot, taht is the nestquoi.
The most interesting thing about the PDP-10 is its word size. What other machine has a word size divisable by three? It makes all those power of two cpus like PDP-8s and 11s and VAXes seem so dull...
Indeed. Linux sucks... but it sucks less than any of the other options. Depending on what you're doing, of course.
Torrey Hoffman (Azog)
Torrey Hoffman (Azog)
"HTML needs a rant tag" - Alan Cox
Of course, UNIX does have lots of problems. Unfortunately, many of the complaints in the "UNIX Hater's Handbook" are not even particularly interesting because they reflect more the lack of experience of the contributors with UNIX than any interesting shortcomings. For insightful UNIX criticism, don't bother with the "UNIX Hater's Handbook".
Furthermore, while the contributors to the "UNIX Hater's Handbook" like to complain a lot, I haven't seen much coming from them to actually improve the situation. Maybe Don can provide some links to that kind of work, rather than promoting his book?
Because people can do whatever they want to do.
Why doesn't Linus quit working on his kernel, and concentrate his efforts on gcc 3.0 ?
Why don't you sell your computer, and donate all the money to finding a cure for AIDS ?
This is a useless argument, and I wish people would drop it. There's always something more important (especially stuff that others find more important) than the stuff you're working on.
they have almost nothing in common, except that Digitals OS's had some similarities, and as precursors to CP/M, can lay claim to being precursors to MS-DOS.
Oh, heck, I wrote a PDP-8 emulator that ran on the PDP-11. It was faster than a PDP-5 (the PDP-8's compatible predecessor).
... sorry, it's not available, I wrote it 28 years ago.
I'm not kidding
This compiler made it onto a DECUS tape. However, since it predated ANSI-C, it doesn't implement ANSI, but only K&R. Not a bad compiler for its time and it launched Greg's career. He's been a compiler guru ever since then.
Warner Losh
:)
If you're not part of the solution, you're part of the precipitate.
The Backstreet Boys sell more albmuns than X... Market penetration doesn't mean you don't suck.
Not very. The PDP-10 had magnetic core memory, which means it could not have cycled much faster than 1 MHz. It also did not have modern features like pipeline caches, etc. all of which would have required an astronomical number of the low density silicon chips available at the time. I used a DEC System 10 at university. It had a massively multiplayer (by those days' standards) Star Trek game called DECwar. If you have ever played the original text-based Star Trek game you know what this looked like, otherwise you cannot IMAGINE how primitive it was; yet the engineering students would spend hours after hours playing this thing. Simple as it was, with a few dozen users on the system the task-switching delays were *very* noticeable. IIRC the our mainframe had 256K of RAM, then considered an astronomical amount, and the 5-30 Mb "layer cake" cartridge hard drives someone else mentioned. It was in a glass room so you could ogle it and the observant priesthood of the computer dept who serviced your Hollerith card batch jobs. It was 6 or 7 cabinets, several with rows of incandescent pilot lights displaying the current address and register. You could, with practice, learn to interpret those flickers and tell how fast it was switching jobs and whether one job was hogging the machine. It was that slow. It would have been much slower if programmed in today's style. But almost all DEC software was written in a macro-assembler style language which resulted in very efficient code. Although the basic core was RISClike most of those old CPU's all supported processor extensions in the form of cards added to a rack, which could actually add microcode and new registers to the CPU. (Not at all like the FPU on an x86, which is more like an outboard processor.) Yep, those were the days; when you signed up for class you were allotted a certain number of seconds of computer time and if you used them up (difficult, but possible) your account shut down automatically. The CPU actually kept track of your real usage as tasks were swapped, and the OS bailed your app if it looked like it had gotten hung in a loop or something. And then there was the joy that is FORTRAN -- such a great language that I used to prewrite and debug everything in BASIC before converting it over. Yep, definitely memories to savor as I pat the side of my 450MHz pentium.
Brackets contain world's first nanosig, highly magnified:[.]
Some of them were actually variable-speed. There was a big knob on the console so you could vary the system clock. I only heard of field circus using it when running diagnostics.
Just junk food for thought...
The last PDP10 that was actually being used was removed from service 3 years ago. who will use this version of gcc? isn't the effort better spent somewhere else?
on another interesting note, i saw a PDP10 programming manual direct from DEC in a used book store a while ago and couldn't resist picking it up. i'm sure i'll be able to sell it on e-bay as a collector's item in a few years. or, hey, wait. maybe i could sell it to the gcc devlopers! hmmm....
I'm having difficulty understanding why this project is underway. Sure I can understand doing it for nostalgic reasons, but there is'nt a market demand for it (Not to my knowledge). I havent heard of many companies running PDP-10s who need to backwards compatibility with old apps. From what I understand the PDP-10 had a rather primitive instruction set.
Maybe Im off my rocker. On the other people are porting to the Commie64, and Amiga (of course those are brilliant platforms... Anyway
While it isn't a PDP-10, I did help write a PDP-11 emulator, assembler and debugger.
check it out:
http://www.csc.uvic.ca/~rrabien/
oh ya, it requires unix or linux, open source too.
I'll be happy if said gcc port generates 6502 that's suitable for a IIe... tho I'd rather have a real IIgs :o)
--
--
Me spell chucker work grate. Need grandma chicken.
I mentioned this at work and someone said "Oh we've got one of them in stores somewhere". After a frantic search I found it. It's non-functional and missing the storage trollies and the power suplies bust. If anyone had any technical doucument on how to repair them ... you know where to send the docs.
-- Be careful what you say. Someone might remind you about it another day.
I've never seen one in my life.
This may be a bit offtopic, but I always love hearing stories from "back then" (yes I admit I haven't been around that long...). Maybe there are a few "old-timers" around /. with a few stories from that time?
Don't you get it? Let me give you an example. TWM is a perfectly good window manager. Why would anyone use anything else, and why waste developers time working on anything else? Perl is a perfectly good programming language, why are people wasting their time with Python? FreeBSD is a perfectly good OS, why waste time on Linux?
Because it's fun. There's no better reason to do something, and of all people, I would expect the Slashbots to understand this.
If anyone is interested, I happened across a pretty enjoyable site regarding old-school computers and computing. Perhaps there is no practical application for this stuff, but since when did that matter so much?
If we weren't just "scratching an itch", would open-source exist?
Oh, and does anyone have any links to interesting HP3000/MPE stuff? I used to work with one, and I want to know more... Cheers!
I work for a company in that (among other things) makes performance upgrades for pdp10/11's. I'm not involved in that area of the business but aparantly there is a big market in the former ussr for them (some element of their phone system seems to rely heavily on pdp's)
Why not just run their original SMP clusters
that they had before Unix clusters existed.
(TOPS10 did SMP big time before there were even Vax Clusters -- not to mention Unix clusters).
From http://www.catalog.com/hopkins/unix-haters/handboo k.html:
"With Forward by Donald Norman, Apple Computer".
The same people that use a UNIX variant in their new OS....Now that is irony ;)
"Mary had a crypto key, she kept it in escrow, and everything that Mary said, the Feds were sure to know."
And remember, they did have 36-bit words...
Well, apparently, you only have to fool the majority of people for a little while.
how'd it compare with the VAX9000 -- I left DEC after the 8650 and never saw the Vax Mainframe...
An quick list of various PDP-10 capabilities is here
Just junk food for thought...
This is a demo TOAD-1 from XKL, alive and well. Someone please mod down that "PDP-10S ARE DEAD WAAAAAH" guy already. kthx
And why use a FPGA? Isn't there someone at Transmeta just panting to use their code morphing technology to emulate PDP processors?
-- fencepost
fencepost
just a little off
I just used an XKL TOAD-1 a few seconds ago (but it's been a while since I last logged in, but notice how long it's been up):
telnet xkleten.paulallen.com
Trying 204.202.80.66...
Connected to xkleten.paulallen.com
(204.202.80.66).
Escape character is '^]'.
XKLeTen - Tops20 for the Wired World, TOPS-20 Monitor 7(102400)-1
@finger
User Personal name Job Subsys Idle TTY Console location
??? 9 FINGER 25 Internet: [216.218.252.130]
@login a2deh
Job 9 on TTY25 17-Jan-2001 2:51PM
Previous LOGIN: 11-Dec-1998 4:30PM
You have mail from Mailer at 14-Dec-1998 5:04PM
XKLeTen@ finger
User Personal name Job Subsys Idle TTY Console location
A2DEH 9 FINGER 25 Internet: [216.218.252.130]
XKLeTen@ sysTAT
Wed 17-Jan-2001 14:55:23 Up 931:34:02
1+6 Jobs Load av 0.01 0.02 0.01
Job Line Program User Origin
9* 25 SYSTAT A2DEH (216.218.252.130)
1 1 OPR OPERATOR
2 2 NETSRV OPERATOR
3 3 RESOLV OPERATOR
4 4 MMAILR OPERATOR
5 5 EXEC OPERATOR
6 6 MAILST OPERATOR
XKLeTen@
Paul Allen and Bill Gates used to hack on DEC-10's, so Paul Allen has set up a nice TOAD-1 for old times sake. Here's some more info on the TOAD-1: configuration and physical specs.
-Don
Take a look and feel free: http://www.PieMenu.com
Why? Why god why? I don't have the patience recompiling a linux kernel on a 486. Who would want to be on this ol dinosaur?
They stuck me in an institution, said it was the only solution, to...protect me from the enemy, myself
it has a C compiler. is it just be or does a GCC port sound like an INSANELY stupid waste of funds.
I like meat helmets.
But seriously folks, anyone have any idea about the comparative speed of the PDP-10? How well did these things scale up? Anyone tried using gcc to compile a linux kernel on it? My guess would be more in the days than the hours category.
Be ot or bot ne ot, taht is the nestquoi.
I'm not *giving* them away, but I do have several "extra" PDP-11/70s for which I'm willing to entertain serious offers.
Now if I just had space (1 room flat...), I would immediately take you up on that one. 11/70 would definitely beat my Pro350.
--
--
Intellectual Property is Intellectual Robbery
Considering that VAX/VMS started getting a TCP stack only I think after version V5.1 maybe V5.3, but sheesh this is sooo long ago, somewhere around 1994: how much work do you think went into that protocol stack? How many fixes and patches were made to that stack since then? Hmmm... speaking of firewall support built into the operating system, I don't think there was any support for that even in DECnet..
-Don
Take a look and feel free: http://www.PieMenu.com
I saw about four MicroVaxen (I don't know if they were the II or not - big boxes, though) down at Apache Reclamation here in Phoenix. They were all wrapped in plastic, and looked nearly brand new. On top of each was what I guess was a system console - a TRS-80 Model IV...
I wished I could have bought one of those, but at the time I was in an apartment, and it would've taken up my entire office. That, and the fact that I had no way to unload it off my truck...
Worldcom - Generation Duh!
Reason is the Path to God - Anon
It's a pretty good IP stack. And Compaq's current IP offering is based on a 3rd-party product that had been around for years (I forget if it was TCPware or one of the others). And yes, in addition to NT, various Unixes and Netware, I do manage two OpenVMS systems.
Let me know when the port of GCC to my Apple IIGS is complete. Then I'll be happy!;-)
Now, on a serious note, is there any need for this? Are there that many PDP-10s still in use?
------------
Lately there's been a lot of debate over RH7, and the inclusion of an unfinished gcc compiler in it. Even Linus Torvals has been bashing RedHat for doing so. RedHat's answer was, that they were trying to get an up-to-date compiler and couldn't wait for gcc 3.0 to ship. And now somebody want to spend a bunch of money porting it to an - to my knowledge - ancient machine, why?
;-)
Wouldn't it be better pushing some money in to the development of gcc 3.0?
Or did I miss a point somewhere?
Evil Scientist: "Great, so we're agreed to use that wharehose of old DEC boxes to launch our new Internet worm. Anyone got a compiler?"
there are no stupid questions, but there are a lot of inquisitive idiots
Hey the PDP-10 may be older than me, but I have
fond memories of re-implementing a PDP-11 in
Mentor Graphics for my BSEE requirements.
Oh the memories...
Say, you know what would be fun, is to run EMACS
on a _simulated_ PDP-10 in Mentor Graphics.
Now *that* sounds useful. Chug-chug-chug...
The PDP-10 was most definitely a mainframe, or at least it was by far the largest computer that DEC made, and it was made expressly to compete with IBM in that space. It has nothing to do with the PDP-11 or -8, which were mini's.