gribll writes "October 2009 marked an important milestone in the history of computing. It was exactly 40 years since the first Multics computer system was used at MIT. The interview is with Multics co-developer, MIT Professor and Turing Award winner Fernando J. Corbato. Multics (Multiplexed Information and Computing Service) is regarded as the foundation of modern time-sharing systems. Multics was the catalyst for the development of Unix and has been used as a model of operating system design since its release four decades ago. There is also a picture gallery of Multics history."
Yeah, you're not kidding. PL/1 was one of the first languages I learned back in the early 80's and I'm ever so glad that I never had to put that knowledge to any real use other than academics. Though I did find my old box of programming manuals from back then and right on top was my PL/1 and APL manuals from IBM. I wonder if those are worth anything these days...
I don't get it. Kanye is probably the single lamest meme since the beginning of the Internet. And it's a even more lame media "scandal" that "nipplegate". By an order of a magnitude, at least.
Badger badger looks like deep Chinese philosophy, written in the words of Shakespeare, in comparison.
Can we get back to "In Soviet Russia, car is analogy of YOU" jokes, please?:)
Corbato designed and taught the Architecture that underpinned the UNIX developers and Martin Richards (of Cambridge UK) later, in 1970, brought BCPL, evolving into B, C,... (_but_ definitely not C++)
Professor Corbato got so many things right on the GE645 that he, Gordon Bell, Maurice Wilks and Tom Kilburn were the generation of _REAL_ uber-architects in the 60/70 s; with Gene Ahmdahl and Fred Brooks doing the engineering heavy lifting, Chris Streachy and and the MIT school (Marvin Minsky and many others) did the philosophy.
Without their contributions the Computer Industry would never have started
by Anonymous Coward
on Wednesday November 11, @02:30PM (#30064360)
I had to use it at a large energy company in Europe in the 1980s. It was actually a fantastic system.
Unlike VMS and IBM's mainframe OSes, it was actually pretty friendly to use. This attribute has clearly rubbed off on UNIX. While we'd spend months teaching some users how to use VMS, they'd get Multics within a few days.
The programming environment was also fantastic. It didn't support as many languages as VMS, nor did it have language interoperability that was as good, but it still supported more languages than you'd fine on typical UNIX systems of that era.
That said, it still was a beast compared to UNIX. UNIX was sly and sleek, and thus supported lower-end hardware better than Multics could. And UNIX was more portable, which eventually made it more widely available.
Still, I look upon my Multics days with a fondness I didn't find again until the early 2000s, when I was able to get a position administering a network of FreeBSD servers.
My recollection from the early 80s is that it had fantastic language interoperability, especially compared to other systems at the time.
On Multics you could pass variables from one language to another using full declarators allowing each language to inspect the value and type and more of each incoming variable, and act accordingly, and most of the Multics languages supported that in the compiler.
So PL/I could call into FORTRAN and on and on.
It's been a long time, I could easily be wrong about this, but that
VMS isn't "friendly to use"? Really? I guess maybe it isn't if English isn't your first language, but what could be more friendly than DCL? If I need help, I type "help". If I need to copy a file, the command is "copy". If I want to rename a file, guess what the command is? You guessed it - "rename"
Plus, the uptime is tremendous, which is a VERY friendly attribute.
I was wondering the same thing. UNIX more friendly than VMS? Huh? UNIX has some positive things going for it, but of all of the command line operating systems I've used, it's actually towards the bottom of user friendly-ness.
Hmm, I always considered VMS to be more user friendly, at least to novices, than Unix. Unix was full of cryptic shorthand commands. Ie, "help" vs "man -k", "search" vs "grep", "edit" vs "vi" or "ed" or "ex", etc. DCL was very quick to pick up compared to Unix sh, even though sh had more power.
Essentially I think VMS had a shallow learning curve where Unix was pretty steep, but the shallow curve meant it took you longer to learn how to do really powerful things. The result was that it was faster to become a functional user with VMS, but you got to be a power user more quickly with Unix.
Yeah, that "was the catalyst" line is great. You can come up with all sorts of equivalent expressions. Like "MS-DOS was the catalyst for Linux", or "horse manure was the catalyst for the automobile"
It was a shameless CP/M knock-off produced by some hole-in-the-wall called Seattle Computer Products. MS bought it for $50,000 and proceeded to destroy the brilliant company known as Digital Research who developed the real thing (CP/M, later DR-DOS). DR also had a better GUI environment than early versions of Windows called GEM. I remember GEM fondly on my Atari ST. Ran it on a 286 for a while too.
That and they like what Multics offered but didn't have the hardware to support it. Of course the Current version of Linux or BSD is probably more "bloated" then the last version of Multics.
Of course the Current version of Linux or BSD is probably more "bloated" then the last version of Multics.
Sure, trade in a 40 year old operating system for two 20s, just because its a little bloated after giving you the best years of its life... Does this tty driver make my kernel look fat?
That is 250K SLOC. SLOC stands for Significant lines of code. Heck I have seen applications that rival that. Multics was small and looks pretty light. To bad it was impossible to have written it in c instead of PL/1. Had it been in c it might still be around and useful. Multics predates c BTW so it couldn't have been written in c. It could have been ported maybe but by then we had Unix.
Bloat isn't really the right word. Multics had a lot more features than UNIX, and some really nice ideas (like the fact that files and memory used the same interface), but it required very high-end hardware for the time. It was a mainframe OS. It would not run on a minicomputer and so UNIX was written to port a game from Multics to the spare minicomputer that Thompson and Richie had access to. It turned out that UNIX, while inferior, was good enough for a lot of things, but saying Multics is bloated compared to UNIX is like saying Linux is bloated compared to MS DOS 3.
"It's amazing the number of times in computing where something, while inferior, was good enough for a lot of things and ended up dominating..."
And it's also amazing the number of times that "inferior but good enough" product, after dominating the low-end field due to its small and lightweight design, then has to scale up by painfully and clumsily reintroducing all the "bloated" features of the higher quality and better-designed product. And then of course, makes the better product extinct not on its own mer
Linux and BSD are positively bloated compared to the first Unix systems. It first ran on a computer with only 64K after all. Unix wouldn't have survived if it had stuck to the first few versions, it would be far too limiting. What made it succeed, as opposed to its contemporaries, was that it was relatively portable and could migrate to better computers when they came along, and it was relatively open (for the time) so that others could grow and adapt it.
It's true that Multics couldn't get out of its own way on a system with 64K of RAM, although it was technically supposed to run on that configuration. To work well, it really wanted several hundred K of RAM. Thank heavens we left it in the dustbin of history, replaced by the crisp, clean efficiency of Windows, or OS X, or Linux.
Multics was very influential, it provided Ken Thompson an example of what not to do. In other words, stick closely to the KISS (Keep It Simple) principle.
Not really. Most of the features of Multics were eventually added to UNIX derivatives, but because they were added piecemeal by various different vendors over the years, they lack the coherence that they had on Multics.
Firstly I have never used Multics, so I can not directly comment on its superiority (or lack thereof) over Unix. However according to a interview for Unix: An Oral History [princeton.edu]
Various accounts I’ve read of UNIX, Ritchie’s retrospective on it, and even an interview you did with some people for a video back in 1981 talk about the system as being, or UNIX as being, sort of culling all the best ideas in operating systems that emerged during the ‘60’s.
by Anonymous Coward
on Wednesday November 11, @02:46PM (#30064594)
When I worked at the Pentagon (HQAF DSC) one of the machines I developed on was a Multics machine. The really interesting part of the architecture to me was that it had, if I recall correctly, seven permission rings from ring 6 to ring 0 and each were implemented in hardware. The OS ran on a separate processor cluster for each ring, and system level work (kernel mode) was done all in ring 0.
I enjoyed learning PL1, and found it to be an easy transition to go to Unix/C. The multics box was a beast, and stuff ran like greased lightning.
So I've got to ask, does this have any synchronic significance with the recent 40-year anniversary of Sesame Street [google.com] recently splashed around Google's main page?
Hmm... "This episode brought to you by the letters P, L, and I, and the number pi!":)
A few people are trying to get emulators going, the biggest problem is the lack of documentation of the peripheral hardware interfaces used on Multics capable systems. Check out the archives of the alt.os.multics news group.
There are a few defunct projects on sourceforge and, I think, one live effort. I'm writing an emulator, but I haven't released any code yet.
CPUs are trivial. Systems can be hard.
Writing an emulator probably wasn't feasible before the sources were released two years ago. A few people started prior to that, but I can't imagine how.
Multics ran on somewhat complex hardware. In addition to the CPU, there were several other complex components including the system controllers, I/O multiplexors, and front end processors. Some of these were programmable or semi-programmable devices and much of the documentation is missing.
Now that we have compiler listings, assembly listings, a few documents, and a boot tape, the task seems feasible. Digging through the machine code on the boot tape and in the assembly listings partially makes up for the lack of decent documentation on some of the components.
My emulator is far from complete -- and it's almost 18K lines of code. It does read the boot tape and run about 2 million instructions, but crashes before finishing the boot process. The emulator doesn't yet know about disks or support instruction restart etc. There's a lot of work left to do.
I plan on cleaning up a few things and releasing it real soon now.
Well, for one theres little need and for another there is little interest. The source code for Multics wasn't released till 1992, by then it was clear that UNIX was the future, development basically stopped for Multics long before then and Linux was beginning its rise as an open source UNIX system. With no legacy software to drive a tricky system to emulate why do it? I mean, with game consoles there are the games, with PC things usually there are a few nifty pieces of software, with Multics just about everything was ported to UNIX.
The implementation we used (SWURCC, England. 1978 - ?) had a "cookie monster" program. Briefly, this was a process that wandered randomly around the logged in users, occasionally taking control of their VDU and sending the message "I wanna cookie" It would only give you your screen back once the user typed "cookie". Swearing at it got you disconnected.
I have a feeling that this "feature" got removed very soon after it snarfed the Computer Unit Director's screen.
I remember reading that Multics was going to be the OS used to provide computing-as-utility; everyone was just going to be able to use it. Did this plan ever pan out (was Tymnet and Telenet Multics-based?) Who, then, were the Multics customers and what, if anything, spawned from it (other than Unix and VisiCalc, as mentioned in TFA)?
Later in his career Ken Thompson [wikipedia.org] had corrective eye surgery, changed his name to Kim Thayil [wikipedia.org] and was the lead guitarist of Soundgarden...What an amazing talent.
Can you really rate it as 40 years, since the last operational site was shut down in 2000? Shouldn't the timer stop when it dies, like with people? Do you give Columbus's age as over 500 years?
Must have been a sad life, after you asked your parents why they didn't celebrate your birthday, and they answered: "We will celebrate, when you're dead!":P
in the 1970s. I programmed in PL/1. While the language was complex (being a synthesis of the most difficult-to-implement features from FORTRAN, COBOL and Algol), it certainly was a fine development environment *on Multics*.
I still miss the clean user interface (all command-line arguments meant the same thing, no matter which command was being executed) and fine documentation. But the GE645 / Honeywell 6800 architecture was never well-enough documented to make emulation feasible. And the descendants of Multics have implemented most of the features more-or-less. The world has moved on.
I've moved on, too. In 1978 I taught myself C; I've since learned and continue to program in C++, Java and Python, having discarded along the way Lisp, Pascal and Delphi.
And I use Windows mostly now. But my memory tells me that Multics was often faster for routine things like searching the file system. (Though the filesystem back then was only a few hundred MB.) And the processor back then was good for about 1 MIPS. Forget about color graphics. Animation? That was for cartoonists.
Anyway, this old-timer got a chuckle out of the article; thanks for posting the heads-up.
Favorite quote (Score:5, Funny)
"In hindsight we might have picked a simpler language than PL/I, . . ." Now there's an understatement!
Re: (Score:2)
obKanye (Score:3, Funny)
Hey Multics, I'm really happy for ya, and imma let you finish, but UNIX is the best multiuser operating system of ALL TIME. OF. ALL. TIME.
Re: (Score:2, Insightful)
I don't get it. Kanye is probably the single lamest meme since the beginning of the Internet. And it's a even more lame media "scandal" that "nipplegate". By an order of a magnitude, at least.
Badger badger looks like deep Chinese philosophy, written in the words of Shakespeare, in comparison.
Can we get back to "In Soviet Russia, car is analogy of YOU" jokes, please? :)
Re: (Score:3, Insightful)
Bah. Unix is just Multics with the balls cut off.
Stupid Comment (Score:4, Interesting)
Professor Corbato got so many things right on the GE645 that he, Gordon Bell, Maurice Wilks and Tom Kilburn were the generation of _REAL_ uber-architects in the 60/70 s; with Gene Ahmdahl and Fred Brooks doing the engineering heavy lifting, Chris Streachy and and the MIT school (Marvin Minsky and many others) did the philosophy.
Without their contributions the Computer Industry would never have started
Parent
I wish it never died! (Score:5, Interesting)
I had to use it at a large energy company in Europe in the 1980s. It was actually a fantastic system.
Unlike VMS and IBM's mainframe OSes, it was actually pretty friendly to use. This attribute has clearly rubbed off on UNIX. While we'd spend months teaching some users how to use VMS, they'd get Multics within a few days.
The programming environment was also fantastic. It didn't support as many languages as VMS, nor did it have language interoperability that was as good, but it still supported more languages than you'd fine on typical UNIX systems of that era.
That said, it still was a beast compared to UNIX. UNIX was sly and sleek, and thus supported lower-end hardware better than Multics could. And UNIX was more portable, which eventually made it more widely available.
Still, I look upon my Multics days with a fondness I didn't find again until the early 2000s, when I was able to get a position administering a network of FreeBSD servers.
Re: (Score:3, Interesting)
My recollection from the early 80s is that it had fantastic language interoperability, especially compared to other systems at the time.
On Multics you could pass variables from one language to another using full declarators allowing each language to inspect the value and type and more of each incoming variable, and act accordingly, and most of the Multics languages supported that in the compiler.
So PL/I could call into FORTRAN and on and on.
It's been a long time, I could easily be wrong about this, but that
Re: (Score:3, Informative)
If I need help, I type "help". If I need to copy a file, the command is "copy". If I want to rename a file, guess what the command is? You guessed it - "rename"
Plus, the uptime is tremendous, which is a VERY friendly attribute.
Re: (Score:3, Interesting)
Re:I wish it never died! (Score:4, Informative)
Essentially I think VMS had a shallow learning curve where Unix was pretty steep, but the shallow curve meant it took you longer to learn how to do really powerful things. The result was that it was faster to become a functional user with VMS, but you got to be a power user more quickly with Unix.
Parent
Um, wasn't bloated Multics the reason *WHY* . . . (Score:3, Insightful)
. . . Thompson and Richie decided to start a less ambitious project, called Unix?
Re:Um, wasn't bloated Multics the reason *WHY* . . (Score:4, Insightful)
Yeah, that "was the catalyst" line is great. You can come up with all sorts of equivalent expressions. Like "MS-DOS was the catalyst for Linux", or "horse manure was the catalyst for the automobile"
Parent
Re: (Score:3, Insightful)
It was a shameless CP/M knock-off produced by some hole-in-the-wall called Seattle Computer Products. MS bought it for $50,000 and proceeded to destroy the brilliant company known as Digital Research who developed the real thing (CP/M, later DR-DOS). DR also had a better GUI environment than early versions of Windows called GEM. I remember GEM fondly on my Atari ST. Ran it on a 286 for a while too.
Re: (Score:2)
That and they like what Multics offered but didn't have the hardware to support it.
Of course the Current version of Linux or BSD is probably more "bloated" then the last version of Multics.
Re:Um, wasn't bloated Multics the reason *WHY* . . (Score:4, Funny)
Of course the Current version of Linux or BSD is probably more "bloated" then the last version of Multics.
Sure, trade in a 40 year old operating system for two 20s, just because its a little bloated after giving you the best years of its life... Does this tty driver make my kernel look fat?
Parent
Re: (Score:2)
That is 250K SLOC. SLOC stands for Significant lines of code. Heck I have seen applications that rival that. Multics was small and looks pretty light. To bad it was impossible to have written it in c instead of PL/1. Had it been in c it might still be around and useful.
Multics predates c BTW so it couldn't have been written in c. It could have been ported maybe but by then we had Unix.
Re:Um, wasn't bloated Multics the reason *WHY* . . (Score:5, Insightful)
Parent
Re:Um, wasn't bloated Multics the reason *WHY* . . (Score:4, Insightful)
It turned out that UNIX, while inferior, was good enough for a lot of things...
It's amazing the number of times in computing where something, while inferior, was good enough for a lot of things and ended up dominating...
Parent
Re: (Score:3, Interesting)
"It's amazing the number of times in computing where something, while inferior, was good enough for a lot of things and ended up dominating..."
And it's also amazing the number of times that "inferior but good enough" product, after dominating the low-end field due to its small and lightweight design, then has to scale up by painfully and clumsily reintroducing all the "bloated" features of the higher quality and better-designed product. And then of course, makes the better product extinct not on its own mer
Re: (Score:3, Insightful)
"Bloated"? Oh, FFS. (Score:4, Funny)
It's true that Multics couldn't get out of its own way on a system with 64K of RAM, although it was technically supposed to run on that configuration. To work well, it really wanted several hundred K of RAM. Thank heavens we left it in the dustbin of history, replaced by the crisp, clean efficiency of Windows, or OS X, or Linux.
Parent
If memory serves... (Score:2)
Re: (Score:2)
Pretty sure it's a play on a different word:
Multics: multiple
Unix: one (latin: unus)
40 Years of Multics, 1969-2009 (Score:5, Interesting)
Re: (Score:3, Insightful)
Re: (Score:2)
Ken answered
Re: (Score:2)
KISS (Keep It Simple)
You'd think "Keep It Simple" would be abbreviated "KIS" ;)
Re: (Score:2, Informative)
KISS = Keep It Simple Stupid !
Re: (Score:2)
KISS (Keep It Simple Stupid)
Security in hardware (Score:3, Interesting)
When I worked at the Pentagon (HQAF DSC) one of the machines I developed on was a Multics machine. The really interesting part of the architecture to me was that it had, if I recall correctly, seven permission rings from ring 6 to ring 0 and each were implemented in hardware. The OS ran on a separate processor cluster for each ring, and system level work (kernel mode) was done all in ring 0.
I enjoyed learning PL1, and found it to be an easy transition to go to Unix/C. The multics box was a beast, and stuff ran like greased lightning.
Slashdot is bad with anniversaries (Score:5, Funny)
and they waited until november to tell you!
Re: (Score:2)
I hope that, at the very least, someone sent MULTICS a very nice "I'm sorry I forgot your birthday" card. Something cute, perhaps with sad puppies.
OTOH, MULTICS is 40. I know I wanted everyone to forget my 40th birthday.
Forty-year anniversaries -- what connection? (Score:3, Funny)
So I've got to ask, does this have any synchronic significance with the recent 40-year anniversary of Sesame Street [google.com] recently splashed around Google's main page?
Hmm... "This episode brought to you by the letters P, L, and I, and the number pi!" :)
Cheers,
If it was so good (Score:3, Interesting)
If it was so good, then why aren't there any emulators for it? Nearly every other old system has emulators, but not Multics.
Re: (Score:3, Interesting)
A few people are trying to get emulators going, the biggest problem is the lack of documentation of the peripheral hardware interfaces used on Multics capable systems. Check out the archives of the alt.os.multics news group.
Re: (Score:2)
Just don't look at any binary posts by 'uncle_buck'.
Re:If it was so good (Score:4, Interesting)
There are a few defunct projects on sourceforge and, I think, one live effort. I'm writing an emulator, but I haven't released any code yet.
CPUs are trivial. Systems can be hard.
Writing an emulator probably wasn't feasible before the sources were released two years ago. A few people started prior to that, but I can't imagine how.
Multics ran on somewhat complex hardware. In addition to the CPU, there were several other complex components including the system controllers, I/O multiplexors, and front end processors. Some of these were programmable or semi-programmable devices and much of the documentation is missing.
Now that we have compiler listings, assembly listings, a few documents, and a boot tape, the task seems feasible. Digging through the machine code on the boot tape and in the assembly listings partially makes up for the lack of decent documentation on some of the components.
My emulator is far from complete -- and it's almost 18K lines of code. It does read the boot tape and run about 2 million instructions, but crashes before finishing the boot process. The emulator doesn't yet know about disks or support instruction restart etc. There's a lot of work left to do.
I plan on cleaning up a few things and releasing it real soon now.
Parent
Re:If it was so good (Score:4, Funny)
Parent
Re:If it was so good (Score:4, Informative)
Parent
First introduction to viruses (Score:5, Interesting)
I have a feeling that this "feature" got removed very soon after it snarfed the Computer Unit Director's screen.
What was Multics used for? (Score:2)
I remember reading that Multics was going to be the OS used to provide computing-as-utility; everyone was just going to be able to use it. Did this plan ever pan out (was Tymnet and Telenet Multics-based?) Who, then, were the Multics customers and what, if anything, spawned from it (other than Unix and VisiCalc, as mentioned in TFA)?
K.T (Score:2)
Can you (Score:4, Insightful)
Can you really rate it as 40 years, since the last operational site was shut down in 2000? Shouldn't the timer stop when it dies, like with people? Do you give Columbus's age as over 500 years?
Re: (Score:2)
Must have been a sad life, after you asked your parents why they didn't celebrate your birthday, and they answered: "We will celebrate, when you're dead!" :P
Real-Time, too! (Score:3, Funny)
As Roger Needham [wikipedia.org] quipped, Multics was design for the real-time processes of geological processes.
The Michigan Terminal System... (Score:2)
...came first.
I was a Multics user and code developer (Score:4, Interesting)
I still miss the clean user interface (all command-line arguments meant the same thing, no matter which command was being executed) and fine documentation. But the GE645 / Honeywell 6800 architecture was never well-enough documented to make emulation feasible. And the descendants of Multics have implemented most of the features more-or-less. The world has moved on.
I've moved on, too. In 1978 I taught myself C; I've since learned and continue to program in C++, Java and Python, having discarded along the way Lisp, Pascal and Delphi.
And I use Windows mostly now. But my memory tells me that Multics was often faster for routine things like searching the file system. (Though the filesystem back then was only a few hundred MB.) And the processor back then was good for about 1 MIPS. Forget about color graphics. Animation? That was for cartoonists.
Anyway, this old-timer got a chuckle out of the article; thanks for posting the heads-up.
Re:Hmm, Multics and Sesame Street, both 40 years o (Score:4, Funny)
This episode of Multics was brought to you by the letters P and L and the number 1
Parent
Re:Hmm, Multics and Sesame Street, both 40 years o (Score:2)
Yes... That is what a Coincidence is. When 2 things that seem to have a connection while they don't