[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: beagle compiler



Andy McFadden wrote:
mdj <mdj.mdj@gmail.com> wrote:

The biggest performance problem with the Pascal system was character
device IO, since such a request went through the p-code based OS to a
pluggable device mapper, and then onto the actual device driver.
Replacing the console driver with a direct-to-80 column card driver in
assembly made massive performance differences.


You just reminded me of how annoying the Orca shell was for me to deal with
when writing HardPressed.  GS/OS came with a fancy new console driver,
and Orca used it.  Which was great, except that the shell commands wrote
one character at a time.

Since HardPressed intercepts all GS/OS calls, the overhead added to figure
out if something was accessing a HardPressed-managed file was added to
every character output by the Orca shell.  I jumped through some hoops
to optimize it, but there's only so much you can do.

The net result was that the APW shell was noticeably faster for things
like getting directory listings, and was even more noticeably faster when
HardPressed was enabled.

I've always been annoyed by systems that funnel all calls for *all*
services through a tiny gateway, then break out to individual service
calls on the other side.

This is an obvious place for a more efficient, hardware-supported,
multi-entry point interface that would allow frequent, simple services
to be handled extremely efficiently.

The only "cost" is a slightly more complex scheme for intercepting
all system calls.

-michael

New, faster SUDOKU v2.0 solver for Apple II's!
Home page:  http://members.aol.com/MJMahon/

"The wastebasket is our most important design
tool--and it's seriously underused."