Ken Thompson

 

Intoduction

 

Kenneth Lane Thompson born on the 4th of February 1943 the son of an airforce pilot and housewife, was a computer programmer, systems designer and a games developer. He majored in electronic enginnering at the University of California Berkely(UCB) where he recieved his Bacholor of Science in electrical engineering in 1965 and he recieved his master's in electrical engineering in 1966 both from Berkeley.

 

Soon after he graduated from berkeley he was hired by Bell Labs a research and development department of the big American company American Telephone & Telegraph. Together Bell Labs, Massachusetts Institute of Technology(M.I.T) and General Electric(G.E) were woking on a research project called MULTICS which was a computer that was intended to support hundreds of simultanious users but Bell Labs pulled out of this research project in 1969.

 

Thompson has since retired from Bell Labs, he worked as a fellow at Entrisphere.Inc until 2006 and now works with google as a distinguished engineer. Last year it was rumoured that Thompson was not allowed to check in code for google because he didn't complete the mandatory programming test yet, which is unusual because he probably had something to do with creating the launguage that they were testing him on.

 

Discussion

 

UNIX

        Probably Thompson's most noted work. He and Dennis Ritchie were the co-creators of  UNIX regaurded as one of the best operating systems of all time. It was from the project MULTICS that they got the idea for UNIX. Bell Labs did not financially support their idea of UNIX at the start so they continued to build it from their own pockets. It wasn't until they said that they would add text processing capabilities to UNIX that they recieved financial backing from Bell Labs.

 

It took Thompson little over a month to create UNIX while his wife and son were visiting family. He spent one week writing the Kernal(the core of the operating system) one week writing the shell(which was the read and write commands) an editor and an assembler(a program to convert source code into machine code that can then be understood by the computers CPU). He wrote all of this in a PDP-7 assembly language.

 

Space Travel

        An influencial part of Unix was this little game that Thompson developed. This game simulated people flying around the solar system and landing on different planets. He developed it first on the MULTICS operating system but then using FORTRAN programming language he translated it onto a GECOS(General Comprehensive Operating System) machine which was a G.E machine. It was costing him too much to use this machine and the display was jerky so he transferred it once again.

PDP7

It was this a mini-computer found in Bell Labs made by Digital Equipment corperation that the first Unix was wrote on. After thompson learned how to program it, he wrote a file system and basic utilities for it. It could only support one user so as a joke they called it UNICS(Uniplexed Information and Computing System) a pun on the disaster that was MULTICS operating system.

 

Programming Languages

Bon was the first language that Thompson worked on for the MULTLICS project. Then he created B for UNIX which was a precursor for C Dennis Ritchie's language that is still used today and is still very popular. To this day Ken is still working with computer language's as he is working for google with a team trying to create google's own language called Go.

 

Belle

Belle was the first computer specifically designed to play chess and it was built by Thompson and his colleague Joe Condon. The stongest of its time it went on to win the ACM North American Computer Chess Championship in 1978 1980-1982 and in 1986 it also won the World Computer Chess Championship in 1980.

 

Regular expressions

Although not Thompsons idea he was the first to implent it. Which was a way of searching through a string of text to find a particular word such as car in carpentry or in Icelander or even by itself. Regular expressions are found in the core of some programming languages and are often used by most other languages.

 

Reflections on Trusting Trust

Ken Thompson is commonly referred to as Ken in hacker circles because of this speech he made also called the Thompson Hack or Backdoor Hack. In it he explains how to create a self-replicating program which can be used to hack into a computer system. He goes on to say that the kids who do this are vandels and are threspassing.

 

Conclusion

 

I came into doing this assignment thinking it was going to be impossible and boring but I found the more I read about Ken Thompson the more intrigued I became with him. The developer of a whole operating system and worked on various different programming languages. He even created his own language(B) that makes up the basis of his collegues(C) which is still one of the most popular to this day.

 

His modesty when it came to him making his “Reflections on Trusting Trust” speech was overwhelming to say the least he acknowledged that he has not worked on mainstream UNIX for many years and went on to thank everyone that was still working on it. Also he went on to shed some light on what he thinks of the computer hackers and what they are doing is essentially vandalism and threspassing. He went on to say that the media were partly to blame for these vandels as they make them out to be “whiz kids” and not what they really are just vandels and trespassers.

 

Thompson has won alot of awards in his many years as a computer programmer. He and Denis Ritchie won the Turing award for the development of generic computer operating systems theory and specifically the UNIX operating system. They also recieved a National Medal of Technology in 1998 from then president of America Bill Clinton for the co-creation of UNIX. Thompson was also the first person to get the Tsutomu Kanai Award in 1999 for the co-creation of UNIX.