Weak Thread Support: Linux Weakness ?

Weak Thread Support: Linux Weakness ?

Post by Tim Bas » Wed, 29 Nov 1995 04:00:00



The next generation netstuff seems to be moving into the Java
world.  Java requires a multithreaded environment.  Linux is
very weak in the multithread arena.

Is this an omen?  Or a wake up call?

Tim

--
+--------------------------------------------------------------------------+
| Tim Bass                           | #include<campfire.h>                |
| Principal Network Systems Engineer |       for(beer=100;beer>1;beer++){  |
| The Silk Road Group, Ltd.          |           take_one_down();          |
|                                    |           pass_it_around();         |
| http://www.silkroad.com/           |       }                             |
|                                    |  back_to_work(); /*never reached */ |
+--------------------------------------------------------------------------+

 
 
 

Weak Thread Support: Linux Weakness ?

Post by William S. Gribb » Wed, 29 Nov 1995 04:00:00



Quote:> The next generation netstuff seems to be moving into the Java
> world.  Java requires a multithreaded environment.  Linux is
> very weak in the multithread arena.

I think that you're speaking from ignorance.  There are at least two
implementations of the POSIX thread API for Linux, one of which (Chris
Provenzano's MIT PThreads) I have been using for a couple of years in
a distributed object system for real-time vision research.  What kind
of ``multithreaded environment'' is it that Linux doesn't have?

It would be nice if Linux had kernel threads, but on a non-SMP machine
it just doesn't matter as far as performance.  POSIX threads are what
every other UNIX either has or is moving towards, and that's good enough
for Java.  

Quote:> Is this an omen?  Or a wake up call?

Maybe it's a wake-up call if you don't know what's already out there :)

Bill Gribble

 
 
 

Weak Thread Support: Linux Weakness ?

Post by Tim Bas » Fri, 01 Dec 1995 04:00:00



Bill Gribble must be practicing how to be pedantic without really
trying...

First he decides to launch a flame....

Bill:

I think that you're speaking from ignorance.  There are at least two
: implementations of the POSIX thread API for Linux, one of which (Chris
: Provenzano's MIT PThreads) I have been using for a couple of years in
: a distributed object system for real-time vision research.  What kind
: of ``multithreaded environment'' is it that Linux doesn't have?

Then he states that Linux does not have kernel thread, which was the
basis of my original question.

Bill again:

: It would be nice if Linux had kernel threads, but on a non-SMP machine
: it just doesn't matter as far as performance.  POSIX threads are what
: every other UNIX either has or is moving towards, and that's good enough
: for Java.  

Then, Bill finishes with another pointless dribble...

Bill:

: Maybe it's a wake-up call if you don't know what's already out there :)

What every happened to the days when jerks like this were not a part
of the comp.os.linux.* groups.  

Please Mr. Gribble, take your pedantic, *attitude elsewhere, OR
just don't answer questions.  If you don't have a nice answer, just
don't answer.

Best Regards,

Tim

: Bill Gribble

--
+--------------------------------------------------------------------------+
| Tim Bass                           | #include<campfire.h>                |
| Principal Network Systems Engineer |       for(beer=100;beer>1;beer++){  |
| The Silk Road Group, Ltd.          |           take_one_down();          |
|                                    |           pass_it_around();         |
| http://www.veryComputer.com/;         |       }                             |
|                                    |  back_to_work(); /*never reached */ |
+--------------------------------------------------------------------------+

 
 
 

Weak Thread Support: Linux Weakness ?

Post by Chris Ada » Fri, 01 Dec 1995 04:00:00


-----BEGIN PGP SIGNED MESSAGE-----



>First he decides to launch a flame....

I don't see much of a flame here.  You said in your post that Linux is
weak in the thread area, which it isn't, so he corrected you.  If you
call this a flame, you need to line your terminal with a little more
asbestos.

Quote:>Bill:

>I think that you're speaking from ignorance.  There are at least two
>: implementations of the POSIX thread API for Linux, one of which (Chris
>: Provenzano's MIT PThreads) I have been using for a couple of years in
>: a distributed object system for real-time vision research.  What kind
>: of ``multithreaded environment'' is it that Linux doesn't have?

>Then he states that Linux does not have kernel thread, which was the
>basis of my original question.

You conveniently deleted your original post, that said NOTHING about
kernel threads.  Here is YOUR post:

- --
The next generation netstuff seems to be moving into the Java
world.  Java requires a multithreaded environment.  Linux is
very weak in the multithread arena.

Is this an omen?  Or a wake up call?

Tim
- --

Bill's response answers your question.

Linux is NOT 'very weak in the multithread arena.'  There are a couple
of implimentations of threads.  Yes, there are no kernel threads, but as
Bill pointed out,

Quote:>Bill again:

>: It would be nice if Linux had kernel threads, but on a non-SMP machine
>: it just doesn't matter as far as performance.  POSIX threads are what
>: every other UNIX either has or is moving towards, and that's good enough
>: for Java.  

Then you end up with:

Quote:>What every happened to the days when jerks like this were not a part
>of the comp.os.linux.* groups.  

>Please Mr. Gribble, take your pedantic, *attitude elsewhere, OR
>just don't answer questions.  If you don't have a nice answer, just
>don't answer.

You seem to be the jerk here.  You ask a kind of vague question with
false assumptions, someone tries his best to answer you, and then you
flame him for trying.

By the way, I don't think Java requires a multithreaded environment,
since it works under Netscape 2.0b3.  I don't remember (I could be wrong
here, but) an a.out version of any threads package, so unless Netscape
implemented their own version of threads for Linux (unlikely, since they
claim not to support Linux), Java can be done without threads.  Now, it
might could be done more _efficiently_, but that is another story.

-----BEGIN PGP SIGNATURE-----
Version: 2.6.2

iQEVAwUBML6DxyJFQNhhNdm5AQHPbAf9EcR+Zy9DiemD5Zq48+qvZtGrp436kn00
QFrZdLWAQjJOvrMX2fd5BGNLcA5E9pPqDWsgNeixkj3+e8dSItQEOSS0B+Z4JFzk
eMugvSTvX1di1aATzohdYMiO40AmyaYljvtBVI153X25r0gIsaD7/fwbKxy+T0kl
gO/H88yvcFahh3GRvMJjYDgzfj3ODKzI8+GZMjayoI5lfDB6vmdEMS6mflQ54wVi
tRE5YDGPYgy3OVzEAWTIZkTgFLBDSMyd4CMjIE5v0KXIX29YcQ0/lM1fSzmtSddK
33MikeQHxHoq8pqBe4qm2+IbgyYo/iTCZympGBxtFYIOCThAWREVpw==
=XOIX
-----END PGP SIGNATURE-----
--

"So, if anybody wants to have hardware sent to them: don't call me, but
instead write your own unix operating system.  It has worked every time
for me." - Linus Torvalds, author of Linux (Unix-like) OS

 
 
 

Weak Thread Support: Linux Weakness ?

Post by Thomas Koen » Fri, 01 Dec 1995 04:00:00



>The next generation netstuff seems to be moving into the Java
>world.  Java requires a multithreaded environment.  Linux is
>very weak in the multithread arena.

Check out the clone() system call, and tell me wether Linus has
fixed it so far that it's usable, yet - he was getting there
the last time I asked :-)
--

The joy of engineering is to find a straight line on a double
logarithmic diagram.
 
 
 

Weak Thread Support: Linux Weakness ?

Post by Michael T. Peterso » Sun, 10 Dec 1995 04:00:00



>The next generation netstuff seems to be moving into the Java
>world.  Java requires a multithreaded environment.  Linux is
>very weak in the multithread arena.

What's weak about it?

/mtp
--
   +-----------------------------------------------------------------------+
   | Michael T. Peterson  | For the latest status on DCE and POSIX threads |

   +-----------------------------------------------------------------------+

 
 
 

Weak Thread Support: Linux Weakness ?

Post by Jeff Garz » Tue, 12 Dec 1995 04:00:00



Quote:>The next generation netstuff seems to be moving into the Java
>world.  Java requires a multithreaded environment.  Linux is
>very weak in the multithread arena.

Er...

1) Java doesn't require a multithreaded environment.  How do you think
NetScape put out a SunOS version?

2) Linux has kernel threads.  1.3.xx has seen some serious work on the
clone() call and its semantics.

        Jeff

 
 
 

Weak Thread Support: Linux Weakness ?

Post by Tim Bas » Wed, 13 Dec 1995 04:00:00




: >The next generation netstuff seems to be moving into the Java
: >world.  Java requires a multithreaded environment.  Linux is
: >very weak in the multithread arena.

: What's weak about it?

Weak meaning that multithreaded kernel hooks were not built into
the original linux kernel.  The last time I spoke to Linus, he
stated directly that the architecture of linux was not optimal
for multithreaded applications.  

Tim

: /mtp
: --
:    +-----------------------------------------------------------------------+
:    | Michael T. Peterson  | For the latest status on DCE and POSIX threads |

:    +-----------------------------------------------------------------------+

--
+--------------------------------------------------------------------------+
| Tim Bass                           | #include<campfire.h>                |
| Principal Network Systems Engineer |       for(beer=100;beer>1;beer++){  |
| The Silk Road Group, Ltd.          |           take_one_down();          |
|                                    |           pass_it_around();         |
| http://www.silkroad.com/           |       }                             |
|                                    |  back_to_work(); /*never reached */ |
+--------------------------------------------------------------------------+

 
 
 

Weak Thread Support: Linux Weakness ?

Post by Michael T. Peterso » Wed, 13 Dec 1995 04:00:00





>: >The next generation netstuff seems to be moving into the Java
>: >world.  Java requires a multithreaded environment.  Linux is
>: >very weak in the multithread arena.

>: What's weak about it?

>Weak meaning that multithreaded kernel hooks were not built into
>the original linux kernel.  The last time I spoke to Linus, he
>stated directly that the architecture of linux was not optimal
>for multithreaded applications.  

>Tim

I thought that's what you meant, and therefore I still am in the dark:  Do
you mean weak in the semantic sense, e.g., you believe that Linux threading
packages are not able to deliver POSIX semantics?  I hope you are aware that
kernel thread support are *NOT* required in order to express conformant
semantics, and I am aware of at least 3 packages for Linux that deliver
*strong* thread semantics.

On the other hand, Perhaps you are referring to semantics that do not exist
in POSIX .1c and *should* be?  Here you have a strong case.  POSIX is a
very primitive API (abstracts and extends the kernel interface, if one
exists) and many argue that it didn't go far enough.  Take a look at
NT's (and OS/2's) threading model.  They miss some of the POSIX stuff,
but add some other interesting capabilities.

Also, you may might want to pose the question of what it takes to have
strongly conforming semantics over to comp.programming.threads.  Lots of
opinions can be had for very little effort.  [;-)

Cheers,

/mtp

--
   +-----------------------------------------------------------------------+
   | Michael T. Peterson  | For the latest status on DCE and POSIX threads |

   +-----------------------------------------------------------------------+

 
 
 

1. Linux/Glibc weak process/thread initialization symbols...

Hi all,

On many systems there are weak symbols defined in the C library that,
when resolved, get called before main(). Some systems define similar
functions before threads begin execution as well. My question is this:

I'd like to call a routine in a library before the process is actually
started. I noticed that libSegFault.so appears to have this
functionality. And no, I don't want to use C++ just in order to use the
initializer class. Currently, I'm doing a LD_PRELOAD and 'stealing'
getpid() to do what I need to do. However, I'd much rather do it
'legally' using the intended hooks. The problem is, I can't find them
anywhere? I'm sure they must exist.

Thanks for any help,

-Phil

2. Problems with variable substitution in C-Shells

3. logadm: Sun shows it's weak now, very weak

4. Mounting a Zip drive on a parallel port?

5. Threads in linux versus threads in NT and threads in Solaris.

6. video for X

7. ftp problem - access denied

8. Toshiba Tecra 8100 Bad Bad OpenGL support + weak Direct3D

9. Runaway Linux processes-Native Posix Threading Library- Old linux threads

10. Threads, threads, threads

11. Linux's Only Weakness

12. A weakness with Linux