Question

Suppose as an operating system designer you must choose between using either a Many-to-One or One-to-One...

Suppose as an operating system designer you must choose between using either a Many-to-One or One-to-One Multithreading model between user and kernel threads. Describe what factors you should consider before choosing one or the other.

0 0
Add a comment Improve this question Transcribed image text
Answer #1

Many to One Model

  • In the many to one model, many user-level threads are all mapped onto a single kernel thread.
  • Thread management is handled by the thread library in user space, which is efficient in nature.
  • In this model when a user thread makes a blocking system call entire process blocks. As we have only one kernel thread and only one user thread can access kernel at a time, so multiple threads are not able access multiprocessor at the same time.
  • Thread management is handled by the thread library in user space, which is very efficient.
  • However, if a blocking system call is made, then the entire process blocks, even if the other user threads would otherwise be able to continue.
  • Because a single kernel thread can operate only on a single CPU, the many-to-one model does not allow individual processes to be split across multiple CPUs
  • Green threads for Solaris and GNU Portable Threads implement the many-to-one model in the past, but few systems continue to do so today.

                                      

One to One Model

  • The one to one model creates a separate kernel thread to handle each and every user thread.
  • Most implementations of this model place a limit on how many threads can be created.
  • Linux and Windows from 95 to XP implement the one-to-one model for threads.     
  • In this model multiple thread can run on multiple processor. Problem with this model is that creating a user thread requires the corresponding kernel thread.   
  • One-to-one model overcomes the problems listed above involving blocking system calls and the splitting of processes across multiple CPUs.
  • However the overhead of managing the one-to-one model is more significant, involving more overhead and slowing down the system.
  • Most implementations of this model place a limit on how many threads can be created.
  •           

By this we can say that many -to-one thread is more efficient than one-to-one because in one-to-one only one task can be performed at a time which ultimately result in slow processing.

But in many-to-one the process can't be run in parallel and so that it can't use the entire multiprocessor system,but it can generate multiple threads to perform a single task.

Add a comment
Know the answer?
Add Answer to:
Suppose as an operating system designer you must choose between using either a Many-to-One or One-to-One...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • Given an operating system that supports a one-to-one relationship between user-level threads and kernel-level threads and...

    Given an operating system that supports a one-to-one relationship between user-level threads and kernel-level threads and allows one or more threads from a process to issue blocking system calls while other threads (within that process) continue to run. What must a kernel provide for an effective user-level thread implementation?

  • Consider an environment in which there is a one-to-one mapping between user-level threads and kernel-level threads...

    Consider an environment in which there is a one-to-one mapping between user-level threads and kernel-level threads that allows one or more threads within a process to issue blocking system calls while other threads continue to run. Explain why this model can make multi-threaded programs run faster than their single-threaded counterparts on a uniprocessor computer.

  • Suppose you build a system using a staged architecture with some fixed number of threads operating...

    Suppose you build a system using a staged architecture with some fixed number of threads operating in each stage. Assuming each stage is individually deadlock free, describe two ways to guarantee that your system as a whole cannot deadlock. Each way should eliminate a different one of the 4 necessary conditions for deadlock.

  • Different operating system structures offer both benefits and drawbacks over one another, and it's important to...

    Different operating system structures offer both benefits and drawbacks over one another, and it's important to understand what kind of structure should be used for different use-cases. Consider the following situation. You are designing an operating system for an interstellar probe that is meant to run for hundreds of years. The probe should also support monitoring many specific instruments. What structure (simple, layered, microkernel, or modular) should you choose for its kernel? Analyze the problem, design a choice, and justify...

  • Post a 3- to 4-paragraph analysis on the operating system/programming language you chose, and its support...

    Post a 3- to 4-paragraph analysis on the operating system/programming language you chose, and its support for threading. Make sure to do the following: Summarize the threading support. Answer the following questions: Is the threading model based on kernel-level or user-level threads? What is the most significant advantage of the implementation? What is the most significant disadvantage of the implementation? Provide a scenario where this method of threading will provide the best solution and explain why.

  • [2C-07] Suppose you must choose 4 out of 50 students to serve on student council.  How many...

    [2C-07] Suppose you must choose 4 out of 50 students to serve on student council.  How many different ways of choosing group of 4 students are there?

  • In this assignment, you will implement a Memory Management System(MMS). Using C Programming Language..... MAKE SURE...

    In this assignment, you will implement a Memory Management System(MMS). Using C Programming Language..... MAKE SURE YOU USE C PROGRAMMING Your MMS will handle all requests of allocation of memory space by different users (one thread per user) …. HINT(You will use Pthreads and Semaphores). Your MMS will provide the user with an interface for making memory requests and also for freeing up memory that is no longer needed by the user. One of the jobs of your memory management...

  • The VAX/ VMS operating system makes use of four processor access modes to facili-tate the protection...

    The VAX/ VMS operating system makes use of four processor access modes to facili-tate the protection and sharing of system resources among processes. The access mode determines:• Instruction execution privileges: What instructions the processor may execute• Memory access privileges: Which locations in virtual memory the current instruc-tion may access The four modes are as follows:• Kernel: Executes the kernel of the VMS operating system, which includes memo-ry management, interrupt handling, and I/ O operations• Executive: Executes many of the operating...

  • 2. In many mechanical positioning systems there is flexibility between one part of the system and...

    2. In many mechanical positioning systems there is flexibility between one part of the system and another. The figure below depicts such a situation, where a force u(t) is applied to the mass M, and another mass m is connected to it. The coupling between the objects is often modeled by a spring constant k with a damping coefficient b, although the actual situation is usually much more complicated than this. y(t) m M ut) no friction no friction a)...

  • Choose your own adventure games, movies and books are a not so popular sub section of...

    Choose your own adventure games, movies and books are a not so popular sub section of entertainment media, where each story is written from a second-person point of view, with the reader assuming the role of the protagonist and making choices that determine the main character’s actions and the plot’s outcome. These actions are usually only a choice between two deciding factors where sometimes the stories advance to different paths or a path you were position you had previously been...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT