Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!husc6!rutgers!rochester!cornell!uw-beaver!tektronix!
cae780!leadsv!morse
From: mo...@leadsv.UUCP (Terry Morse)
Newsgroups: comp.sys.mac
Subject: Multi-tasking Finder (finally)
Message-ID: <1659@leadsv.UUCP>
Date: Mon, 10-Aug-87 21:34:31 EDT
Article-I.D.: leadsv.1659
Posted: Mon Aug 10 21:34:31 1987
Date-Received: Wed, 12-Aug-87 02:45:03 EDT
Organization: Lockheed, Sunnyvale CA
Lines: 19
Keywords: MacWorld Finder announcement

Read it in the Sunday San Jose Mercury News (8/9/87):

Apple will announce a multi tasking version of the Finder at the Boston
MacWorld Expo.  This is assumed to be in response to IBM's OS/2
vaporware, which will be multitasking.

FINALLY!!!!  Now let's find out the details:

o	is it _really_ multitasking or more like Switcher?

o	which programs cannot be run concurrently?

o	how do we get a copy, and when will it be available?

o	what's the minimum hardware configuration?
-- 

Terry Morse  (408)743-1487
{ hplabs!cae780 } | { ihnp4!sun!sunncal } !leadsv!morse

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!husc6!mit-eddie!gary
From: g...@eddie.MIT.EDU (Gary Samad)
Newsgroups: comp.sys.mac,comp.sys.amiga
Subject: Mac Multitasking? Hee-hee!
Message-ID: <6565@eddie.MIT.EDU>
Date: Thu, 13-Aug-87 18:31:22 EDT
Article-I.D.: eddie.6565
Posted: Thu Aug 13 18:31:22 1987
Date-Received: Sat, 15-Aug-87 10:36:37 EDT
Organization: MIT EE/CS Computer Facility, Cambridge, MA
Lines: 16

