Proposed addition of malloc_size_np()

Andrew Reilly andrew-freebsd at areilly.bpc-users.org
Tue Mar 28 12:40:50 UTC 2006


On Tue, Mar 28, 2006 at 01:11:56PM +0200, Poul-Henning Kamp wrote:
> The traditional UNIX way had two or three segments, all of the code
> in one and all of the data (+/- the stack) in another.
> 
> What Rekursiv did was to put each single variable or object
> in its own segment.
> 
> 	int i;
> 	int j;
> 
> would take two objects (or segments if you like).

Aah.  OK.  Ick.

I'm pretty sure that the segmentation practiced by AS/400 and
Burroughs A-series is almost this flavour, though.  Every allocated
chunk of memory gets it's own segment.  That probably means that
individual machine words don't, but arrays and structs would,
including stack frames (activation records) most of the time.

> This is not merely segmentation, this is object oriented memory.

I really think that this is something better handled in
software, as is done by JVM and CLI, these days.  Hardware can't
strength-reduce the necessary descriptor loads and checks,
whereas software can.  Obviously that probably has it's own
attractions to the paranoid/banking/military crowd, but not to
the go fast at low cost and low power crowd, which I count
myself among...

Cheers,

-- 
Andrew


More information about the freebsd-arch mailing list