Unix, Linux and BSD History |
The Beginnings of Unix |
Dave Tyson writes: 2) The beginnings of Unix ------------------------- 1969 - Version 1 - Thomson & Richie Thomson & Richie worked at AT&T Bell Labs - a research environment. The labs had worked on multics a large and unsuccessful timesharing system. Both fed up with it and decided to write a simple O/S to run games/space claculations on a spare PDP-7. Called the O/S unics later changed to unix to fit in two words 1972 - Versions 2/3/4 - The move to C unix ported to a PDP-11 and some text processing programs written (runoff). Started to be used for internal documentation and eventually became a semi-offical project. The labs were also doing work on a new language called C (a varient B itself derived from BCPL) and so the second edition was written in C. Work progressed thru third and fourth editions adding extra features e.g. pipes etc. 1975 - Versions 5/6 distributed The 'sixth' edition was widely circulated to universities for the cost of the media and under a license agreement. 1977 - BSD version born Berkeley took the version 6 code and started adding additional features which were maed available to other holders of a unix license 1980 - Commerical Licensing Several bits of application software, e.g Programmers workbench were added and at this point AT&T was split up and what became USL produced version seven - marketed commercially at $20000 for a single user license with a further $8000 per extra user. Universities still got it at cost. Version seven was designed to be truely portable and ran on PDP-11, interdata and VAX (32bit) systems 1983 - System V appears USL continue to develop unix and write their own proprietry networking code - system V Transport Layer. This is used as a base by several manufacturers and eventually supercedes the BSD code base.
The Berkeley Distribution |
Dave Tyson writes: 3) The Berkeley Distribution ---------------------------- Berkeley Computer Science Department A group of individuals who saw the unix O/S as a solution to all their problems. Current proprietry O/S could not support the number of users on the systems they had and were expensive. Unix was free and could be modified. Countless students could develop software for it as part of their B.Sc/M.Sc/Ph.D dissertations. Development of the early versions 1977 - Berkeley released 1BSD - added extra functionality to unix in the form of vi/ex editor and pascal language - distributed the mods freely to anyone who had a license - 1BSD/2BSD ran on PDP-11 and code evolved with bits of version seven into 3BSD which ran on vaxes and added virtual memory. 1986 4.3BSD released Further improvements and a contract from DARPA led to the addition of networking and the 4BSD developments - 4.1BSD/4.2BSD/4.3BSD (1986). Each release included more device drivers and further refinement of the internal structures and performance. The 4.1BSD release was taken by Bill Joy and formed the basis of SunOS. This tracked all the new BSD releases up to 4.3BSD. Futher development led to the Tahoe release followed by Reno release. At this point the source code only contained 5-10% of the original AT&T code. 1990 Net/2 Release distributed Berkeley released all their source code as the Net/2 release. This was freely available as it was reputed not to contain any AT&T code and so a license was not required - Berkeley continued to develop BSD and released 4.4BSD in early 1994. Several people decided to write the missing code from scratch, Bill Jolitz ported the net/2 code to the PC to produce 386BSD and Berkeley Software design used this in conjuction with their own code to produce a commercial product BSDI Unix. 1992 AT&T lawsuit started AT&T took a dim view of these unix clones and took Berkeley and BSDI to court in 1992. The case dragged on and USL were taken over by Novell. By 1994 it was settled - the NET/2 release had to be withdrawn - but 4.4BSD could be freely distributed - less a few files. 1994 4.4BSD-lite released Once this was out the CSD department shutdown their development permanently. A few of the main developers had already moved to BSDI.
Minix |
Dave Tyson writes: 4) Andy Tanenbaum and Minix --------------------------- Andy Tanenbaum was a lecturer in computer science in Holland. Used to teach modern operating systems course. The course notes eventually evolved into a book. He wanted to encourage practical experimentation and so wrote a unix-like O/S to run on the IBM PC The book, Operating Systems: Design and Implementation came out in 1987. With the book came a few floppy disks which could be loaded on a PC (8088 ->) and gave the user a unix like OS complete with a compiler and libaries etc. Minix was supplied in source form, but the copyright is held by the publishers, Prentice-Hall. The idea of minix was to make it portable to a wide range of systems but it had to run on simple ones as well. This was somewhat self defeating and limited its scope. The initial version has been changed over the years and the latest edition of the book comes with a CDROM of Minix 2.0. This is quite advanced and has TCP/IP networking and up to 3 simultaneous users per machine !!!
Linux |
Dave Tyson writes: 5) Linus Thorvalds and Linux ---------------------------- mid 1991 - work to enhance minux O/S Linus was a Computer Science student at Finland who wanted to teach himself about the 386 chip and its capabilities. He wanted to investigate multitasking. The original Linux was just a program which ran under minix and switched between two tasks. One printed AAAA and the other BBBB. Linus decided that minix was too restictive as it was designed to run on very simple systems (8088) and this limited its scope. He set about writing Linux from scratch using parts of minux as a guide, the new operating system was to comply with Posix as far as possible. Oct 1991 Linux 0.02 released The was the first release which really ran sucessfully on a 386 based P.C. It had no floppy disk support, no virtual memory and needed minux to compile it. Development continued and by December Linux booted up to the BASH shell. Several people were working on scsi support. The O/S had a license which stated that it was free and no money could swap hands for it except media costs. Floppy support was added and minux was no longer needed to boot it. 1992 kernel/utilities working - GNU license Further developments were covered by the GNU public license and the pace of development increased. Support for lots of new devices appeared, X was ported to it and several distributions appeared. The Manchester Computer Centre and Slackware distributions proved popular. Linux packaged in lots of ways now: redhat, caldera debian,infomagic, turbo, redhat.... Each comes with pre-packaged software e.g: X, editors etc and a slightly different installation scheme. 1994 code freeze of version 1.0 This was announced so that a version could be released with most of the bugs fixed. Linus decreed that even sub releases would be stable (1.0.?) and odd sub-releases development (bleeding edge, 1.1.?). Popularity increased. Comes with its own bootstrap manager LILO. Occupies two logical DOS partition (out of 4), one for main linux area, other for swap O/S ported to SPARC/MIPS As well as the PC base Linux has been ported to the SPARC and MIPS architectures. These developments have bee merged into the LINUX source tree. Linux Developers have been given unprecedented access to hardware and documentation by SUN and SGI. Current stable release 2.0.? This is the current recommended release base. All the networking bugs are reputed to be fixed in these releases. Linux Documentation Project Virtually everything is documented. Lots of HowTo documents tell you how to do simple and complex tasks. Linux can be installed by a unix neophyte.
The BSD Operating Systems |
Dave Tyson writes: 6) 386BSD and Bill Jolitz Bill Jolitz released 386BSD 0.0 in June 1992. This release was very flaky and hardily useable. By July 1992 release 0.1 was available. This ran on a standard 386 PC with > 2m of ram, 40M disk. It supported the main PC harddisks (MFM, ESDI, RLL, IDE), floppy drives, some ethernet cards, com ports and most displays. There was some support for SCSI devices. Occupies one primary partition only, with is nice if you want to have several other O/S. Have to use a separate boot manager to allow multiple booting of DOS and NetBSD. 386BSD came on a LOT of floppy disks: 33 for the base, 2 for the primary bootstrap and a further 13 if you wanted the source code !! Very nasty if the NetBSD partition is not labelled x'A5' Of course there were bugs and some patches appeared thick and fast. Bill Jolitz seemed to give up at this point and so a few hackers (Terry Lambert et al) produced a patch kit and software to install patches. Bill promised a new release with all bugs fixed all, all devices supported and fully documented in a forthcoming book. After a wait of 6 months no-one believed him and a few hackers in Berkeley decided to develop the system further. Out of this came NetBSD 0.8. This was followed by 0.9. And then there were two... Some of the NetBSD team decided that the OS should be ported to other hardware in the spirit of 4.3BSD. They set about splitting Bill Jolitz code to produce machine dependant and independant bits. This annoyed some other members of the team as they wanted to intergrate some of the latest PC hardware and a rift developed. As a result the FreeBSD operating system was born and its purpose in life was to be 'The best PD unix on PC'S'. FreeBSD 1.0 was released in Oct 1993. And then there were three... A rift in the personalities of the NetBSD core team led to the huffy withdrawl of Theo de Raadt. He setup OpenBSD to compete directly against NetBSD.