I just came back from MacExpo here in Boston and saw their new "Multifinder"
"first generation multitasking" system.  They really have no right to call
this thing multi-tasking.  It gives you print-spooling (even the lowly PeeCee
has print-spooling) and the ability to have several programs open at once
(if they're compatible with Multifinder) but they do NOT run at the same time
unless the program makes "give-up-the-CPU calls" frequently!  That's right,
no time slicing whatsoever.  This is really a joke!  
There are no provisions whatsoever for process spawning, inter-task
communication, or, it appears, even dynamic memory allocation (it appeared
that each program was allocated a fixed ammount of memory, out of which it
could allocate what it needed).

I wonder if Apple is really going to pull the wool over its user's eyes by
advertising "The new Mac multitasking operating system."

	Gary

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!husc6!rutgers!ucla-cs!cit-vax!tybalt.caltech.edu!wetter
From: wet...@tybalt.caltech.edu (Pierce T. Wetter)
Newsgroups: comp.sys.mac,comp.sys.amiga
Subject: Re: Mac Multitasking? Hee-hee!
Message-ID: <3632@cit-vax.Caltech.Edu>
Date: Thu, 13-Aug-87 22:15:41 EDT
Article-I.D.: cit-vax.3632
Posted: Thu Aug 13 22:15:41 1987
Date-Received: Sat, 15-Aug-87 11:56:10 EDT
References: <6565@eddie.MIT.EDU>
Sender: n...@cit-vax.Caltech.Edu
Reply-To: wet...@tybalt.caltech.edu.UUCP (Pierce T. Wetter)
Organization: California Institute of Technology
Lines: 59

In article <6...@eddie.MIT.EDU> g...@eddie.MIT.EDU (Gary Samad) writes:
>I just came back from MacExpo here in Boston and saw their new "Multifinder"
>"first generation multitasking" system.  They really have no right to call
>this thing multi-tasking.  It gives you print-spooling (even the lowly PeeCee
>has print-spooling) and the ability to have several programs open at once
>(if they're compatible with Multifinder) but they do NOT run at the same time
>unless the program makes "give-up-the-CPU calls" frequently!  That's right,
                           ^^^^^^^^^^^^^^^^^^^^^
   This is otherwise known as Dosystick which is called when the current program
is idle i.e. when a background process is waiting for input it doesn't take up
time. Personally, since most mac programs require so much feedback I can't see
where MultiTasking would be useful except in printspooling and telecomm stuff.
   Presently, I am running on a multitasking system and I acutally wish it 
wasn't since it annoys me to have to wait while the computer catches up with
my typing. Additionally, because of the large quantities of information which
have to be swapped around (namely all the lowmemory globals) multi tasking is
impractical without an MMU (Unix gets around this by swapping things off and 
on the hard disk KLUDGE!!!!!!). When Apple releases MultiFinder as a full 
MultiTasking system it will probably only time-slice on the MacII with a 
PMMU.
>There are no provisions whatsoever for process spawning, inter-task
>communication, or, it appears, even dynamic memory allocation (it appeared
>that each program was allocated a fixed ammount of memory, out of which it
>could allocate what it needed).
     InterTask communication in a graphical interface? Not practical for 
two programs to communicate with each other that way. However, if a program
wants to spawn subprocesses the mac has always had that capability it's called
the vertical retrace queue. 
 Actually the Mac does have intertassk comm. Read Inside Mac volume V, 
specifically the Notification Manager.   Again dynamic memory allocation is 
impractical without an MMU unless you wish
to have processes writing into each others memory (wouldn't it be lovely if
every time a program in Unix crashed it brought down everyone else too?)
>I wonder if Apple is really going to pull the wool over its user's eyes by
>advertising "The new Mac multitasking operating system."
>
      Well, since it won't be out until September we'll have to see won't we.
However, isn't allowing print-spooling and telecomm in background multi-tasking?
What is the practical purpose in running dark castle and MacDraw at the same
time since they both require continuous input?

FLAME ON
   I notice in the message header that you are posting to both the amiga
and mac newsgroups. Why? If you are a Mac user why are you bothering the 
amiga owners with mac news? if you are an amiga user why are you posting 
mac news since you probably don't know enough about the mac for your comments
to be relevant anyways? Regardless why do amiga people care about MultiFinder?
FLAME OFF

   PIerce Wetter
Brooke's Law:
	Whenever a system becomes completely defined, some damn fool
	discovers something which either abolishes the system or
	expands it beyond recognition.

--------------------------------------------

wet...@tybalt.caltech.edu

--------------------------------------------

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!rutgers!ames!sdcsvax!ucbvax!hoptoad!tim
From: t...@hoptoad.uucp (Tim Maroney)
Newsgroups: comp.sys.mac,comp.sys.amiga
Subject: Re: Mac Multitasking? Hee-hee!
Message-ID: <2742@hoptoad.uucp>
Date: Thu, 13-Aug-87 23:52:46 EDT
Article-I.D.: hoptoad.2742
Posted: Thu Aug 13 23:52:46 1987
Date-Received: Sat, 15-Aug-87 14:30:41 EDT
References: <6565@eddie.MIT.EDU>
Reply-To: t...@hoptoad.UUCP (Tim Maroney)
Organization: Centram Systems, Berkeley
Lines: 6

MultiFinder version 1 does not have time-slicing.  However, it will in the
future.  In any case, since Mac programs are so heavily interface-driven,
time-slicing is not a particularly great requirement.
-- 
Tim Maroney, {ihnp4,sun,well,ptsfa,lll-crg,frog}!hoptoad!tim (uucp)
hoptoad!tim@lll-crg (arpa)

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!utgpu!water!watmath!clyde!rutgers!ucla-cs!cit-vax!tybalt.caltech.edu!
walton
From: wal...@tybalt.caltech.edu.UUCP
Newsgroups: comp.sys.mac,comp.sys.amiga
Subject: Re: Mac Multitasking? Hee-hee!
Message-ID: <3638@cit-vax.Caltech.Edu>
Date: Fri, 14-Aug-87 03:53:02 EDT
Article-I.D.: cit-vax.3638
Posted: Fri Aug 14 03:53:02 1987
Date-Received: Sat, 15-Aug-87 16:21:32 EDT
References: <6565@eddie.MIT.EDU> <2742@hoptoad.uucp>
Sender: n...@cit-vax.Caltech.Edu
Reply-To: wal...@tybalt.caltech.edu.UUCP (Steve Walton)
Organization: California Institute of Technology
Lines: 18

In article <2...@hoptoad.uucp> t...@hoptoad.UUCP (Tim Maroney) writes:
>MultiFinder version 1 does not have time-slicing.  However, it will in the
>future.  In any case, since Mac programs are so heavily interface-driven,
>time-slicing is not a particularly great requirement.

You mean if I want to do some editing while Mac C Kermit is downloading
a 150K file for me at 1200 baud, I have to go to another machine?  I
can't type "make" in a CLI window and then go off and play a game?
Humph...
   Look, can we all agree that it was unfair of Gary Samad to tweak the
Mac owners about their lack of multitasking, AND that the Mac
defenders' postings so far (Tim Maroney's and Pierce Wetter's) show little
understanding of the Amiga's capabilities?  Let's nip this thing in the
bud before the net explodes with another religious war.

    Steve Walton, guest as wal...@tybalt.caltech.edu
    AMETEK Computer Research Division, ametek!wal...@csvax.caltech.edu
"Long signatures are definitely frowned upon"--USENET posting rules

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!rutgers!ucla-cs!zen!ucbvax!hplabs!pyramid!
voder!apple!lsr
From: l...@apple.UUCP (Larry Rosenstein)
Newsgroups: comp.sys.mac
Subject: Re: Multi-tasking Finder (finally)
Message-ID: <1478@apple.UUCP>
Date: Fri, 14-Aug-87 19:07:58 EDT
Article-I.D.: apple.1478
Posted: Fri Aug 14 19:07:58 1987
Date-Received: Sun, 16-Aug-87 07:11:23 EDT
References: <1659@leadsv.UUCP>
Reply-To: l...@apple.UUCP (Larry Rosenstein)
Organization: Advanced Technology Group, Apple Computer
Lines: 90
Keywords: MacWorld Finder announcement

In article <1...@leadsv.UUCP> mo...@leadsv.UUCP (Terry Morse) writes:
>
>o	is it _really_ multitasking or more like Switcher?

It works much like Switcher.  Whether or not you consider that multitasking
is up to you.  

Some improvements over Switcher:

If you try to Restart (in the Finder) and have application open, Multifinder
will try to Quit from them automatically.  (It tries to locate a Quit
command, and "coerces" the application into running it.)

Application that are written with Multifinder in mind can make certain calls
to it.  For example, the new Finder will run in a very small amt of memory
(~160K), but when you do a disk copy, it asks Multifinder to allocate some
unused memory.

Another Multifinder call you can make is WaitNextEvent.  It is like
GetNextEvent except that the application will be suspended until an event is
actually available.  There are other parameters to allow the application to
get a null event after a certain time, and if the mouse leaves a certain
area. 

You configure Multifinder from the Finder.  Under Set Startup you have the
option of using Multifinder or not.  You can also have Multifinder startup
and automatically open any combinations of documents (not just
applications) and DAs

Under Get Info, you can set the amt of memory assigned to an application.

The System Heap under Multifinder is dynamically resizable.  All resources
that come from the System file are loaded into the System Heap.  This
includes fonts and DAs.  This means, for example, that DAs don't go away
when you launch an application.

Programs that implement sublaunching according to the recent Tech Note (eg,
MPW 2.0) will work under Multifinder and will result in launching a new
process.  For example, if you are using MPW, you can run an application and
still have MPW available in a separate process.

>o	which programs cannot be run concurrently?

Most applications that were compatible with Switcher will be compatible with
Multifinder.  (According to one of the Multifinder people, there are
applications that did not work with Switcher but DO work with Multifinder,
and vice versa.)

>o	how do we get a copy, and when will it be available?

It will be available in a month or so.  There will be a $49 package you can
buy which will give you 4 diskettes and documentation.  The 4 diskettes will
have installer scripts for the new System Software and printers, and will
have the latest versions of Font/DA Mover, etc.  

>o	what's the minimum hardware configuration?

You need 1Mb and 128K ROMs or later.  More memory will allow you to run
more application simultaneously.  With Multifinder 1.0b6 (the latest so
far), you have about 570K left over when running on a Mac Plus with 1Mb.
The actual amount will depend on the number of fonts/DAs/etc. you have.
(This number was derived by booting the Multifinder disk itself, which has a
minimal set of fonts & DAs.)

It is definitely worthwhile to use Multifinder on a 1Mb machine, because it
makes going back to the Finder very fast.  Also, there is no need for the
DAs that manipulate files, because the Finder is always around.

People argue that Multifinder is not "real" multitasking because it uses
non-preemptive scheduling.  I consider that a matter of semantics and don't
want to argue the point.  I do want to make 1 point: 

Despite its name, Multifinder is really an extension to the operating
system, and it was designed and implemented by people with O/S backgrounds.
One of their goals was to design a very solid O/S, rather than hack together
something that worked.  

Multifinder is described in the press release as the first-generation
multitasking Mac O/S.  This implies that there will be future releases that
include features such as pre-emptive scheduling, IPC, etc.  

-- 
Larry Rosenstein

Object Specialist
Apple Computer

AppleLink: Rosenstein1
UUCP:  {sun, voder, nsc, mtxinu, dual}!apple!lsr
CSNET: l...@Apple.com

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!rutgers!ames!ucbcad!ucbvax!hoptoad!tim
From: t...@hoptoad.uucp (Tim Maroney)
Newsgroups: comp.sys.mac,comp.sys.amiga
Subject: Re: Mac Multitasking? Hee-hee!
Message-ID: <2758@hoptoad.uucp>
Date: Sat, 15-Aug-87 22:14:22 EDT
Article-I.D.: hoptoad.2758
Posted: Sat Aug 15 22:14:22 1987
Date-Received: Sun, 16-Aug-87 12:15:10 EDT
References: <6565@eddie.MIT.EDU> <2742@hoptoad.uucp> <3638@cit-vax.Caltech.Edu>
Reply-To: t...@hoptoad.UUCP (Tim Maroney)
Organization: Centram Systems, Berkeley
Lines: 45

In article <3...@cit-vax.Caltech.Edu> wal...@tybalt.caltech.edu.UUCP 
(Steve Walton) writes:
>>In any case, since Mac programs are so heavily interface-driven,
>>time-slicing is not a particularly great requirement.
>
>You mean if I want to do some editing while Mac C Kermit is downloading
>a 150K file for me at 1200 baud, I have to go to another machine?  I
>can't type "make" in a CLI window and then go off and play a game?
>Humph...

Well, as long as the downloading loop cedes control of the processor every
time through, a trivial code change, then synchronous multitasking will
serve this end quite well.  I'm not clear on how MultiFinder handles modal
dialogs (the documentation we've been seeded with is rather deficient), but
I believe it will let you change context during them.  Anyway, it's pretty
easy to make the download run in the background.  The same goes for any
other special-purpose long-lived operation, like Save; but most of what you
do on the Mac doesn't make any sense in the background.  That's why I said
that time-slicing is not such a big deal.

By the way, since games consume most of the CPU on the Mac, I really doubt
that you particularly want to slow down your compiles and screw up your
game's timing that way.

>   Look, can we all agree that it was unfair of Gary Samad to tweak the
>Mac owners about their lack of multitasking, AND that the Mac
>defenders' postings so far (Tim Maroney's and Pierce Wetter's) show little
>understanding of the Amiga's capabilities?  Let's nip this thing in the
>bud before the net explodes with another religious war.

I understand multitasking perfectly well, having rewritten a synchronous
multitasking system on the Mac, gotten a good way into writing an
asynchronous one before my boss insisted I do something useful, and munged
around extensively in the UNIX kernel.  I don't think you understand the Mac
very well, frankly.  You don't need time-slicing with a notebook and pen,
and for 95% of the things on the Mac you don't need it, either.  For the
remaining 5%, MultiFinder makes it pretty easy to write them so they can run
in the background, even in current versions.  No coroutines, asynchronous
notifications, or other weird code structures, just periodically giving up
control of the processor.  For something like a download or save, it ought
to be nearly trivial.  For computation-intensive processing, presumably you
don't want to slow things down to that extent anyway, whether through
synchronous or asynchronous interruptions.
-- 
Tim Maroney, {ihnp4,sun,well,ptsfa,lll-crg,frog}!hoptoad!tim (uucp)
hoptoad!tim@lll-crg (arpa)

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!rutgers!labrea!rocky!ali
From: a...@rocky.STANFORD.EDU (Ali Ozer)
Newsgroups: comp.sys.mac
Subject: Re: Mac Multitasking
Message-ID: <496@rocky.STANFORD.EDU>
Date: Sun, 16-Aug-87 12:59:50 EDT
Article-I.D.: rocky.496
Posted: Sun Aug 16 12:59:50 1987
Date-Received: Sun, 16-Aug-87 22:45:40 EDT
References: <6565@eddie.MIT.EDU> <2742@hoptoad.uucp> <3638@cit-vax.Caltech.Edu> 
<2758@hoptoad.uucp>
Reply-To: a...@rocky.UUCP (Ali Ozer)
Organization: Stanford University Computer Science Department
Lines: 63

In article <2...@hoptoad.uucp> t...@hoptoad.UUCP (Tim Maroney) writes:
>Well, as long as the downloading loop cedes control of the processor every
>time through, a trivial code change, then synchronous multitasking will
>serve this end quite well. ...
>   I don't think you understand the Mac
>very well, frankly.  You don't need time-slicing with a notebook and pen,
>and for 95% of the things on the Mac you don't need it, either.  For the
>remaining 5%, MultiFinder makes it pretty easy to write them so they can run
>in the background, even in current versions.  No coroutines, asynchronous
>notifications, or other weird code structures, just periodically giving up
>control of the processor.  For something like a download or save, it ought
>to be nearly trivial.  For computation-intensive processing, presumably you
>don't want to slow things down to that extent anyway, whether through
>synchronous or asynchronous interruptions.

I think I understand the Mac, so I will reply to this one...

The multitasking we Amiga users talk about is the kind of 
multitasking that sits there waiting for you to need it. It's not the
kind of multitasking that the programmer or the user has to
prepare for. Any computer (even the C64) can be made to print in the 
background, but no programmer of user will take the time to do all the work,
because it requires extra effort. Same with most Mac user's attitude towards
multitasking --- They think it requires extra work, or means your programs
will run twice as slow...

Right now, as I'm typing this, I'm running VideoScape 3D, a *computationaly
expensive* 3D graphics program. When I started running the program, I had
no intention of reading news. But then I decided to create a 100-frame
animation, and a pretty hairy one, one that's going to take about 20 minutes.
After watching it go through the first 3 frames, I decided it was a waste
of time, so I simply went to my CLI window and ran VT100, and here I am.
VideoScape is running at priority -5, while VT100 is running at 0, so 
I feel absolutely no slowdown it my typing. But, VideoScape is already at
frame 40, so it's running fine. Maybe a few percent slower, but hey, I got
to browse through comp.sys.mac in the meantime, not an easy feat!
(And when I say "few percent," I do mean 2 or 3 percent, not 20 percent.
Amazing how little CPU typing requires.)  

I did not need to "change a few lines in my code," nor I did not need to
decide before had that I was going to run VT100 during VideoScape.

Then there's the programmers life. Think how much better Mac programs
would be if you had multitasking. Those convoluted loops to get events!
How you have to make sure everything gets done everytime through your loop.
How CPU-intensive routines seem to step on user's input! Etc..
With "true" multitasking, an ordinary program can start up any portion
of itself (say a function or a procedure) as a seperate task. The code
is not duplicated, it just starts running as a task which either dies when
the parent things it's had enough of a life, or when it hits its
end. Just think about it, Mac programmers, if you had that ability, how
much better your programs would look and how much better you would feel
not having to do convoluted things... And to the person who said "you
don't need messages in a graphics environment" --- well, what better way to 
get the tasks in a situation like this talking? 

I appreciate Apple's effort in trying to get the Mac to multitask --- what
I don't understand is how they call these current attempts (like the
Switcher and now the Multifinder) "multitasking". 

Ali Ozer, a...@rocky.stanford.edu

[Wow I'm upto frame 62.]

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!husc6!think!ames!lll-tis!lll-lcc!pyramid!voder!apple!lsr
From: l...@apple.UUCP (Larry Rosenstein)
Newsgroups: comp.sys.mac
Subject: Re: Mac Multitasking
Message-ID: <1544@apple.UUCP>
Date: Wed, 19-Aug-87 21:00:37 EDT
Article-I.D.: apple.1544
Posted: Wed Aug 19 21:00:37 1987
Date-Received: Sat, 22-Aug-87 07:22:29 EDT
References: <6565@eddie.MIT.EDU> <2742@hoptoad.uucp> <3638@cit-vax.Caltech.Edu> 
<2758@hoptoad.uucp> <496@rocky.STANFORD.EDU>
Reply-To: l...@apple.UUCP (Larry Rosenstein)
Organization: Advanced Technology Group, Apple Computer
Lines: 43

In article <4...@rocky.STANFORD.EDU> a...@rocky.UUCP (Ali Ozer) writes:
>
>I did not need to "change a few lines in my code," nor I did not need to
>decide before had that I was going to run VT100 during VideoScape.

It turns out that some existing programs will run without change in the
background under Multifinder.  There are programs that were written to
allow user interaction (menus choices, etc.) while it is off computing.
The most common way of doing this is to poll for events while processing
and handle the event normally when one comes in.

Multifinder will do a process switch at these times.  All that is necessary
is that Multifinder be told that the application can run in the background,
which is indicated by a bit in a resource.  (The Multifinder people tried
this with one public domain program and it worked fine.)

>I appreciate Apple's effort in trying to get the Mac to multitask --- what
>I don't understand is how they call these current attempts (like the
>Switcher and now the Multifinder) "multitasking". 

You can say that the multitasking in Unix or the Amiga O/S is more
advanced, but you cannot say that Multifinder is not multitasking.
Multitasking is the ability to run 2 processes (apparently) at the same
time, which is something Multifinder can do.

It is true that Multifinder 1.0 uses non-preemptive scheduling as opposed
to preemptive scheduling used by the Amiga or Unix.  This means that
applications have to be cooperative in order to run in the background.

From the end user's point of view, the result is the same; you can have
your computer do more than one thing at a time.  The vast majority of users
could care less how it works inside.  The difference between Multifinder and
the Amiga O/S is subtle and something that many users won't understand.

-- 
Larry Rosenstein

Object Specialist
Apple Computer

AppleLink: Rosenstein1
UUCP:  {sun, voder, nsc, mtxinu, dual}!apple!lsr
CSNET: l...@Apple.com