8. UNIX and C Language
In the 1960’s, the Incompatible Timesharing System(ITS) was being heavily developed at MIT. Meanwhile, at another location on the east coast of the United States, there was another lab with the same hacker spirit: AT&T Bell Laboratories.
The groundbreaking Unix and C language, which would go on to change the world, were being developed.
Coincidentally, the people who were working on Multics were also working on ITS and Unix, including Ken Thompson and Dennis Ritchie from Bell Labs.
“Yeah, the development time has become way longer than we expected.”
The Multics project began in 1964, but due to the large code size and complexity, the schedule fell far behind Bell Labs’ expectations.
In 1969, Bell Lab. pulled out of the development of Multics.
Based on his experience developing Multics, Ken Thompson creates a new operating system by himself at Bell Labs.
Ken Thompson reimplemented many of the key features he had developed in Multics in Unix.
He adapted the file system he had already implemented in Multics in Unix on PDP-7, and Dennis Richie joined him in the development. Once the development was well underway, a team was organized and they began implementing the operating system features we use today, such as the filesystem, process model, device files, and command line interpreter, for the first time on PDP-7.
Then, PDP-11 was introduced, which differed in CPU instructions from the PDP-7.
B language was also developed for use in Multics by Ken Thompson and Dennis Ritchie in 1969.
In 1971, Dennis Ritchie added a character type to the B language and rewrote the compiler code to generate PDP-11 machine code[3].
In 1973, basic functionalities were complete, and it was called C, which was just the next version of B.
Dennis Richie began rewriting Unix in C that same year.
Dennis added the structure type to the C language to define the user’s custom data. Now, the C language is powerful enough to write Unix kernels.
Although Unix and C were created in a short period of time by Ken Thompson and Dannis Richie, most computers, including cell phones, still run on OS based on Unix today. In addition, operating system kernels are still developed in C today.
References
[1] https://en.wikipedia.org/wiki/Multics
[2] https://en.wikipedia.org/wiki/Unix
[3] https://en.wikipedia.org/wiki/History_of_Unix
[4] The Development of the C Language
[5] The Evolution of the Unix Time-sharing System