UNIX 50 A Personal History By Gilbert Detillieux
#!/UNIX @50 ® (A Personal History) By Gilbert Detillieux, Dec. 2019 MUUG Meeting
About me… • Student at U of Manitoba from 1979 to 1983 • First exposed to UNIX in 1979, worked on it starting in 1980 • Worked in industry from 1983 to 1989, trying to focus on UNIX support • Co-founded TUUG ca. 1988 (MUUG in 1992) • Began current job as a Sys. Admin in October 1989 (30 years ago) • Focused on UNIX primarily for 40 years • Personal bias reflected in this history
Source: http: //www. quickmeme. com/meme/356 f 74
August 1969 Let’s start at the beginning… (or Epoch? ) • Bell Lab pulls out of Multics project (with MIT and GE) • Ken Thompson works on new OS for little-used DEC PDP-7, assembler & editor • With Dennis Ritchie & others, implement hierarchical FS, device files, shell & utilities • Modelled on Multics features, but simplified • In 1970, Brian Kernighan coins the name Unics, later spelled as UNIX. Source: https: //en. wikipedia. org/wiki/History_of_Unix https: //www. youtube. com/watch? v=EY 6 q 5 dv_B-o
The PDP-7 Manufacturer Digital Equipment Corporation Type Minicomputer Release date 1965; 54 years ago Introductory price US$72, 000 (equivalent to $572, 427 in 2018) Units sold 120[1][2] Units shipped 120[2] Memory 4 K words (9. 2 KB) (expandable up to 64 K words (144 KB). )[1] 8 Kw (18. 4 KB) at Bell Labs Storage Paper-tape and dual transport DECtape drives (type 555) 1 MB disk (RB 09 same as an RD 10) Display Printer Input Keyboard Platform DEC 18 -bit Sources: https: //en. wikipedia. org/wiki/PDP-7 http: //bsdimp. blogspot. com/2019/07/the-pdp-7 -where-unix-began. html
1970 to 1979 From Infancy to Portability… • • OS rewrite for PDP-11 in 1970 Name officially becomes UNIX Versions 1 -4 written in assembler K & R C compiler introduced in V 2 V 4 rewrite in C in 1973 V 5 licensed to educational institutions in 1973 V 6 first licensed to companies in 1975 @ US$20 K! V 7 is first “portable” version, in 1978 • First Bell Labs port is to Interdata 8/32 • UNIX/32 V for DEC VAX then released Source: https: //en. wikipedia. org/wiki/History_of_Unix
PDP-11 • 16 -bit word length • Orthogonal instruction set & general-purpose registers • Memory-mapped I/O • Vectored interrupts, 4 priority levels • Unibus architecture • Q-bus for later LSI-11 & Micro. PDP-11 • Limitations led to development of VAX-11, 32 -bit architecture Source: https: //en. wikipedia. org/wiki/PDP-11
Source: https: //www. tuhs. org/Archive/Distributions/Research/Dennis_v 5/v 5 man. pdf
Source: https: //www. tuhs. org/Archive/Distributions/Research/Dennis_v 5/v 5 man. pdf
Source: https: //www. tuhs. org/Archive/Distributions/Research/Dennis_v 5/v 5 man. pdf
Source: https: //www. tuhs. org/Archive/Distributions/Research/Dennis_v 5/v 5 man. pdf
Man Pages by Version V 1 V 5 V 6 V 7 Commands(1) 61 81 81 136 System Calls(2) 34 41 43 47 Subroutines/libc(3) 14 36 39 56 Special Files(4) 7 18 18 16 File Formats(5) 9 13 16 17 User-maintained/games(6) 10 30 25 16 Miscellaneous(7) 18 5 4 6 System Maintenance(8) -- 23 27 7 Sources: https: //www. tuhs. org/Archive/Distributions/Research/ https: //9 p. io/7 th. Ed. Man/
USENIX The “UNIX Users Group” • Founded in 1975 • Had to change name to avoid trademark infringement • Based out of Berkeley, CA • Publishes ; login: magazine • Sponsors several annual conferences • Fairly academic focus Sources: https: //en. wikipedia. org/wiki/USENIX http: //static. usenix. org/publications/login/whysemi. html
BSD Berkeley Software Distribution • Initial release in 1978 • Originally called Berkeley Unix • 1 BSD based on Bell Labs (Research) UNIX V 6 • An add-on, rather than a full OS on its own • Included a Pascal compiler, ex editor • 30 copies licensed • 2 BSD released in May 1979 • Added vi (visual editor) and the C Shell • 75 copies licensed (including one to U of M) • 3 BSD released at end of 1979 • Based on UNIX/32 V, added full VM support for VAX Sources: https: //en. wikipedia. org/wiki/Berkeley_Software_Distribution https: //en. wikipedia. org/wiki/History_of_the_Berkeley_Software_Distribution
1980 to 1989 From Curiosity to Viability… • AT&T announced UNIX System III, based on V 7 and PWB/UNIX, in 1981 • 1983 anti-trust case against AT&T leads to Bell Labs break-up, but allows unrestricted commercial licensing • SVR 1 released later in 1983 • Research UNIX V 8, V 9, V 10, leading to Plan 9 • Richard Stallman starts GNU Project in 1983 • Andrew Tanenbaum releases MINIX in 1987 • UNIX & variant (clone) ports to 16 arch, 60 vendors, including Xenix & PC/ix on 8086 (& Apple Lisa on 68000) • mainframe UNIX: Amdahl UTS in 1981, IBM IX/370 and VM/IX Sources: https: //en. wikipedia. org/wiki/History_of_Unix https: //en. wikipedia. org/wiki/MINIX
1980 to 1989 From Curiosity to Viability… • BSD developer Bill Joy co-founds Sun Microsystems in 1982, creates Sun. OS & Sun workstations • 4 BSD adds job control, fast file system, sockets & TCP/IP stack • X Window Release 1 in June 1984 • X 11 R 2 (X Consortium release) in Feb 1988 • X 11 R 4 adds XDMCP, twm, & more in Dec 1989 Sources: https: //en. wikipedia. org/wiki/History_of_Unix https: //en. wikipedia. org/wiki/X_Window_System
1980 to 1989 The UNIX Wars, Part 1: • AT&T Sys. V and BSD diverge, with incompatible system calls, libraries, file system standards • AT&T responds with SVID in 1985 • X/Open (Euro vendor) consortium work toward open system spec (eventually SVID) • IEEE works with others on POSIX spec in 1988 • AT&T in 1988 works with • SCO to merge Sys. V and Xenix into System V/386 • Sun to merge Sys. V, BSD/Sun. OS and Xenix into SVR 4 Source: https: //en. wikipedia. org/wiki/History_of_Unix
/usr/group A. K. A. Uni. Forum • Founded in 1980 • Industry association dedicated to the "promotion of the UNIX operating system“ • Independent from, but collaborated with USENIX • Changed name to Uni. Forum in 1989 • Worked with IEEE on POSIX standards • Faded into obscurity by the mid/late-2000’s Sources: https: //www. usenix. org/about/history/international https: //books. google. ca/books? id=-in. F 2 Gv 9 w 68 C&pg=PT 82
The Birth of MUUG Technical UNIX™ User Group • /usr/group/winnipeg formed in 1985 • • Heavy focus on UNIX advocacy and marketing Affiliated with /usr/group/canada Crashed and burned in early 1986 Last 3 attendees at (final? ) meeting work on alternative group • Conduct UNIX user survey, trying to meet user needs • TUUG begins very informal monthly meetings in fall 1986, with tech. /education focus • Name notation, newsletter, formal membership by fall 1988 Source: https: //muug. ca/about. html
1988: We Broke the Internet, pt. 1 The Morris Internet Worm • Written by Robert T. Morris in 1988 • Exploited UNIX vulnerabilities: • Debug mode in sendmail • Buffer overrun in fingerd • Weak security settings in rexec/rsh • First person indicted under Computer Fraud and Abuse Act (1986), in July 1989 • Convicted in 1990 • Clifford_Stoll writes “The Cuckoo’s Egg” in 1989, based on capture of Markus_Hess Source: https: //en. wikipedia. org/wiki/Robert_Tappan_Morris
1990 to 1999 From Open Standards to Open Source… • Linus Torvalds releases Linux in 1991 • AT&T and Sun form UNIX International, as competitor to X/Open’s OSF, part ways soon after • UI & OSF merge in 1994, abandon OSF/1 • OSF/1 rebranded as Digital UNIX in 1995 • Compaq buys out Digital in 1998, Tru 64 UNIX rebranding • AT&T sells SVR 4 rights to Novell • Unix. Ware merges Net. Ware with SVR 4 • UNIX trademark transferred to X/Open in 1993 • X/Open merges with OSF into Open Group in 1996 Sources: https: //en. wikipedia. org/wiki/History_of_Unix https: //en. wikipedia. org/wiki/Tru 64_UNIX
The Evolution of MUUG Manitoba UNIX® User Group • Group continues to grow as Internet becomes popular • Group’s executive meets to formalize by-laws (the “Shoal Lake Accord”), summer 1991 • Adopt current structure with board and officers • Name changed to reflect broadening membership in May-June 1992 • MUUG Online Network Access (MONA) start June 1992, website by September 1994 • Membership soars to peak of over 200, settles to ~60 Sources: https: //muug. ca/about. html https: //muug. ca/pub/muuglines/pdf/tuug 9205. pdf https: //muug. ca/pub/muuglines/pdf/muug 9206. pdf
1990’s: We Broke the Internet, pt. 2 The Rise of the Commercial Web… • • • . COM bubble strains DNS infrastructure Graphic-intensive web sites break HTTP/1. 0 More buffer overrun exploits Kevin Mitnick IP spoofing attack in 1994 Mitnick sentenced to 5 years in 1999 (4 already served) • ISC proposes use of DNSSEC in 1998 Source: https: //en. wikipedia. org/wiki/List_of_security_hacking_incidents
2000 to 2009 From Elation to Consolidation… • SCO sells UNIX assets to Caldera, which renames to The SCO Group • SCO Group sues Novell, IBM, others in 2003 • Court rules in Novell’s favour in 2007 • Ruling overturned in 2009, Novell wins jury trial in 2010 • Lawsuit against IBM dismissed in 2016 • HP buys Compaq in 2002, winds down Tru 64 by end of 2004 • Sun releases Open. Solaris, including ZFS, in 2005 • Sun buys My. SQL in 2008, Oracle buys Sun in 2009 • mac. OS, Solaris, HP-UX, AIX remain in market • Linux dominates in open source Sources: https: //en. wikipedia. org/wiki/History_of_Unix https: //en. wikipedia. org/wiki/Sun_Microsystems
2000’s: We Broke the Internet, pt. 3 Dan Kaminsky and the DNS Vulnerability • In 2008 Dan Kaminsky discovers serious DNS flaw • Foreseen by Dan Bernstein in 2003 • Lack of port randomization can lead to DNS cache poisoning • Kaminsky holds press conference July 2008 • Details to be revealed at Black. Hat conference a month later • Leaked details force rushed release of patches Source: https: //www. schneier. com/blog/archives/2008/07/the_dns_vulnera. html
2010 to 2019 From Obscurity to Ubiquity… • US & EU approve Oracle purchase of Sun in 2010 • Oracle drops Open. Solaris, releases Solaris 11 • Also continues to support Oracle Linux • RIP Dennis Ritchie, Oct 12, 2011 • Linux turns 20 in 2011 (UNIX is 42!) • Raspberry Pi released in 2012, for US$35 • HP commits to supporting Linux as alternative to HP-UX and Windows in 2012 • Windows Subsystem for Linux added to Win 10 in 2016; Open. SSH client & server added in late 2017 • Toyota adopts Automotive Grade Linux in 2018 • IBM buys Red Hat in late 2018 Source: https: //muug. ca/pub/muuglines/
2010’s: We Broke the Internet, pt. 4 From Security to Vulnerability? • Heartbleed, POODLE & 6 other Open. SSL vulnerabilities, all in 2014 • “Open. SSL is not developed by a responsible team. ” – Theo de Raadt • Shellshock (GNU Bash) remote execution, also in 2014 • FREAK SSL/TLS (Factoring RSA Export Keys) in 2015 • GHOST (Glibc gethostbyname stack buffer overflow), in 2015 • VENOM vulnerability in QEMU, Xen & KVM, in 2015 • Row Hammer DRAM vulnerabilities in 2013 -2015 • NTP DDo. S in 2013, Mit. M bogus data in 2015 • Dirty Cow (Linux kernel) privilege escalation, in 2016 • Meltdown & Spectre in 2017 • Wiki. Leaks publishes CIA Vault 7 Hacking Tools, in 2017 Sources: https: //muug. ca/pub/muuglines/ https: //www. darkreading. com/vulnerabilities---threats/the-10 -worst-vulnerabilities-of-the-last-10 -years/d/d-id/1325425
Data Pipeline Source: https: //xkcd. com/2054/
Stack Source: https: //xkcd. com/2166/
Five Decades of Hardware Year 1969 1979 Model PDP-7 Bits/ word 1989 2009 2019 PDP-11/45 Micro. VAX- Sun Ultra 11 1/140 Sun Fire X 4200 Dell PE R 730 xd 18 16 32 32 64 64 RAM 4 -64 Kw 9 -144 KB 256 KB ½ core 13 MB 16 max 224 MB 12 GB 64 GB Storage 1 x RB 09/ RD 10 1 MB 4 x RK 05 3 x CDC SCSI 2. 5 MB/ea Wren VI 63 GB tot 680 MB/ea IDE RAID 5 5 TB tot SAS RAID 6 11 TB tot OS Unics (V 0) UNIX V 6 Cent. OS 5 Scientific Linux 6 Ultrix-32 1999 Solaris 7 Sources: https: //en. wikipedia. org/wiki/PDP-7 and Gilbert’s own memory/notes
Raspberry Pi Year 2012 2017 2019 Model B Rev 2 Zero W 4 Bits/ Cores 32/ 1 64/ 4 v 8 RAM 256512 MB 1 -4 GB Clock 700 MHz 1 GHz 1. 5 GHz SD slot SD, SDHC micro. SD Price $35 US $10 US (1 GB RAM) Source: http: //socialcompare. com/en/comparison/raspberrypi-models-comparison
UNIX V 7 on a PDP-11, on a Pi Emulation: The Cure for Nostalgia • sudo apt-get install simh • wget https: //www. tuhs. org/Ar chive/Distributions/Research /Keith_Bostic_v 7/v 7. tap. gz • gunzip v 7. tap. gz • pdp 11 • (etc. ) Sources: https: //obsolescence. wixsite. com/obsolescence/pidp-11, https: //xkcd. com/2221/ https: //www. linkedin. com/pulse/adventures-raspberry-pi 3 -1 -running-unix-v 7 -emulated-pdp-11 -chris-tham
2020 to 2038, and Beyond? The UNIX Legacy • • Portability and vendor independence Open standards & accessible source code Scalability (embedded to mainframe) Hierarchical, mountable file systems • link/unlink (& symlink) concepts • device special files (hardware and virtual) • pipes, sockets, streams as files (generic I/O) • Small, modular commands • Programs as filters, with I/O redirection • Pipelines and shell scripts build complexity Sources: https: //www. bell-labs. com/usr/dmr/www/retro. pdf https: //www. cis. upenn. edu/~lee/07 cis 505/Papers/ritchie-bstj 84. pdf
2020 to 2038, and Beyond? The UNIX Philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface. Doug Mc. Ilroy, as paraphrased by Peter H. Salus in A Quarter-Century of Unix (1994) Source: https: //en. wikipedia. org/wiki/Unix_philosophy
Source: https: //www. digi. no/emne/unix
Except where otherwise noted, all content in this presentation is licensed under a Creative Commons “Attribution-Share. Alike 2. 5 Canada” License. http: //creativecommons. org/licenses/by-sa/2. 5/ca/deed. en_CA UNIX is a registered trademark of The Open Group
- Slides: 37