A hardware that is multithreaded has been designed to achieve the capability to switch between threads. A blocked thread has to be replaced by a ready to run thread. The whole process involves the replication of different registers. These registers could be program visible or processor visible belonging to each thread associated of a specific processor. For the processor these register may include the program counter etc.
Switching to another thread means switching the registers that are being used. Here efficiency is achieved by using hardware having capability to switch registers in one CPU cycle. The competing threads should view the entire system as having been processing alone and have no other thread to share resources with. If managed like this, there will be very less changes required to be made to an operating system implementation for managing threads. Many microcontrollers and embedded processors have multiple registers to allow quick context switching among blocked or interrupted threads and is called blocked multithreading between user and interrupted threads.
These are just excerpts of essays please access the order form for custom essays, research papers, term papers, thesis, dissertations, book reports and case studies.