Observing different versions of UNIX emerging, you will realize that it is in a process of
constant development, amendment and enhancement.
In this process, the thoughts of UNIX developers were adjusted and enriched with the development of computer hardware and peripherals, along with the proposal of new application demands.
It resulted in UNIX being moved to execute on different hardware platforms and projects, which also made the portability and scalability of UNIX essential to the theory of operating systems.
UNIX drew on a lot of ideas of the earlier operating systems, and its openness made the prototyping expand into different UNIX versions and different groups of developers.
For a new programmer, it is also necessary to derive the development thoughts and experiences of precursors.
By learning from the precursors, newcomers can enrich their knowledge gradually and effectively, and the novel thinking can grow from the
knowledge reserves.
For promising developers, the UNIX development process was also a training program. Linux is a successful example of a derivative of UNIX . This training program involes
- deducing mentally and
- programming physically,
so that developers can get familiar with the computer system as a whole, including both hardware and software.
With the advent of
commercial operating systems, most of the readers do their jobs on encapsulated and transparent operating systems.
On the other hand, many students and graduate students in computer science start their studies with the
theory of operating systems.
A transparent and well-designed operating system saves the users a lot of time and effort, but it also allows scientists to explore roads inside operating systems and the underlying hardware parts.
For real developers and programmers, this may seem like a big risk to sit on a seemingly-transparent but unfamiliar system to do development.
Finally programmers may encounter some bugs that they cannot tackle. They have to experience something that can let them understand what really
- makes the construction of an operating system,
- what the kernel of an operating system does for users, and
- how algorithms and mechanisms in the theory of operating systems are implemented.
Even though UNIX cannot tell all the story of a well-designed modern or future operating system,
it can give the mapping or clues to different functions and services, which can be treated as an anatomy lecture of a promising surgeon.