The processes in the system can execute concurrently and must be created and deleted dynamically.
In addition to the various physical and logical resources that a process obtains when it is created, initialised data (input) may be passed along by the parent process to the child process.
1) The parent (process) continues to execute concurrently with its children (processes).
2) The parent (process) waits until some or all of its children (processes) have terminated.
When one process creates a new process, the identity of the newly created process is passed to the parent process.
A parent process may terminate the execution of one of its children for a variety of reasons, such as:
The processes executing in the operating system may be either independent processes or cooperating processes.
There are several advantages of providing an environment that allows process co-operation.
OS_Unit 02c: Transcript
The process in the system can execute concurrently and must be created and deleted dynamically. Thus, the operating system must provide a mechanism for process creation and termination. At the end of this topic, you will be able to explain the operational process, outline the process creation, explain the process execution, outline the process terminations, and describe the cooperating process. Here we will understand and the, uh, operation on a process like creation, execution, termination, and also we will understand the what are the cooperative process and what are, how it, the cooperative process are different from the individual process. Let's discuss the process creation. The creating process is called the parent process, and the new process are called the children of the process. When a main process are running that time, this is called the parent process. When this main process are divided into the other process are generating the other process. These new process are called the children of this parent process. Various physical and logical resources that are process obtained when it is created in the data may be passed along by the parent process to the child process. There are many physical and logical resources, and these are, uh, physical and logical resources, uh, used by the parent and child. And these parent, uh, parent and child process can use the physical and logical process. When a process created a new process, two possibilities exists in terms of, uh, education. The parent continues to execute concurrently with the children. The parent wait until some or all of its children have terminated. The parent continues to execute concurrently with these children, maybe the parent process and child process concurrently running, and the sometimes it wait for the children to terminate. And children process gives the status to the parent process. And this is called the termination. Let's discuss the process. Termination. Only one parent process can cost terminate of its children via award system. Call for the, for that, a parent need to know the identification of its children. And when one process creates a new process, the identifier of the newly created process is passed to the parents. A parent may terminate the execution of one of its children for a variety of region, such as a child has executed its usage of some of the resources that it has been allocated, and the task assigned to the child is no longer required. So here we can say there is a parent to child relationship and child can execute and execute it and gives the, uh, process output to the parent process. And this can terminate and gives the output to the parent process. The parent is existing and the operating system does not allow a child to continue. If it's parent terminate, and there is a simple concept, if the parents will terminate that time, all child process automatically terminate. So there maybe the hierarchical structure of a process. K, a, uh, H, uh, a, parents of B and B, parents of the C. If A terminated that time automatically, B and C terminated. If B terminated that time automatically a C terminated. But if B and C terminated it is not necessary A terminated. If C terminated, it's not necessary. A, BB will terminate. Let's, uh, discuss the cooperative process. The process executing in the operating system may be either independent process or cooperative process. What is the difference between independent process and cooperative process? If the process is not sharing data memory, that time, this process is independent. If the process is shared, data and memory, this type of process is a cooperative process. And independent process always be a single process. In a cooperative process, they are just sharing between more than one process, and they will, they are sharing the memory or data or files. So these are called the cooperative process. A process is set to be a independent if it cannot affect or affected by the other process executing in the system. This processor also called the independent because they are not sharing the data information or a file, so they cannot affect the other process. In a cooperative process, they are sharing the data that time, it is called the process, uh, cooperative process. Here there are is a dependency between the one process to the another process. So the here is a synchronization between two processes. Much more important because the data of, uh, one process is depend to the another process and another process. Data is de depend on the first process, and the process is cooperative if it can affect or affect it by the other process. Executing in the system here I already discussed. Okay. If, uh, suppose uh, we have a variable A and this variable also used in a second process, a and the first process a variable in a incremental mode, suppose that a a a plus plus that time, uh, suppose we have given the value of a five, that time it'll occur the value of six. Now this value, when we are moving to the second process, that time, the a value will be the six. And here is again, incremental plus, plus that time, this value will be the seven. And when the, again, the process going for the first process, that time a value will be the seven rather than six. So here we have to understand the first process, make a eight to six and second process, take the six and make to the seven. Or again, when the process is switching from the first process, that time it'll get the six, seven rather than the six. Because the eight dependent on both process and both process are cooperative. So we have, we have to care fully handle the Cooper advantages of process, co cooperations, information sharing, since several users may be interested in the same piece of information we must provide and in, uh, environment to allow the concurrent access of these type of resources. So here we no, no need to, uh, writing a code again and again and again. We have just, uh, shared the data from one information, one process to the another, uh, process. And the sharing information should be in a critical section. We will discuss, uh, later, uh, what is the critical section. But here we have to understand, okay, what is the piece of information and, uh, environment, uh, concurrent access in the type of our resources. So here, there are also we can say here is the use for reusability concept, because we can say, use the same, uh, information from, uh, among the several processes. Next, the computation is speed up. If we want to a particular task to run faster, we must break it into subtask and each of which we executed in parallel with the others. So it'll be, it takes the computation speed. Suppose that, uh, if the processes, uh, give the A to six and six to seven, that time when the process goes for the seven, that time first process are getting the seven value rather than the six. So because there is a computation, speed up, the a value is, uh, changes from process one to the process two. Next one is, uh, modularity. We, uh, may want to construct a system, uh, in a modular person, uh, dividing the system function into a separate process. And the modularity means, uh, there we can divide the peak function in a small, small function. And here we can, uh, save the data and share the information among the per, uh, multiple process. And it is also a convenience when an individual users may have a mini task to work on at one time. For instance of user may be editing, printing, and compiling in a parallel if the in a cooperative process, if process first process is good, that time the second processor, uh, take the input output and, uh, perform the operation. And when the process going further, uh, process two, that time, uh, P one process take the input output and uh, do the act recording this. So here is also a convenient sharing. So, uh, cooperative process gives the, uh, information sharing advantage, computation, speed of advantage, modularity advantage and convenience advantage. And if this topic we have learned, the process in the system can execute concurrently and must be created and, uh, deleted dynamically. A process terminate when it finished the execute it last statement and ask the operating system to delete it by using the exit system. Call. Add that time the process should return the data. It's a parent process via the wait system call the process. Executing the operating system may be either independent process or a cooperative process. The process execute concurrently means one process to another process. When the process is terminate and finish, that time is asked, also asked to the children can Now we are going to terminate every processes of Phoenix and it's use the normal exit call, exit system call and this type of process termination is called the normal termination. If the process is not, uh, terminated normally via the occurring of error, power failures, uh, long time waiting, suspension of our input output, uh, process that and deadlock occurrence that time. This type of process is called the abnormal terminations. If the process are executing, operating system may the independent or cooperative if the process work is not affected to another process and they have our own data, own file. That time it is called the independent process. If the file working is dependent on another process, they are sharing the data or a file that time it is called the cooperative process. And this brings us to end of the topic.