Preface: The university era has been counting down, and packing up, we must enter society - also become a complete society. However, there is a last thing, and the heart is not full. I always want to pass the UNIX kernel code to talk about the process. So urgent, in the past few days, there is not much concern, and you will write a few small texts in a hurry for throwing bricks. References are Lyon's UNIX source code analysis.
Regarding the concept of the process, the general university textbook is defined as a procedure being executed, emphasizing it is an active entity and indicates that it is different from the procedure.
However, learning the process concept in the principles of operating system, I still feel a bit blurry; because I know the concept of the process, I always feel that it is just to shape, and I have to have God. Can clearly explain why the process is the core concept of the operating system? It rely on a conscious aware of the development of the computer? Can you analyze the form of the source code - source code to solve the lack of education?
Regarding the concept of the process, in addition to "the program being executed", I think there is still two points to emphasize.
1. The process is a model that describes parallel development.
2, the process is an abstract concept.
Learning a computer, often feels beautiful, because this is not a repeated business, but the stage of thinking. Such as the concept of the process, that is, this. We can imagine that in the multi-channel programs or even in parallel computers, the program performs a substantially one sight:
At higher levels, the process is an important organizational concept that describes a computer system as a whole activity. Each process is combined with a procedure to be active, and there is a trait of interaction and life cycle.
However, in this perspective, the real movable part body of the computer is masked, that is, the processor and external device are blamed. At a lower level, the process is not an active entity that relies on the active entity such as a processor. By means of frequently using the process, switching from one process image to the other, the high-level viewing angle is formed.
The high-level perspective is familiar to each person who has received operating system education. As the active entity, the process is in the process of utilizing or competing resources, the state is also running, waiting, sleep between sleep. Because of this perspective, parallel activities have been well described, and naturally involve the process of communication, synchronization, critical area management, and process scheduling and deadlock processing, general teaching materials will be discussed in detail.
In general, the process is a program being executed. At a higher level, the process is an abstract concept and is a model that describes parallel. At a lower level, including the structure of the process image, the details, and the method of switching the processor between the processes.
The computer is relying on such concepts, ultra-detail, deepening the understanding, and continuous development.
Next, we will enter the UNIX core code world, look at the process carefully and see this.