Re: Tonight's tradeoff

Liste des GroupesRevenir à c arch 
Sujet : Re: Tonight's tradeoff
De : robfi680 (at) *nospam* gmail.com (Robert Finch)
Groupes : comp.arch
Date : 08. Mar 2024, 06:13:04
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <use6p0$1h9vt$1@dont-email.me>
References : 1 2 3 4 5 6 7 8
User-Agent : Mozilla Thunderbird
On 2024-03-07 2:58 p.m., Stephen Fuld wrote:
On 3/5/2024 9:32 AM, MitchAlsup1 wrote:
 snip
 
I also believe in the tension between pages that are too small and those that are too large. 256B is widely seen as too small (VAX). I think most
people are comfortable in the 4KB range. I think 64KB is too big since
something like cat needs less code, less data, and less stack space than
1 single 64KB page and another 64KB page to map cat from its VAS. So, now;
instead of four* 4KB pages (16KB ={code, data, stack, map} ) we now need
four 64KB pages 256KB. It is these small applications that drive the
minimum page size down.
 In thinking about this, an idea occurred to me that may ease this tension some.  For a large page, you introduce a new protection mode such that, for example, the lower half of the addresses in the page are execute only, and the upper half are read/write enabled.  This would allow the code and the data, and perhaps even the stack for such a program to share a single page, while still maintaining the required access protection.  I think the hardware to implement this is pretty small.  While the benefits of this would be modest, if such "small programs" occur often enough it may be worth the modest cost of the additional hardware.
 
I had thoughts along this line too. I have added user access rights for each 1/4 of a page. Only a single 64kB page split in four is needed for a small app then.
******
The memory gateway component is checking for access keys that are passed along on the bus. This increases the bus size by 80-bits for four keys. I had thought of having open and close cycles for the bus access in addition to load and store. That way the keys could be passed in the data field of the bus. But it would slow things down.
The memory gateway guards the memory device allowing or disallowing transactions. If a bus(app) key matches the gateway page's key then the gateway is opened and a read or write transaction allowed. Otherwise a protection error is returned in response to the request. The gateway is automatically closed after a transaction. Transaction id's are 13-bits so a gateway state that needs only a single bit fits into a single block RAM.

Date Sujet#  Auteur
7 Mar 24 * Re: Tonight's tradeoff4Stephen Fuld
8 Mar 24 +- Re: Tonight's tradeoff1Stephen Fuld
8 Mar 24 `* Re: Tonight's tradeoff2Robert Finch
10 Mar 24  `- Re: Tonight's tradeoff1Stephen Fuld

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal