10 ms·
The Architecture of the Burroughs B-5000 (1982)
- Hoff 11y agoFor those interested in the old Burroughs stuff, the folks at Unisys have announced a hobbyist program for the ClearPath MCP Express systems: http://www.unisys.com/offerings/high-end-servers/clearpath-forward-systems/clearpath-mcp-software/clearpath-mcp-express http://www.unisys.com/offerings/high-end-servers/clearpath-f...
- nickpsecurity 11y agoThat's awesome. Thanks for the link.
- pmcjones 11y agoThere's also an excellent open-source project with an emulator and a lot of software available to run: https://github.com/pkimpel/retro-b5500/ https://github.com/pkimpel/retro-b5500/
- AstroJetson 11y agoThanks, I just pulled it down. It's so amazing how small the compilers and the MCP was. Thanks very much for posting these links.
- AstroJetson 11y agoHoly Deja Vue Batman! I used these systems when I went to University. Thank Hoff for posting the link to the hobby version of Clearpath, it will be cool to go back over 40 years. Wonder how much Algol I really remember.
- inetsee 11y agoI learned Algol on a Burroughs B5500 at University of California at San Diego. I really liked programming in Algol, and I liked Pascal even more (I learned UCSD Pascal).
- jchassoul 11y agoHi there, is this the same b5000 that inspired Dr Kay? On the hole OOP paradigm if I remember the quote correctly he said that the b5000 almost remove the notion of data and how he wanted to duplicate this behavior with OOP. Can anyone more knowledgeable about this step in please and we can all learn more about it.
- noblethrasher 11y agoThis is the same B5000 that Dr. Kay mentions in several of his talks. Kay has often said that he saw the same idea three at least three different times before he fully appreciated the concepts that he later labeled ‘OOP’. Besides the B5000 (designed by Bob Barton), other proto-OOP systems were Sketchpad (Ivan Sutherland), Simula, and even the proto-Internet (that was known as the ARPAnet).
- AstroJetson 11y agoYou can always start out with the Wikipedia article. Donald Knuth, Edsger Dijkstra, Bob Barton and others worked on the software. I think the quote you are looking for is: My best results have come from odd takes on ideas around me -- more like rotations of point of view than incremental progress. For example, many of the strongest ingredients of my object-oriented ideas came from Ivan Sutherland's Sketchpad, Nygaard & Dahl's Simula, Bob Barton's B5000, the ARPAnet goal, Algebra and Biology. One of the deepest insights came from McCarthy's LISP. But the rotational result was a new and different species of programming and systems design that turned out to be critically useful at PARC and beyond.
- opinali 11y agoOld times of hardware designed both for safer Assembly coding, and support for simple OS & compilers thanks to low-level safety... like Obi-Wan would say, "an elegant weapon for a more civilized age".
- Narishma 11y agoStrange thing to say, since this particular system was designed specifically for high-level languages like COBOL and ALGOL-60. I don't think it even supported assembly language.
- nickpsecurity 11y agoAnyone that likes the concept should look at SAFE and CHERI projects, esp SAFE. They're applying lessons from old tagged and capability systems to modern CPU design for security. Similar techniques improve reliability. http://www.crash-safe.org/papers.html http://www.crash-safe.org/papers.html (See esp "SAFE: A clean-slate architecture for secure systems") https://www.cl.cam.ac.uk/research/security/ctsrd/cheri/ https://www.cl.cam.ac.uk/research/security/ctsrd/cheri/ Far as old stuff, there are at least three more greats along Burrough's style: System/38 (later called AS/400 & IBM i), Intel iAPX 432, and Flex Machine w/ Ten15. Sole survivor of those is System/38 in form of IBM i. It lived up to future-proofing, reliability, and relative security its architecture intended. Like with Burroughs (later ClearPath MCP), (slow clap) "Bravo to the designers." :) iAPX 432 and System/38 here: http://www.cs.washington.edu/homes/levy/capabook/index.html http://www.cs.washington.edu/homes/levy/capabook/index.html Flex and Ten15 here: https://en.wikipedia.org/wiki/Flex_machine https://en.wikipedia.org/wiki/Flex_machine For availability, NonStop deserves a good mention for a series of ground-up designs that did great: https://en.wikipedia.org/wiki/Tandem_Computers https://en.wikipedia.org/wiki/Tandem_Computers Still looking for proper docs but OpenVMS's system-level decisions and clustering were so good by 90's they're still worth copying to some degree: http://h71000.www7.hp.com/openvms/whitepapers/high_avail.html http://h71000.www7.hp.com/openvms/whitepapers/high_avail.htm... So, there's old and new with the old stuff still being better than a lot of new stuff in integrity and availability. Makes me smirk at all the young, hot-shot coders in cloud market acting like they coded the best thing ever. I'll be impressed when they top 1960's-80's era technology at their own game. Although, I'd rather they learn the lessons and exceed them given it's (censored) 2015. ;)
- twoodfin 11y agoThis is the first time I've heard i432 described as "great". What parts of that architecture do you think Intel got right?
- nickpsecurity 11y ago- Clean slate attempt to clean up mess that was x86 family - Microcoded for easier updates at ISA level - Scheduling, IPC, and memory/storage management in CPU for acceleration and protection - Dedicated I/O processor like mainframes have - Multiprocessing support early on - CPU-level support for and some enforcement of abstract data types (objects) - Capability-based addressing for its fault-tolerance and security benefits - Segments do POLA at high-speed and fine-granularity - Protected procedures via domains - Garbage collection support - Consistency in hardware and software - OS and apps written mostly in safe, high-level language (Ada) Those are a few. The 75% performance drop due to bad implementation hurt it a lot. However, subsequent papers showed relatively few changes to the design would've eliminated most of its problems. Even calling it overkill, the subsequent i960 incorporated its object-descriptor architecture and fault-tolerance mechanisms into an otherwise RISC CPU. Imagine how much easier correct or secure apps would've been on either vs x86. Yet, market forces ensured x86 won out and became dominant. Long series of problems followed. Yet, compared to its architecture, the iAPX 432 and to a lesser degree the i960 were great.
- geomark 11y agoI worked as a test technician on B6800 systems when Burroughs had a manufacturing plant in Mission Viejo, CA. It was cool. All MSI components on PCBs plugged into a wirewrapped backplane, big squirrel cage fans for cooling, a power rack with 1" X 2" thick copper bars sticking out to supply the beast. All bolted together it was the size of an automobile. I would wear headphones with a radio in them due to the noise of the fans, and if I tuned to an empty AM band while running diagnostics I could tell by the pattern of electrical noise if the machine was running properly or it was going to fail. Debugging was so interesting, using just an oscillisope we would walk along the backplane and probe internals of the ALU, accumulator, memory bus, etc. Most common failures were a wirewrap that was too tight cutting the insulation and causing a short, stray wire clippings in the backframe, and MSI components that were failing at speed. That last one was the most challenging and interesting to find, usually requiring entering some microcoded routine to run the failing sequence of instructions, handle the exception, and loop back again, then go around and probe with the scope to find the failing component. There were also more dramatic failures now and then, like exploding capacitors - they were the size of coffee cans and exploded like an M80 when they shorted. There were a couple of machines that caught fire, too. Relevant to this article was the microcoding that we did when we had to write debug routines. The tagged words and stack architecture seemed bizarre to me at first, but once I got the hang of it I could whip up small routines quickly. They were entered by toggling bits via a slick test and maintenance processor panel. This was accomplished via a built in serial test scan mode, similar to IBMS's LSSD but a different implementation.
- csense 11y agoIf the first machines which had segmentation existed in the early '60s, why did it take so long to discover that memory segmentation is an anti-feature? AFAIK segments were put in the 386 because Intel thought people would like them, but they didn't. Now segmentation only exists on x86 hardware for backward compatibility, and all modern OS's essentially disable segmentation in software (basically putting all of memory into a single segment) and using paging to implement process isolation, no-write / no-execute, shared memory, and the like. I'm not talking about 8086 / 8088 style segmentation, which was a different beast, a somewhat reasonable way to allow a 16-bit processor to access more than 64k of memory.
- hga 11y agoI don't think it's so much an anti-feature as something that's just not used in the dominate ecosystems so today it is superfluous complexity. Not in IBM 360, not used as such by MS-DOS for the 8088 and Windows, which were originally designed for the 8088 and the 286, since their segments were too small, not for UNIX(TM) and its derivatives including NeXTSTEP -> OS X and other originally 680x0 based operating systems, not for anything ARM based.
- bobertyyyyy 11y agoMany this sure is wierd.