COMP421
Unix Environment for Programmers
Lecture 01: History____________________________________________
Jeff Wiegley, Ph.D.
Computer Science
jeffw@csun.edu
08/29/2005
“...the number of UNIX installations has
grown to 10, with more expected...”
–Dennis Ritchie and Ken Thompson, June 1972
|
1
The beginning________________________________________
- Written at Bell labs (Now AT&T Bell Labs) in 1969.
- by Ken Thompson and Dennis Ritchie.
- Not designed as a commercial operating system.
- Designed as a “hacker’s toolset” for programmers.
- An early release was called PWB (Programmer’s work bench).
- Written for their own use and for friends and coworkers.
2
Early capabilities:____________________________________
- First version ran on a PDP 11/20
- Had simple versions of fork(), ed and roff
- Used for document processing.
3
Growth by extension:________________________________
- Utility programs written by various people.
- As individual needs arose, solutions to the problem were created and
constributed.
- Source code donated to Universities for free.
- Researchers also wrote and donated their software for it.
4
Commercialization:__________________________________
- Commercial operating systems already existed for larger mainframes.
- VAX VMS and IBM CMS operating systems were introduced in 1977 to
replace PDP-11 machines.
- Incredibly costly application software. Compilers, editors and
applications were value add-ons and priced accordingly.
- Sold commercially by AT&T and Sun microsystems (jointly) in 1984.
- Cost is prohibitive but competitive.
- Open Software Foundation (OSF) founded in 1987 by Richard Stallman to
combat increase in cost and prevent monopolistic commercialization.
- most of what we recognize today as “Unix” is actually the
applications written by the OSF (emacs, sed, awk, find, grep,
bash, etc.)
- Sold to Novell in 1993
- Sold to SCO in 1995
5
Flavours:______________________________________________
Many different brands of “Unix” were created to address particular needs or
support specific hardware.
- HP-UX for Hewlett-packard servers
- Solaris (SunOS) for AT&T/Sun microsystems.
- minix (an early free implementation)
- Linux (when Linus got fed up with minix and need a grad. project.)
- Tons of “Sub-distributions”: Slackware, debian, gentoo, Unbuntu,
RedHat, Suse.
- FreeBSD
- OpenBSD
- Hurd
Hardware issues aside, Dissagreement on politics motivated the branching of
Unix into various flavors.
6
Comparison with Windows:________________________
|
|
| Unix | Windows/DOS |
|
|
| Good | Bad |
| Multi-user | originally single user |
| Multiprocess | DOS not multiprocess cable |
| Security features present at conception | security features tacked on |
| Windowing environment seperate | Windowing (now) integrated |
| Shared Libraries (.so) | dynamic link libraries (DLLs) |
| Networking features added early | networking features tacked on late |
| Historically better design decisions | 640K/2GB limits poorly chosen |
| Complex configuration | streamlined configuration |
| Flexible/extensible | Heavily proprietary |
| Poor desktop market penetration | Deep, Wide spread penetration |
| multiarchitecture | x86 specific (recently changing) |
| Course filesystem security granularity | Fine filesystem security granularity |
| FREE (as in “beer” and “rights”) | Costly and resistance is futile |
|
|
| |
7