"C was already implemented on several quite different machines and OSs, Unix was already being distributed on the PDP-11, but the portability of the whole system was new"
About this Quote
Dennis Ritchie recalls a pivotal shift: by the early 1970s, C already ran on several machines and operating systems, and Unix had spread on the PDP-11. What was revolutionary was treating the operating system, its tools, and the language implementation as a single, portable entity. Until then, operating systems were welded to hardware, written in assembly, and rehosting them meant essentially starting over. C promised efficiency with abstraction, but the breakthrough came when Unix was rewritten in C around 1973 and restructured so that only a small layer depended on the machine, while most of the code did not.
Saying the portability of the whole system was new highlights a deliberate strategy: bring along the compiler, libraries, shell, and utilities, so the environment can bootstrap itself on a different machine. Portability becomes a process, not a slogan. The successful moves to the Interdata 8/32 and later the VAX proved that an OS could travel with relatively modest effort and still run fast, undermining the belief that high-level languages were too slow for systems work.
The consequences were sweeping. A portable Unix could reach universities and labs regardless of the hardware they owned, seeding a culture of source code study and modification. Vendors could adapt it, spawning a diverse Unix lineage and, in time, shared interfaces like POSIX. C itself gained credibility as a systems language precisely because it carried a living, complex system across platforms. The center of gravity shifted from hardware-specific craftsmanship to software architectures designed to survive machine turnover.
Ritchie is marking the moment when portability stopped being an attribute of a compiler and became the organizing principle of an ecosystem. That idea underlies modern software: build with layers, minimize hardware dependence, and let the system move so the community and code can grow beyond any single machine.
Saying the portability of the whole system was new highlights a deliberate strategy: bring along the compiler, libraries, shell, and utilities, so the environment can bootstrap itself on a different machine. Portability becomes a process, not a slogan. The successful moves to the Interdata 8/32 and later the VAX proved that an OS could travel with relatively modest effort and still run fast, undermining the belief that high-level languages were too slow for systems work.
The consequences were sweeping. A portable Unix could reach universities and labs regardless of the hardware they owned, seeding a culture of source code study and modification. Vendors could adapt it, spawning a diverse Unix lineage and, in time, shared interfaces like POSIX. C itself gained credibility as a systems language precisely because it carried a living, complex system across platforms. The center of gravity shifted from hardware-specific craftsmanship to software architectures designed to survive machine turnover.
Ritchie is marking the moment when portability stopped being an attribute of a compiler and became the organizing principle of an ecosystem. That idea underlies modern software: build with layers, minimize hardware dependence, and let the system move so the community and code can grow beyond any single machine.
Quote Details
| Topic | Coding & Programming |
|---|
More Quotes by Dennis
Add to List
