Deutsch   English   Français   Italiano  
<vt9amc$3p3l9$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail
From: Robert Finch <robfi680@gmail.com>
Newsgroups: comp.arch
Subject: Re: MMU using base and bound
Date: Thu, 10 Apr 2025 16:46:02 -0400
Organization: A noiseless patient Spider
Lines: 48
Message-ID: <vt9amc$3p3l9$1@dont-email.me>
References: <vt7qei$2f0s7$1@dont-email.me>
 <0f11555bb565a94c2a0bf47c243527c1@www.novabbs.org>
 <vt96as$3efvk$2@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Thu, 10 Apr 2025 22:46:05 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="48344a9ec57d36f38e8822c813dd850d";
	logging-data="3968681"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX18ljcY4r1gVlvLjDGwAQClEOdBHa+8iX+w="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:ruQnaJxRmzUtdaTjHbHmy/JZz4U=
Content-Language: en-US
In-Reply-To: <vt96as$3efvk$2@dont-email.me>
Bytes: 3241

On 2025-04-10 3:31 p.m., Stephen Fuld wrote:
> On 4/10/2025 8:48 AM, MitchAlsup1 wrote:
>> On Thu, 10 Apr 2025 7:02:41 +0000, Robert Finch wrote:
>>
>>> Working on the MMU component tonight.
>>>
>>> Just realized that it is possible to have only a single hierarchical
>>> page table in the system if base and bound addressing is applied before
>>> translating with the page table. Or to reduce the number of page tables
>>> using the base/bound addressing.
>>>
>>> Building base/bound registers into the MMU, pondering having multiple
>>> sets of registers to reduce the amount of register swapping. A single
>>> BRAM should be enough for 32 sets of 16 registers. Could store an index
>>> for selecting the set in the process control block. Defaulting set zero
>>> for flat addressing.
>>
>> Base and Bounds is not compatible with the feature/functionality we see
>> in modern applications; things such as::
>>
>> a) mmap()
>> b) dynamically linked libraries
>> c) Address Space Layout Randomization
>> d) JITTed binaries
>>
>> At least until there are enough base and bounds registers, and when
>> there
>> are enough of these, then the B&B MMU smells just like a SW programmable
>> TLB--and at this point--either go all the way or don't start down that
>> path.
>>
>> Also note:: at SATA data transfer rates, activating a 20 GB application
>> takes multiple seconds on the disk drive itself, something that only
>> suffers a dozen milliseconds with typical paging.
> 
> You seem the be talking about B&B as the only mechanism.  In that case, 
> your criticisms are (mostly) valid.  But if, as I think Robert is taling 
> about, you have a B&B implementation "on top of" a paging 
> implementation, most of those problems go away (albeit introducing others).
> 
> 
> 
Yep, I was talking about extending a TLB based MMU. I am not sure what 
software I will running on it. I wonder if with a small memory system 
having just a single page table might be advantageous. I may want to 
remove the paging / TLB for a small system, it is a good chunk of LUTs 
and BRAMs, but I want to keep the same MMU interface.