🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Having your cake (Re: Address Space on the Amiga (was Re: Need info on exceptions))

#9664
From: Randell Jesup
Date: Thu, 01 Sep 1988 08:55
36 lines
2170 bytes
In article <2582@sugar.uu.net> peter@sugar.uu.net (Peter da Silva) writes:
>This started out as a response to a message about message passing, and
>I think it's worth kicking around for a while:
>
>Here's my solution.
>
>	(a) MMAP the same for kernel and user processes.
>	(b) Drivers, etc... run at TRANSFER privilege (== kernel or supervisor)
>	(c) MEMF_PRIVATE is write-protected. MEMF_PUBLIC isn't.
>	(d) There is a system call to raise you to TRANSFER privilege.

	Exactly as I had deduced.

>First thing to note... drivers already do a copy in the Amiga because (1)
>the system calls don't require block alignment, and (2) the driver uses the
>blitter to generate and decode MFM, so data outside MEMF_CHIP has to be copied
>anyway.

	There are a lot of other drivers, not all require that.

>If you want another program to get at your data, you make it MEMF_PUBLIC.
>Otherwise, it's MEMF_PRIVATE. Drivers can get to MEMF_PRIVATE, but only
>because there are programs out there that pass statically allocated data
>to drivers. New programs won't do this, we hope.

	Here's the killer:  the default of MEMF_PRIVATE will kill 
innumerable programs, including most of the current RKM example programs.
There may have to be a (NEWSTYLE/OLDSTYLE) flag on a pre-process basis 
to set the default for the process.

	Also, due to MMU constraints, big mods to AllocMem will be needed.
Each program will need a private pool of private mem, to avoid frequent
re-maps and granularity problems.  Public mem would be one big pool.

-- 
Randell Jesup, Commodore Engineering {uunet|rutgers|allegra}!cbmvax!jesup
Technical Details
Message-ID: <4625@cbmvax.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!ames!lll-lcc!pyramid!cbmvax!jesup
References: <8808311759.AA19249@cory.Berkeley.EDU> <2582@sugar.uu.net>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!ames!lll-lcc!pyramid!cbmvax!jesup
From: jesup@cbmvax.UUCP (Randell Jesup)
Newsgroups: comp.sys.amiga.tech
Subject: Re: Having your cake (Re: Address Space on the Amiga (was Re: Need info on exceptions))
Message-ID: <4625@cbmvax.UUCP>
Date: 1 Sep 88 08:55:33 GMT
References: <8808311759.AA19249@cory.Berkeley.EDU> <2582@sugar.uu.net>
Reply-To: jesup@cbmvax.UUCP (Randell Jesup)
Organization: Commodore Technology, West Chester, PA
Lines: 36