Advantages:-• Sharing Treads permit the sharing of a lot resources that cannot be shared in process, for instance, sharing code section, data section, Operating System resources like open file etc.• Context Switching Threads are very reasonably priced to create and destroy, and they are inexpensive to represent. For instance, they require space to store, the PC, the SP, and the common-purpose registers, but they do not need space to share memory information, Information about open files of I/O devices in use, etc. With so little circumstance, it is much faster to switch between threads. In other words, it is comparatively simpler for a circumstance switch using threads.

Disadvantages:-• Security Since there is, a wide sharing among threads there is a potential difficulty of security. It is quite possible that one thread over writes the stack of a different thread (or damaged shared data) although it is very unlikely since threads are destined to cooperate on a single task.• Blocking The major drawback if that if the kernel is single threaded, a system call of one thread will block the entire process and CPU may be idle during the blocking period.