What is Thread ?
- A thread is a lightweight sub-process, the smallest unit of processing or a basic unit of CPU utilization. 
- It consist a program counter(PC), stack space, set of registers and a thread ID 
- Threads are the entities scheduled for execution on the CPU. 
- A thread is a single series stream within in a process. 
- Each thread has its own stack. 
- Threads are dependent of one other. 
- Threads helps the other threads in operating system. 
- If one thread is blocked then, another thread does not affected it proceed without blocking.. 
- Threads shares common memory space. 
- Context switching are fast in threads. 
- A thread uses parallelism, which provides a way to improve application performance. 
Multithreading Models in operating-system
- Many-To-One Model 
- One to One Model 
- Many to Many Model 
Advantages of Operating System Multi-Threading
- Threads minimize the context switching time. 
- Use of threads provides concurrency within a process. 
- Efficient communication. 
- It is more economical to create and context switch threads. 
- Threads allow utilization of multiprocessor architectures to a greater scale and efficiency. 
- Improved server responsiveness. 
- Minimized system resource usage. 
