Skip to main content

Process Termination or destroy a process

 

Process Termination or destroy a process

  • Processes may request their own termination by making the exit( ) system call, typically returning an int. This int is passed along to the parent if it is doing a wait( ), and is typically zero on successful completion and some non-zero code in the event of problems.
    • child code:
                  int exitCode;
                  exit( exitCode );  // return exitCode; has the same effect when executed from main( )
    • parent code:
                  pid_t pid;
                  int status
                  pid = wait( &status ); 
                  // pid indicates which child exited. exitCode in low-order bits of status
                  // macros can test the high-order bits of status for why it stopped
  • Processes may also be terminated by the system for a variety of reasons, including:
    • The inability of the system to deliver necessary system resources.
    • In response to a KILL command, or other un handled process interrupt.
    • A parent may kill its children if the task assigned to them is no longer needed.
    • If the parent exits, the system may or may not allow the child to continue without a parent. ( On UNIX systems, orphaned processes are generally inherited by init, which then proceeds to kill them. The UNIX nohup command allows a child to continue executing after its parent has exited. )
  • When a process terminates, all of its system resources are freed up, open files flushed and closed, etc. The process termination status and execution times are returned to the parent if the parent is waiting for the child to terminate, or eventually returned to init if the process becomes an orphan. ( Processes which are trying to terminate but which cannot because their parent is not waiting for them are termed zombies. These are eventually inherited by init as orphans and killed off. Note that modern UNIX shells do not produce as many orphans and zombies as older systems used to. )

Comments

Popular posts from this blog

Multi processing system

  Multi processing system ·           Multi processesor system is the sytem that contain two or more processors or CPUS and has ability to simultaneously execute     several programs. Hence the name multi-processor In such a system, multiple processor share the clock, bus, memory and peripheral devices. ·           A multi processor system is also known as parallel system ·           Multi processor system are categorized into two different types:                single user operating system    2.        Multi user operating system   3.         Batch processing operating system 4.        Multi programming operating system   5.       Multi tasking operating sy...

Defination of OS(operating system) and its concepts

    What do you mean by operating system?     Definition :  An operating system is a program that act as an interface between the user of a computer and the                                      Computer hardware. Operating system is a first program that gets loaded into the memory through a process called booting. Concepts of operating system : ·                       The purpose of operating system is to provide an environment in which a user can execute program in a convenient and efficient manner. ·                       Operating system is an integrated set of program that ma...

Multi user Operating System

  Multi user operating system ·           In a multi-user operating system, multiple number of user can access different resources of a computer at a same time. ·           The access is provided using a network that consists of various personal computer attached to a mainframe computer system.                                                              diagram of multi -user operating system       ·           The various personal computer can send and receive information to mainframe computer system. ·           The example    of multi-user OS are UNIX, windows 2000,novell netware.            sing...

Real-time system

  R eal-time system ·           In a real time operating system, a job is to be completed within the    rigid time constraints otherwise job loses its meaning. ·           A real time system function correctly only if it returns the correct result within its time constraints ·           Thus, in a    real-time system, the correctness of the    computation not only depends upon the logical correctness of the computation but also upon the time at which the result is produced. R eal-time system In a real time system various functions like process scheduling, memory management, I/O management and file  management are performed as follows : 1.         Process scheduling  . the real time system uses priority based pre-emptive scheduling. each process is assigned a certain level of ...

Time Sharing System and its Requirements

  Time sharing  system ·           Time sharing refers to the allocation of computer resources in a time dependent fashion to several program simultaneously ·           A time sharing system has many user terminals that are connected to same computer simultaneously. Using these terminal, different users can work on a system at the same time ·           Thus, it uses multi programming with a special CPU scheduling among all the last one, and then again beginning from the first one ·           In time sharing system, the CPU time is divided among all the users on schedule basis. ·           It release the CPU under any of the following three conditions: 1.         When the allotted time slice expires. 2.    ...