The weekend saw November 3 pass, and gives me an opportunity to claim that Unix is 50 years old and hence to write this blog post.
48 years ago, on November 3, the 1st edition of the Unix Programmer’s Manual was published.
But Unix itself had been around a little longer, starting in the Computing Science Research Center of AT&T Bell Laboratories in 1969. We lack a definitive date for that, so let us celebrate 50 years of Unix, and 48 years of its manual.
All of the initial versions of “ancient unix” were only made available to AT&T. It wasn’t until 4th edition that Unix was described outside of AT&T, and wasn’t until 6th Edition that Unix became available to use outside of AT&T.
Today Unix is everywhere. Linux is a Unix, by copying the design and the command- and system-interfaces, even though none of the original Unix code was copied. Apple’s OS X operating system is a Unix (a largely FreeBSD userland based on the Mach kernel). Microsoft, who have always had Unix products on the fringe of their offering (for example, Microsoft POSIX subsystem which shipped with Windows NT in 1993), now offer Windows Subsystem for Linux, and they seem pretty enthusiastic about supporting it.
Unix has evolved considerably over those 50 years, but the central pillar of a text-based interactive command (a novel development at the time) has thankfully not changed much at all. Programming languages, a shell, and an editor were all available. Take a modern user of the Unix command line and sit them down at a 1st Edition Unix terminal and they will recognise and know how to use many commands:
The shell, called sh
, has redirection into
and from files with >
and <
, and has file matching with *
and ?
, just like today’s shell.
The basics of file manipulation with cp
, mv
rm
, mkdir
,
and chmod
are all there.
ls
and cat
for listing and showing files, though of course
with far fewer options than their modern counterparts.
Crude but workable text processing is available with ed
for editing,
wc
for word count, and roff
for preparing printed documents.
While roff
is now obscure
(its descendents are troff
and nroff
), but generally still available,
wc
is as popular as ever, and
ed
was the subject of
a popular book published only last
year.
ed
, the editor, would later go on to spawn grep
and sed
.
grep
gets its name from g/RE/p
(RE for Regular Expression),
an ed
command to Globally search Regular Expression and Print.
The name sed
is short for Stream Editor, and shares much of
the same syntax (and in its first version, a surgered copy of code)
with ed
.
There is no C compiler,
Unix 1st edition was largely written in assembler
as C hadn’t been invented yet!
The languages available were as
for assembler, b
for B,
bas
for BASIC, and for
for FORTRAN.
So if you use Unix already, next time you type a shell command, or use an editor with regular expressions, reflect on the 50 years of history behind those commands and regular expressions.
And if you don’t use Unix already, 50 years is plenty of time for it to have matured to the point where you can consider giving it a go!
For queries relating to collaborating with the RSE team on projects: rse@sheffield.ac.uk
Information and access to JADE II and Bede.
Join our mailing list so as to be notified when we advertise talks and workshops by subscribing to this Google Group.
Queries regarding free research computing support/guidance should be raised via our Code clinic or directed to the University IT helpdesk.