Dennis M. Ritchie, co-creator of UNIX and father of the C programming language, died this past weekend after a long illness. It's no exaggeration to say that without Ritchie, modern computing would not be what it is today.
Often known as "dmr," Ritchie was born in Bronxville, NY in 1941. He studied at Harvard University, initially focusing on physics. Ritchie said that he entered computing because "my undergraduate experience convinced me that I was not smart enough to be a physicist, and that computers were quite neat."
"As a result, C became in effect a universal assembler: close enough to the machine to be cost effective, but far enough away that a C program could be compiled for and run well on any machine." Brian Kerninghan
Ritchie joined Bell Labs in 1967 and worked with a group of developers, including Ken Thompson, to create UNIX, the first version of which was released in 1969. Initially called UNICS (following a system called MULTICS) was written in a low-level assembly language by Thompson. According to Thompson, Ritchie's contribution to UNIX was "mostly on the language and the I/O system."
Most of you who follow the tech industry have likely heard of the passing of computer programming icon Dennis M. Ritchie (also known as dmr) on October 8 at the age of 70. While it could be argued that Linus Torvalds is more famous in today's world than Dennis Ritchie, it's quite safe to say that there wouldn't be a Linux without Dennis Ritchie.
dmr created the C programming language which makes up 95% of the code base of the Linux kernel according to Ohloh.
It's not surprising that C has been so instrumental in computing history, given its melding of close to the machine power with cross-platform portability. As Sean Gallagher of Ars Technica says: "By creating C, Ritchie gave birth to the concept of open systems. C was developed so they could port Unix to any computer, and so that programs written on one platform (and the skills used to develop them) could be easily transferred to another."
In today's world we take cross-platform computing for granted, but without dmr it -- and modern computing -- wouldn't exist.
dmr was also one of the co-inventors of the Unix operating system, which obviously was the inspiration (but not the code base) for Linux and the base of all Unix varients including Solaris, HP-UX, AIX and BSD.
Languages
Ohloh analyzes the project source code and determines the language of each line of code, excluding comments and blanks.
|
The Creation of C
The language, of course, was C. So named because it followed the
B (for Bell Labs) programming language, C is a higher-level language designed to
allow cross-platform programming. To make it portable to different hardware, it was
re-written in C, and released in 1971 as UNIX.
Brian Kerninghan said that with C "Dennis managed to find
a perfect balance between expressiveness and efficiency.
It was just right for creating systems programs like compilers,
editors, and even operating systems. C made it possible for
a programmer to get close to the machine for efficiency
but remain far enough away to avoid being tied to a specific
machine... As a result, C became in effect a universal assembler:
close enough to the machine to be cost effective, but far enough away that a
C program could be compiled for and run well on any machine."
The concept of a multi-platform language and operating system no doubt seem, well,
"Before C, there was far more hardware diversity than we see in the industry today.
Computersproudly sported not just deliciously different and offbeat instruction sets,
but varied wildly in almost everything, right down to even things as fundamental as
character bit widths.. There was no suchthing as a general-purpose program that
was both portable across a variety of hardware and also efficient enough to
compete with custom code written for just that hardware."
Tim Bray writes, "Unix combines more obvious-in-retrospect engineering design choices than
anything else I've seen or am likely to see in my lifetime... It is impossible – absolutely
impossible – to overstate the debt my profession owes to Dennis Ritchie. I've been living
in a world he helped invent for over thirty years."
The combination of C and UNIX have been at the core of computing ever since, and are
(in slightly altered form) still going strong today. UNIX, as a portable and multi-user operating
system, became extremely popular. AT&T was prohibited from entering the computer market
at the time UNIX was created, so it was freely spread far and wide to businesses, schools,
and within the U.S. government.
UNIX ultimately spawned dozens of versions, including SunOS and Solaris, AIX, HP-UX
, NeXTSTEP, BSD, A/UX, Mac OS X and many others. UNIX inspired the GNU Project
and Linux, though they are not derived from the same codebase.
C is still widely used, as are its direct descendants; C++, Perl, Objective-C, Java, C#,
PHP and many others.
K&R
The popularity of C has been helped by The C Programming Language, often referred to
as K&R for its co-authors: Kerninghan and Ritchie.
The book was published in 1978, and is a comprehensive guide to C in less than 300 pages.
Kerninghan said that he "twisted Dennis's arm into writing it" which was "probably the smartest
thing I ever did." Kerninghan called Ritchie "an exceptionally clear and elegant writer."
it probably helped that the book, like the language, is rather small and simple, and
madeK&R continues to be considered an important guide to C. It was revised in 1988
to accommodate the ANSI C standard, and has been translated into more than 20
languages. Kerninghan said that the book has been successful "in large part because
of the success of C, though
it possible for people to do useful things quickly."
The book made popular the now-obligatory " Hello World!" example, which explains how
to create a small program that prints "Hello World!" to the display.
Later Career
Later in his career, Ritchie continued in computer research and contributed to the creation
While neither Plan 9 or Inferno have achieved widespread popularity, Inferno has been
released as open source and is under continued development.
Ritchie retired as the head of Lucent Technologies System Software Research Department
in 2007. He received numerous awards for his achievements, including the U.S. National
Medal of Technology in 1999 in conjunction with Thompson.
Rob Pike, who worked with Ritchie at Bell Labs and on the Plan 9 and Inferno projects,
reported Ritchie's passing yesterday, saying, "He was a quiet and mostly private man,
but he was also my friend, colleague, and collaborator, and the world has lost a truly
great mind."
No comments:
Post a Comment
Thank you for your Commenting...