Skip to main content

Operating System (OS) Interview Questions And Answers - Part XI.




51. What Is A Thread? Why Is It Used?

Thread is a flow of execution through the process code, with its own program counter, system registers and stack. A thread is also called a light weight process. Threads provide a way to improve application performance through parallelism. Threads represent a software approach to improving performance of operating system by reducing the overhead thread is equivalent to a classical process.

Each thread belongs to exactly one process and no thread can exist outside a process. Each thread represents a separate flow of control. Threads have been successfully used in implementing network servers and web server.

Following are the reasons why we use threads in designing operating systems.
  • A process with multiple threads makes a great server for example printer server.
  • Because threads can share common data, they do not need to use inter-process communication.
  • Because of the very nature, threads can take advantage of multiprocessors.

52.What Are The Advantages Of Threads?

Threads are used because of the following advantages it has:
  • Thread minimizes context switching time.
  • Use of threads provides concurrency within a process.
  • Efficient communication.
  • Economy- It is more economical to create and context switch threads.
  • Utilization of multiprocessor architectures to a greater scale and efficiency.

53. What Are The Types Of Threads In Operating System?

Two types of threads:
  • User Level Threads - User managed threads.
  • Kernel Level Threads - Operating System managed threads acting on kernel, an operating system core.

54. What Are The Differences Between User Level Threads & Kernel Supported Threads?

Some of the important differences between user level threads and kernel level threads are:
  • User level threads are faster to create and manage whereas Kernel level threads are slower to create and manage.
  • Implementation is by a thread library at the user level whereas Operating system supports creation of Kernel threads.
  • User level thread is generic and can run on any operating system whereas Kernel level thread is specific to the operating system.
  • A user thread is more appropriate for low-level tasks, whereas a kernel thread is better for high-priority tasks that should get high priority to system resources.

55. State The Advantages & Disadvantages Of User Level Threads?

Advantages:
  • Thread switching does not require Kernel mode privileges.
  • User level thread can run on any operating system.
  • Scheduling can be application specific in the user level thread.
  • User level threads are fast to create and manage.
Disadvantages:
  • In a typical operating system, most system calls are blocking.
  • Multithreaded application cannot take advantage of multiprocessing.




ALSO READ:

56. State The Advantages & Disadvantages Of Kernel Level Threads?
57. State The Basic Differences Between Process & Thread?
58. What Are The Advantages Of Threads Over Multiple Processes?
59. What Are The Disadvantages Of Threads Over Multiple Processes?
60. Why Should A Web Server Not Run As A Single Threaded Process?

 
... Return To Operating System FAQ's Index.

... Return To Homepage.

Comments

Popular posts from this blog

Tell Me Something About Yourself - Interview Answers.

Try to introduce some of your most important employment-oriented skills as well as your education and accomplishments to the interviewer. Answer to this question is very important because it positions you for the rest of the interview. That's why this statement is often called the "Positioning Statement".

One should take the opportunity to show his/her communication skills by speaking clearly and concisely in an organized manner. Since there is no right or wrong answer for this question hence it is important to appear friendly.



YOUR ANSWERS CAN BE:

1) I am a person with strong interpersonal skills and have the ability to get along well with people. I enjoy challenges and looking for creative solutions to problems.

2) Besides the details given in my resume, I believe in character values, vision and action. I am quick in learning from mistakes. I am confident that the various tests that you have conducted will corroborate my competencies aptitude and right attitude for the…

100 C Programs Frequently Asked in Technical Interview.

Why Should We Hire You? - Interview Answers

The interviewer asks this question just to find out how your skills, experience and knowledge can add value to the job.Well to answer this question you need to learn what they are looking for and then tie them with your strengths. This ensures that you are a viable fit for the position.


The more detail you give the stronger your answers will be. Try to summarize all your accomplishments and relate what makes you unique.


The question can also be

"Why should we hire you over other candidates?"
OR
"Why should we hire you over the others waiting to be interviewed?"

Your answers can be:


1) You should hire me because I’m the best person for the job. I realize that there are likely other candidates who also have the ability to do this job. Yet I bring an additional quality that makes me the best person for the job - my passion for excellence. I am passionately committed to producing truly class results.


2) I believe I’m the perfect fit for this position. I’m very detai…