bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 64bit GNU Mach


From: Samuel Thibault
Subject: Re: 64bit GNU Mach
Date: Mon, 2 Apr 2012 14:39:05 +0200
User-agent: Mutt/1.5.21+34 (58baf7c9f32f) (2010-12-30)

Richard Braun, le Mon 02 Apr 2012 14:34:25 +0200, a écrit :
> On Mon, Apr 02, 2012 at 02:18:34PM +0200, Samuel Thibault wrote:
> > But then it needs some trick to convert to pointer everywhere needed.
> > Trying to manage low-4GiB allocation to avoid the trick would make
> > things nasty: remember that x86_64 does not have segmentation any more,
> > only flat addressing space, so we'd still need a 4GiB User/Kernel
> > separation, which was precisely what I wanted to avoid.
> 
> I'm not following there. The conversion to pointer would be a simple
> lookup (changing all occurrences in the kernel can be tedious, agreed).

That's what I'm a bit reluctant to do.

> I don't see the relation with segmentation and the 4GiB split.

I said: "to avoid the trick", i.e. just use 32bit pointers, to just use
the same type as in userland as you suggested.

> What is the layout you expect for the kernel space ? First 4 GiB user
> then kernel ?

First 4GiB user, last 4GiB kernel.

> And you thought of segmentation to implicitely shift addresses ?

Again, there is no segmentation in x86_64.

> IMHO, changing GNU Mach to cleanly convert port names where needed
> remains the sane choice.

That is, use 32bit port names for userland, and convert to 64bit port
addresses for kernelland. But that can only work if using different
types.

Samuel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]