Hi, Threads on Linux are a lot different from other OSes.
1) Linux threads are NOT kernel level threads but user level threads. That means while the thread is running in a multithreaded program, the kernel DOES NOT know whether a process is running or a thread is running.
2) Though linux supports a lot of mechanisms absolutely essential for multithreaded mechanisms like mutexes, spin locks; it still has a lot of problems as far as porting of multithreaded applications to Linux is concerned.
3) While other TRUE UNIXes like SUN SOLARIS, DEC UNIX, HPUX have support for recognizing mutexes across the process boundries, becoz of the abv mentioned limitations, Linux cannot recognize them. So multithreaded multiprocessing application written for Solaris might not compile on Linux.
4) SOme pointers on Linux threads: go to redhat.com and give query "PORTING SOLARIS THREADS". There are some nice white papers published which describe the limitations of Linux threads.
--- Manish Jethani cruisecoder@yahoo.com wrote:
What's the bad thing about threads on Linux? How is multi-threading on Linux different from other OSes?
Tnx.
Manish
-- A billion here, a billion there -- pretty soon it adds up to real money. -- Sen. Everett Dirksen, on the U.S. defense budget
Next Online IRC LUG Meet on 31st Aug @ 4:30pm http://mm.ilug-bom.org.in/mailman/listinfo/linuxers
===== rgds, Aditya N. ---------------------- Junior Research Fellow, Department of Computer Science & Engineering, Indian Institute of Technology, Powai, Mumbai, 400076.
__________________________________________________ Do You Yahoo!? Get email alerts & NEW webcam video instant messaging with Yahoo! Messenger http://im.yahoo.com
Sometime today, aditya newalkar wrote:
- Linux threads are NOT kernel level threads but user
level threads. That means while the thread is running
Tnx a lot. Now I want to see how pthreads really works. Will check the link (redhat.com).
Manish