🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.amiga.tech
Article #6667

Re: Scheduler changed under 2.0?

#6667
From: Peter Cherna
Date: Thu, 15 Nov 1990 15:42
57 lines
3748 bytes
In article <1834c248.ARN04024@adspdk.UUCP> hclausen@adspdk.UUCP writes:
>   I've found that Intuition under 2.0 seems to execute the OpenWindow()
>etc. etc. calls with the priority of the caller. If some task is eating
>away practically all CPU time at a higher priority, the mouse pointer and
>everything else will hang, though the system is certainly alive. I
>encounter this mostly when uniconifying my text editor while doing compiles
>- the OpenScreen() & OpenWindow() calls hang until the compiler accesses
>the disk, thus freeing up some CPU time. This was different under 1.3.

Parts of Intuition run on the caller's task, but much of the interesting
stuff runs on the input.device's task, which runs at priority 20.
Whenever you call a function, you do start out on your own task of course.
In OpenWindow(), for example, most of the checks and allocations happen
on your task (some of it must: the message ports for example, must
be created on your task, since they allocate signal bits from the
running task!).  But internally, Intuition is a bit like a device, so
OpenWindow() eventually sends a message, which input.device (running
as Intuition) picks up, and links your window in on its schedule.

Some Intuition calls happen entirely on your task, some happen nearly
entirely on input.device's task, and some are divided.  Some are synchronous,
and some aren't.  We arrange things as design and historical constraints
dictate.  We let you know this information when it is relevant.  (For example,
after calling ActivateWindow(), your window isn't active until and unless
you hear an ACTIVEWINDOW IDCMP message, because ActivateWindow() is
asynch.

Finally, all the stuff that's asynchronous to the clients of Intuition
(such as moving the mouse, rearranging layers, and some refresh) happens
on the input.device.

>   So, it seems to be Intuition rather than the sceduler that has this
>change. Anyway, Exec wasn't changed much from 1.3 to 2.0 - it did a good
>job under 1.3 already. Intuition, on the other hand, has had much recoding.

Although Intuition has undergone substantial changes in 2.0 (thanks jimm!),
the basic pattern of splitting the work between the caller and input.device
has been in Intuition all along.

Note also that the number of changes a module underwent wasn't strictly
determined by how good a job or how well it was written.  Support for
the 2024 and ECS Denise, for example, meant a lot of work for graphics and
Intuition.

>                                 Have a nice day         -Henrik

As Bryce mentioned earlier, the delays people have been experiencing
are caused by bus errors generated in hardware on the Amiga 3000.  The
nature of the 1.3 SuperKickstart setup on A3000's allows us to supress
these errors.  (Each hardware bus error imposes a 1/4 sec pause).

     Peter
--
     Peter Cherna, Software Engineer, Commodore-Amiga, Inc.
     {uunet|rutgers}!cbmvax!peter    peter@cbmvax.commodore.com
My opinions do not necessarily represent the opinions of my employer.
I have found a proof for Fermat's theorem, but there is no room in the .sig!
Technical Details
Message-ID: <15887@cbmvax.commodore.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!zaphod.mps.ohio-state.edu!unix.cis.pitt.edu!dsinc!bagate!cbmvax!peter
References: <90312.082534GIAMPAL@auvm.auvm.edu> <15756@cbmvax.commodore.com> <90316.091455GIAMPAL@auvm.auvm.edu> <1834c248.ARN04024@adspdk.UUCP>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!zaphod.mps.ohio-state.edu!unix.cis.pitt.edu!dsinc!bagate!cbmvax!peter
From: peter@cbmvax.commodore.com (Peter Cherna)
Newsgroups: comp.sys.amiga.tech
Subject: Re: Scheduler changed under 2.0?
Message-ID: <15887@cbmvax.commodore.com>
Date: 15 Nov 90 15:42:44 GMT
References: <90312.082534GIAMPAL@auvm.auvm.edu> <15756@cbmvax.commodore.com> <90316.091455GIAMPAL@auvm.auvm.edu> <1834c248.ARN04024@adspdk.UUCP>
Reply-To: peter@cbmvax.commodore.com (Peter Cherna)
Organization: Commodore, West Chester, PA
Lines: 57