Interview Preparation Exam  >  Interview Preparation Notes  >  Placement Papers - Technical & HR Questions  >  Unix Process Management (Part-1), UNIX Interview Questions

Unix Process Management (Part-1), UNIX Interview Questions | Placement Papers - Technical & HR Questions - Interview Preparation PDF Download

1. Brief about the initial process sequence while the system boots up.

While booting, special process called the 'swapper' or 'scheduler' is created with Process- ID 0. The swapper manages memory allocation for processes and influences CPU allocation. The swapper inturn creates 3 children:with IDs 1,2 and 3 respectively.

This is done by executing the file "/etc/init". Process dispatcher gives birth to the shell. Unix keeps track of all the processes in an internal data structure called the Process Table (listing command is ps -el).

  1. the process dispatcher,
  2. vhand and
  3. dbflush

2. What are various IDs associated with a process?

Unix identifies each process with a unique integer called ProcessID. The process that executes the request for creation of a process is called the 'parent process' whose PID is 'Parent Process ID'. Every process is associated with a particular user called the 'owner' who has privileges over the process. The identification for the user is 'UserID'. Owner is the user who executes the process. Process also has 'Effective User ID' which determines the access privileges for accessing resources like files.

  • getpid() -process id
  • getppid() -parent process id
  • getuid() -user id
  • geteuid() -effective user id

3. Explain fork() system call.

The 'fork()' used to create a new process from an existing process. The new process is called the child process, and the existing process is called the parent. We can tell which is which by checking the return value from 'fork()'. The parent gets the child's pid returned to him, but the child gets 0 returned to him.

4. Predict the output of the following program code.
main() 

   fork(); 
   printf("Hello World!"); 
}

Answer: Hello World!Hello World!
Explanation: The fork creates a child that is a duplicate of the parent process. The child begins from the fork(). All the statements after the call to fork() will be executed twice.(once by the parent process and other by child). The statement before fork() is executed only by the parent process.

5. Predict the output of the following program code 
main() 

   fork(); fork(); fork(); 
   printf("Hello World!"); 
}

Answer: "Hello World" will be printed 8 times.
Explanation: 2^n times where n is the number of calls to fork();

6. List the system calls used for process management:

System callsDescription 
fork()   - To create a new process 
exec()   - To execute a new program in a process
wait()   - To wait until a created process completes its execution
exit()   - To exit from a process execution
getpid()   - To get a process identifier of the current process
getppid() - To get parent process identifier
nice()   - To bias the existing priority of a process
brk()   - To increase/decrease the data segment size of a process

7. How can you get/set an environment variable from a program?

Getting the value of an environment variable is done by using "getenv()". 
Setting the value of an environment variable is done by using "putenv()"

8. How can a parent and child process communicate?

A parent and child can communicate through any of the normal inter-process communication schemes (pipes, sockets, message queues, shared memory), but also have some special ways to communicate that take advantage of their relationship as a parent and child. One of the most obvious is that the parent can get the exit status of the child.

9. What is a zombie?

When a program forks and the child finishes before the parent, the kernel still keeps some of its information about the child in case the parent might need it - for example, the parent may need to check the child's exit status. To be able to get this information, the parent calls 'wait()'; In the interval between the child terminating and the parent calling 'wait()', the child is said to be a 'zombie' (If you do 'ps', the child will have a 'Z' in its status field to indicate this.)

The document Unix Process Management (Part-1), UNIX Interview Questions | Placement Papers - Technical & HR Questions - Interview Preparation is a part of the Interview Preparation Course Placement Papers - Technical & HR Questions.
All you need of Interview Preparation at this link: Interview Preparation
85 docs|57 tests

Top Courses for Interview Preparation

Explore Courses for Interview Preparation exam

Top Courses for Interview Preparation

Signup for Free!
Signup to see your scores go up within 7 days! Learn & Practice with 1000+ FREE Notes, Videos & Tests.
10M+ students study on EduRev
Related Searches

Objective type Questions

,

UNIX Interview Questions | Placement Papers - Technical & HR Questions - Interview Preparation

,

pdf

,

Sample Paper

,

UNIX Interview Questions | Placement Papers - Technical & HR Questions - Interview Preparation

,

Exam

,

Viva Questions

,

Important questions

,

Previous Year Questions with Solutions

,

MCQs

,

video lectures

,

Unix Process Management (Part-1)

,

Summary

,

practice quizzes

,

UNIX Interview Questions | Placement Papers - Technical & HR Questions - Interview Preparation

,

Unix Process Management (Part-1)

,

ppt

,

Unix Process Management (Part-1)

,

shortcuts and tricks

,

Semester Notes

,

Free

,

mock tests for examination

,

study material

,

Extra Questions

,

past year papers

;