A brief walk down memory lane about Unix and its beginning:
The world today runs on Linux. Billions of mobile phones and servers today run Linux. But before Linux, there was Unix, and without it, Linux would not have existed today.
Unix's origin can be traced back to the moon landing days. In 1965, three famous institutions started a joint venture to create an operating system that could serve multiple users and share data and resources.
They are the famous Bell Telephone Laboratories, the General Electric Company and the Massachusetts Institute of Technology. This project or the joint venture is called "Multics" – an acronym for "Multiplex Information and Computing Service".
But, the project did not see much success. Unfortunately. Due to complexity and poor outcome, Bell Labs discontinued the project.
Ken Thomson from Bell Labs, who worked in Multics, started afresh. He started writing a new operating system for an ancient computer PDP-7 of Digital Equipment Corporation. Later, Dennis Ritchie joined, and they created a hierarchical file system, device files, command line interpreter and processes. This is how the Unix was born, named by another member of the Multics project – Brian Kernighan.
[...] However, most of the Unix code was in assembly language, making it hardware dependent. So, it was not portable.
So, the only way to make it portable and machine-independent is to write it in a high-level language so that the compile and corresponding object code can take care of the machine code conversion.
The great brains at that time solve the problem in a jiffy. Ken Thompson created a high-level language from scratch called "B". Then, he started the massive work to convert Unix assembly code to this newly created language. However, "B" also had some limitations, and Dennis Ritchie modified it to create the famous language "C", which makes Unix a truly portable operating system.
[...] I always think that programs/codes are thoughts of human beings. It's your logic, ideas are merely written in "IF-ELSE" blocks to achieve some real-world result.
There are, of course, lots of interesting details and drama left out of this brief summary (lawsuits! patents!). I've read a number of good history of science or math books, but I'm not familiar with any for computer science. Can anyone recommend any (assuming they exist)? [hubie]
(Score: 3, Interesting) by Beryllium Sphere (r) on Sunday September 11 2022, @07:00AM (2 children)
If my brain-wracking succeeds and I remember the title I'll post it. Good chance it was this one: https://www.goodreads.com/book/show/53011383-unix [goodreads.com]
(Score: 4, Interesting) by driverless on Sunday September 11 2022, @10:06AM (1 child)
Almost certainly Peter Salus' "A Quarter Century of Unix".
(Score: 2, Informative) by tbuskey on Sunday September 11 2022, @08:21PM
And his 'Casting the Net' by Peter Salus
Fumbling the Future by Douglas Smith and Robert Alexander
The Jargon File http://catb.org/jargon/ [catb.org]
https://www.bell-labs.com/usr/dmr [bell-labs.com] has many things from Dennis Ritchie
https://www.cs.princeton.edu/~bwk/ [princeton.edu] Brian Kernighan - he's written on the history
Bell Systems Technical Journal had an issue in 1978 about Unix - Robert Morris wrote about password vunerability & cracking
AT&T's journal had a Unix issue in 1984
Lions' Commentary on Unix 6th Edition - John Lions - was photocopies (samizdat) before SCO approved this publication
The Unix-Hater's Handbook - Simson Garfinkel
(Score: 4, Informative) by AnonTechie on Sunday September 11 2022, @09:03AM (1 child)
The Computers Nobody Wanted
My Years with Xerox
by: Paul A. Strassmann
The Soul of a New Machine
Book by Tracy Kidder
Computer: A History of the Information Machine traces the history of the computer and shows how business and government were the first to explore its unlimited, information-processing potential. Old-fashioned entrepreneurship combined with scientific know-how inspired now famous computer engineers to create the technology that became IBM. Wartime needs drove the giant ENIAC, the first fully electronic computer. Later, the PC enabled modes of computing that liberated people from room-sized, mainframe computers.
The Innovators: How a Group of Hackers, Geniuses, and Geeks Created the Digital Revolution
Fire in the Valley: The Birth and Death of the Personal Computer
Hackers: Heroes of the Computer Revolution
The Mythical Man Month by Frederick P. Brooks Jr.
Weaving the Web by Tim Berners Lee
The Cathedral and the Bazaar by Eric S. Raymond
https://en.wikipedia.org/wiki/Wikipedia:WikiProject_Computing/List_of_books_on_the_history_of_computing [wikipedia.org]
Albert Einstein - "Only two things are infinite, the universe and human stupidity, and I'm not sure about the former."
(Score: 3, Interesting) by canopic jug on Sunday September 11 2022, @10:42AM
I'd add to that list Rebel Code: Linux and the Open Source Revolution by Glyn Moody. It's quite good coverage of the beginning of Linux. He does discuss GNU and software freedom though, even if the main points covered are from the "open source" perspective.
Money is not free speech. Elections should not be auctions.
(Score: 4, Informative) by RamiK on Sunday September 11 2022, @11:46AM
VCF East 2019 -- Brian Kernighan interviews Ken Thompson [youtube.com] throws around a lot of the forgotten tidbits behind the what and why Unix and CS during those early years.
compiling...
(Score: 1, Interesting) by Anonymous Coward on Sunday September 11 2022, @03:33PM
https://dreamsongs.com/RiseOfWorseIsBetter.html [dreamsongs.com]
https://en.wikipedia.org/wiki/Worse_is_better [wikipedia.org]
See also: https://www.cca.org/blog/20140819-Multics-versus-Unix.shtml [cca.org]
(Score: 3, Insightful) by TheGratefulNet on Sunday September 11 2022, @04:18PM (2 children)
my first taste of unix was in the early 80's. in the past, I have worked at DEC, SGI and Sun. when linux 1.2 came out (the kernel) I got into linux. redhat mothers day and all that early stuff.
today, I am one of the greyhairs at the companies I work at. and I still say unix instead of linux, so that the kids at least get to hear that there's more unix out there than just linux.
I see lots of desktop kinds of stuff happening on servers and, even worse, embedded. talking about systemd, here, amongst other sins.
the new generation needs to understand a LOT more about unix's history and why things were done a certain way; and more importantly, why they stayed the same for SO long! that means a lot. the new init systems (blech!) are a perfect example of what we do NOT need on servers or embedded. and yet, systemd is all the new gen knows. they dont know any better so they pick this when making robots or cars or any other embedded sys.
when people like me retire and there's no one left to remind the younger ones - software and systems are going to get even worse than they are now. just be prepared. the lack of good understanding of unix (or linux) is just not there in today's sw engr's. they should know stuff, but they dont. I'm on the interview chain, most often, and they just dont know much about linux, not even the basics. and these guys are writing code that ships on 'things', these days.
"It is now safe to switch off your computer."
(Score: 2) by mcgrew on Sunday September 11 2022, @06:26PM
Gnu's Not Unix.
When I was first hired by Illinois, we had a Unix PC, I believe it was an HP 286 IIRC. They were trying very unsuccessfully to get all the states in the Fed's mid-western block's computers to communicate for child support collections. The programmer was paying more in child support than I earned, and I was supporting my own two kids. There was just no way to fit that much data into two megs of memory. Lots of federal cash was wasted, but I now have a pension because of it.
I never could figure out why they were trying to do it on a PC when they all had big iron, which all could run Unix on. All the states involved did and I doubt they all had PCs, it was 1988.
If you're wondering why they didn't use the internet, it was privacy laws; the internet was never secure.
Now your phone is more powerful than their mainframes were.
Carbon, The only element in the known universe to ever gain sentience
(Score: 3, Interesting) by tbuskey on Sunday September 11 2022, @08:51PM
I lived that era too. I started w/ DOS and was introduced to Usenet on Unix in the late 80s at college. That led me to pursue learning Unix.
I had a 286 and installed all ports of Unix tools including the GNUish ports. I learned vi with Stevie, Calvin and Elvis. Emacs with Freemacs. I bought all the Unix books by Kernighan, Ritchie, Thompson and Pike and tried to work through them with Turbo C. I even learned a bit of yacc on DOS.
Eventually I bought Minix 1.3 for XT and had to patch it to work with the AT hard drive. I had email and was able to download all the patches to 1.5 with uuencode and recompile everything.
When I bought a 486 in the early 90s, I tried Jolitz' 386BSD from the Dr. Dobbs Journal & it didn't run. So I downloaded SLS Linux 1.0.2 w/ 0.92pl5. When SLS didn't fix things (like permissions on directories!) someone copied the structure and package format (all GPL!) to fix it. Some didn't like it, but it was nice having Slackware and everyone switched to it from SLS, including me.
I eventually landed my 1st sysadmin job learning SunOS, Irix, HP-UX, Solaris 2.1 and compiling all the GNU suite for all the platforms. I learned networking and saw the intro of Mosaic (Unix only at 1st) and had internet at work.
I later went to the 1st FSF conference, saw Linus at GNHLUG. I had other sysadmin jobs, usually focusing on Sun systems. I didn't get to use Linux (& OpenBSD) professionally until 2001.
I do call it Linux. It's not Linux but these days, it's the standard. I remember porting shell scripts from csh on SunOS to sh/ksh on Ultrix, Solaris, HP-UX, Irix, OSF/1 (or Digital Unix or Tru64) and having to work around missing features (Ultrix /bin/sh doesn't have functions!). Formatting hard drives, low level hardware, raid were different on all of them as well. We used gnutar because tar only allow 127 characters in a path/filenames! It worked a bit different on each Unix too.
Nowadays, it's Linux. The main variations today are Red Hat and Debian(Ubuntu) and they're much closer than the Unixen ever were. I'm glad to have the consistancy.
(Score: 3, Informative) by istartedi on Sunday September 11 2022, @07:02PM (6 children)
I know I've seen better ones googling for "Unix family tree", but this looks like a decent overview [i.redd.it] that gives you an appreciation for all the systems the original Unix spawned, and the times in which they were relevant. My first exposure to *NIX came from the Solaris column in the early 90s, and later it was interesting to see what did and didn't cross over to Linux and other *NIX. I haven't touched a Solaris box since 1997. Based on the chart, it's probably still around!
Appended to the end of comments you post. Max: 120 chars.
(Score: 0) by Anonymous Coward on Sunday September 11 2022, @07:48PM
Looking at that, it is interesting to see how long linux was in the 2-series.
(Score: 2) by RS3 on Sunday September 11 2022, @07:58PM (4 children)
That's a pretty cool chart. I'm hesitant to mention this (for what should be obvious reasons) but not on the chart is credit to M$ who were responsible for Xenix [wikipedia.org]. I'm not sure if they did more harm or more good.
Way back in the late '80s when I was a tot (ahem) I got very interested in Unix. I guess because it brought "real" computing to a computer I could afford (and carry!). Unix proper was way expensive, so that wasn't viable.
Somehow somewhere early 90s I got a used hard drive that had a 286 Xenix (?) and that was _very_ interesting to run. I had an extremely fast '286 (24 MHz IIRC) so it screamed.
Company I worked at was doing various C/Unix stuff and somehow I ended up with a set of Xenix install disks. A BBS I was using had not protected all of their files, and I was able to download FoxPro for Xenix and a couple of needed libraries, and it worked, and I could do something useful on my Xenix system. I was already doing FoxPro stuff, so it was a great learning tool.
I didn't have the X install disks at the time, so everything was CLI. I eventually got some X install disks, but I don't think I ever tried installing it.
Also not on the chart: at some point I bought Coherent [wikipedia.org] which was awesome and cheap, but around then Linux came out, and (sadly but inevitably) I lost interest in Coherent.
(Score: 4, Interesting) by istartedi on Sunday September 11 2022, @10:44PM (1 child)
That first exposure for me was at university computing labs, with networked Sparc Stations and X. What an intro! It definitely spoiled me. I remember trying an early version of Windows running on a 486 in another lab, and thinking, "Wow, who would want to use that?". I couldn't even boot it in a reasonable time, and when it came up I believe it was thrashing the disk or something. It seemed unusable. It may have been a botched install, or perhaps not enough RAM; but first impressions matter. Then it seemed like they fixed it all by Windows 95, and that was my first Windows OS. In between my "look in to the future" X experience and Win 95, I had a transitional 286 running DOS, which I primarily used for text-based BBS and later Internet. Good ol' green screen with applications taking over graphics for single tasks, I thought it was all MS was good for. Architecturally it seemed like Win 3.x was just that--a glorified DOS application. I never actually owned one of those, I just used it in some offices and when I saw "startx" on Linux I was like, "Oh... so it's their WIN". Remember the dire warnings about how the wrong X settings could ruin hardware? Good times. Not sure how true it was, I just made sure to RTFM carefully when setting it up because that can't hurt.
Oh this reminds me of another first impression from those Solaris days that led me in the wrong direction: Gopher was great, WWW was awful. This was entirely due to the fact that Gopher was available on the X stations and W3 was a relatively new project that had a lot of buzz, but our only available client was for DOS based terminals so it was basically a Lynx browser (if not the actual Lynx browser). And of course USENET ruled. Gopher, USENET, and X. What more do I need? To be 25 again, that's what!
Appended to the end of comments you post. Max: 120 chars.
(Score: 3, Informative) by RS3 on Monday September 12 2022, @12:52AM
I was at uni in the late 80s, and we were a big IBM shop (390), so it was all text-mode. The school had DEC- I used to use a VAX a good bit. There were Sun, SGI, other *nix workstations but I never had reason to use them. My first GUI was an original Macintosh, late 80s, at a tiny research company while at uni. I remember immediately taking to the GUI, mouse. I mostly used it to write BASIC code. IIRC it had only 1 floppy, no HD, so it did a lot of popping the floppies in and out. Then they got a PC XT, and I got to add extra RAM, etc., fire it up. I don't remember if it had an HD, but probably. I graduated and left town.
Around then I got a 386 with 4 MB RAM (wow!) for cheap, and I've always been a tuner, so I had Win3.1 running really well. Kind of ironically I largely used it to run multiple DOS logins because most of my apps were full-screen text DOS apps, including WordPerfect, Turbo C, etc.
As far as the hardware damage: the best I know- I am an EE and tech and did years of hardware repair including CRT TVs and monitors- some of the early CRT monitors relied on the incoming horizontal sync signal to set the horizontal sweep frequency. IE, there was an on-board oscillator, but it would sync-lock to whatever you sent to it. In some cases, the wrong frequency would cause big problems with excessive current or voltage due to tuned circuits being forced to run at an incorrect frequency. So playing with X screen resolutions and signal timings could maybe get you into trouble. You'd hope the CRT circuit designers would take these things into consideration, but it's possible some did and some did not, resulting in some smoke-letting.
(Score: 2) by Nuke on Monday September 12 2022, @08:56AM (1 child)
Well Xenix is there in the chart, but the chart generally does not give credits to particular companies (eg in the case of AIX) unless the company name is part of the OS name (eg in the case of HP-UX).
My understanding is that back in the early 80's MS saw Xenix as their future and that the can of worms that was DOS was only a stop-gap. We saw where that went.
(Score: 2) by RS3 on Tuesday September 13 2022, @06:16PM
> Well Xenix is there in the chart, but the chart generally does not give credits to particular companies (eg in the case of AIX) unless the company name is part of the OS name (eg in the case of HP-UX).
Yeah, I partially agree, it's not consistent. What caught my eye is they gave credit to SCO, but not M$ right above. Not sure who is worse though.
Also missing: SGI's Irix; SunOS (Solaris is mentioned); DEC Ultrix, OSF/1, Tru64; the many *nix-like, some even POSIX-compliant RTOS like QNX, VxWorks, and many more.
Bit of rant: SCO has the gall to call their OS "OpenServer".
(Score: 4, Interesting) by Thexalon on Monday September 12 2022, @02:32AM
The simple fact of the matter is that between Unix and C, there's a good argument for Dennis Ritchie being one of the most influential people of the last 50 years. His work is basically what makes everything remotely resembling a computer tick, and making computers tick has been one of the defining changes from the late 20th to early 21st century.
Is it one of those things that the people who think of themselves as impactful will pretty much never even consider.
The only thing that stops a bad guy with a compiler is a good guy with a compiler.
(Score: 4, Interesting) by SomeRandomGeek on Monday September 12 2022, @06:01PM (1 child)
There is this great lesson that every computer science student is expected to absorb when learning about all these historical systems. The Multics operating system was written in the PL/I language. Both Multics and PL/I were ambitious failures. Almost every feature of every O/S since can be traced back to Multics. Many many language features can be traced back to PL/I. They were tremendously influential ancestors of all our systems today. On the other hand, they were both buggy, confusing, and resource hogs. And they were quickly replaced. It makes their immediate successors stand out for their pragmatism. C and Unix cherry picked the best features of PL/I and Multics, and ignored the rest. Consequently, they were not just influential. They were successful. Both are still in widespread use today.
(Score: 2) by RS3 on Tuesday September 13 2022, @06:25PM
Wow, thanks, that's awesome. In the late 80s at uni I did some PL/C [wikipedia.org], which (as you know) was the later academic implementation of PL/I. I can't remember how much I did, but I don't recall having any problems.