[comp.os.minix] Minix-ST context switch

egisin@orchid.UUCP (09/14/87)

I saw a message in comp.unix.wizards claiming the ST version
of Minix implements context switching by copying the active process
in and out of a fixed region of memory. Is this true?
It would take about 100 millisecs to copy a 100k process in any out.

I got the impession from an earlier message that copying was
only done for forked (but not exec'd) processes.

Can someone clear this up?

ast@cs.vu.nl (Andy Tanenbaum) (09/16/87)

In article <10647@orchid.waterloo.edu> egisin@orchid.waterloo.edu (Eric Gisin) writes:
>I saw a message in comp.unix.wizards claiming the ST version
>of Minix implements context switching by copying the active process
>in and out of a fixed region of memory. Is this true?
>It would take about 100 millisecs to copy a 100k process in any out.
>

True enough, but the average MINIX process is about 5K, not 100K, so we
are talking 5 msec, not 100 msec.   Also, as soon as the child does an
exec, the funny business is finished and the exec'd core image runs
normally.  After the exec, the parent can be put back where it belongs
and both it and the child are not bothered with the relocation stuff any
more. In practice, the loss in performance is negligible.  This solution
was considered better than generating position independent code, which is
not very efficient.

Andy Tanenbaum (ast@cs.vu.nl)

peter@sugar.UUCP (Peter da Silva) (09/22/87)

Andrew Tannenbaum writes...
> True enough, but the average MINIX process is about 5K, not 100K, so we
> are talking 5 msec, not 100 msec.   Also, as soon as the child does an
> exec, the funny business is finished and the exec'd core image runs
> normally...

What about using the glue chip to relocate logical zero, or do MINIX
processes on the ST run in supervisor mode?
-- 
-- Peter da Silva `-_-' ...!hoptoad!academ!uhnix1!sugar!peter
--                 'U`  Have you hugged your wolf today?

egisin@orchid.UUCP (09/24/87)

In article <790@sugar.UUCP>, peter@sugar.UUCP (Peter da Silva) writes:
> What about using the glue chip to relocate logical zero, or do MINIX
> processes on the ST run in supervisor mode?

What are you talking about? Atari has said the glue chip doesn't do relocation.

jwt@atari.UUCP (Jim Tittsler) (09/24/87)

In article <790@sugar.UUCP>, peter@sugar.UUCP (Peter da Silva) writes:
> What about using the glue chip to relocate logical zero, or do MINIX
> processes on the ST run in supervisor mode?

The Atari ST series have a linear, untranslated address space in both
user and supervisor modes.

Jim Tittsler, Atari Corporation

peter@sugar.UUCP (Peter da Silva) (09/27/87)

OK, already. The ATARI ST does not do address translation. All I have to say
then is that the available documentation is even worse than I thought. Because
that's how I interpreted teh Abacus manual.
-- 
-- Peter da Silva `-_-' ...!hoptoad!academ!uhnix1!sugar!peter
--                 'U`  Have you hugged your wolf today?
-- Disclaimer: These aren't mere opinions... these are *values*.

gert@nikhefh.UUCP (09/30/87)

In article <827@sugar.UUCP> peter@sugar.UUCP (Peter da Silva) writes:
>OK, already. The ATARI ST does not do address translation. All I have to say
>then is that the available documentation is even worse than I thought. Because
>that's how I interpreted teh Abacus manual.
>-- 
>-- Peter da Silva `-_-' ...!hoptoad!academ!uhnix1!sugar!peter
>--                 'U`  Have you hugged your wolf today?
>-- Disclaimer: These aren't mere opinions... these are *values*.


The Atari ST does not have address translation in a form that would be useful
for solving context switch problems. It does however have some form of address
translation. In the ST there are one or two memory banks. When two banks are
present the ST can handle banks of different size, e.g, bank 0 may hold 512KB
and bank 1 may hold 2M. The ''MMU'' then takes care of mapping the banks such
that it appears as one contiguous block of memory.

(-- This is not according to any book, but according to a disassembly of the
 ST roms I made )


Gert Poletiek

NIKHEF-H, Dutch National Institute for Nuclear and High Energy Physics
          Kruislaan 409, P.O.Box 41882, 1009 DB Amsterdam, The Netherlands
UUCP:     {decvax,cernvax,unido,seismo}!mcvax!nikhefh!gert
bitnet:   nikhefh!gert@mcvax.bitnet, U00025@hasara5.bitnet