Subject: Re: 68060-specific scheduler?
To: Konstantinos Margaritis <markos@acropolis.net>
From: Kevin P. Neal <kpneal@pobox.com>
List: port-amiga
Date: 12/17/1996 00:03:46
At 03:35 AM 12/17/96 +0200, Konstantinos Margaritis wrote:
>   Hello,
>   I would like to know what is needed to compile a 68060-specific kernel,
>that will take advantage of the chip -not just disable the incompatible
>characteristics. Surely, there must be other chips that offer superscalar
>pipelining, branch caching, etc. that run NetBSD-1.2. 

I don't think the people doing the work would mind if you helped out.
I myself don't have the foggiest idea what needs to be added to our '060
support.

>I am asking that because
>I think that NetBSD-68060 is not fast enough -judging from compile times
>compared to a Linux-2.0/P90- and perhaps a specific kernel/scheduler would do
>better, not to mention 68060-compiled binaries. Also, the Amiga-coupled with
>Executive- offers a much faster task-switching that any Unix I've seen. Can
>this be replicated to NetBSD?

Can Unix task switch as fast as exec.library?

No. Can it be optimized to do so?

No.

Under AmigaOS, a task switch is:
1) interrupt goes off, program loses the CPU.
2) scheduler pushes the registers of the process onto it's stack.
3) scheduler pops the registers of the next process off of it's stack.
4) return_from_interrupt.

That's it (ok, perhaps a bit more, but this illustrates the point).

Under Unix it's _way_ _way_ more complicated. It involves switching the MMU
state, along with other stuff I'm sure.

Some systems are better at some things than others. Unix is much much more
powerful than AmigaOS, the price is some speed. I can deal, myself.
--
XCOMM Kevin P. Neal, Sophomore, Comp. Sci. -   kpneal@pobox.com
XCOMM     http://www.pobox.com/~kpn/       -   kpneal@eos.ncsu.edu
XCOMM "Comments in code are kinda useless, anyway."
XCOMM   -- Brian Rumple, TA for my OS class, NCSU. November 6,1996