Newsgroups: comp.lang.c++,comp.lang.smalltalk,comp.object
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!howland.reston.ans.net!spool.mu.edu!torn!nott!cunews!tina.mrco.carleton.ca!knight
From: knight@mrco.carleton.ca (Alan Knight)
Subject: Re: c++, smalltalk, and real-time
X-Nntp-Posting-Host: tina.mrco.carleton.ca
Message-ID: <knight.798595885@tina.mrco.carleton.ca>
Sender: news@cunews.carleton.ca (News Administrator)
Reply-To: knight@mrco.carleton.ca (Alan Knight)
Organization: The Object People
References: <3mjk4m$ijf@news.Belgium.EU.net> <D73I6G.KMC@world.std.com> <patrick_d_logan.2.00163EC9@ccm.jf.intel.com> <D74s1F.CL4@world.std.com>
Date: Sun, 23 Apr 1995 00:11:25 GMT
Lines: 36
Xref: glinda.oz.cs.cmu.edu comp.lang.c++:124513 comp.lang.smalltalk:22947 comp.object:29882

In <D74s1F.CL4@world.std.com> edwards@world.std.com (Jonathan Edwards) writes:
>The problems of retrofitting true multithreading into a single-threaded
>ST VM are enormous. And the issues of how to parallelize GC (without which the
>whole idea is moot) is a matter of active research.

>This is a basic technical disadvantage of Smalltalk in comparison with C++,
>and will not go away soon. Don't get me wrong: I am not advocating C++, I just
>wish I could do multithreading in Smalltalk, and I wish people would stop
>confusing the issue.

Well, there are certainly problems, but they are not insoluble or even
unsolved. OTI has had a multiprocessor Smalltalk for various real-time
operating systems for quite some time, in which Smalltalk processes
are mapped to operating system threads. Although this is not a
commercial product in that you can't buy it shrink-wrapped, it is
closely associated with IBM Smalltalk. I would expect that if IBM
really wanted to use operating system threads it would take relatively
little time to get it adapted.

Part of the reason this is not done is that it makes it much harder to
have a portable process model. Since the largest platform for
deployment (Windows 3.1) doesn't have threads at all, it's useful to
ahve a Smalltalk-provided model. They actually work pretty well, and
if you have the ability to spawn OS calls in separate threads, the
only serious disadvantage is the inability to fully exploit
multiprocessor machines. Since these are still quite rare, this hasn't
been as much of an issue.

OTI's technology was already pointed out on this thread, but you
appear to have ignored it.

-- 
 Alan Knight                | The Object People
 knight@acm.org             | Smalltalk and OO Training and Consulting
 alan_knight@mindlink.bc.ca | 509-885 Meadowlands Dr.
 +1 613 225 8812            | Ottawa, Canada, K2C 3N2
