[Top][All Lists]

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

Re: x86_64 and x86 userland

From: Andreas Schwab
Subject: Re: x86_64 and x86 userland
Date: Thu, 05 May 2005 01:06:50 +0200
User-agent: Gnus/5.110003 (No Gnus v0.3) Emacs/22.0.50 (gnu/linux)

address@hidden (Bob Proulx) writes:

> Actually, that is one of the possibilities.  And in that case I would
> deny that it is a completely x86 userland.
> 1. User installs x86 kernel.  x86 userland.  Everything 32-bit.  I
>    think this would be considered the "normal" installation.
> 2. User installs amd64 (aka x86-64) kernel.  /usr/bin/ is x86 but can
>    now run amd64 binaries too.  So now the userland is a multiarch
>    userland.
> 3. User installs amd64 (aka x86-64) kernel.  /usr/bin/ is 64-bit amd64
>    binaries but the system can run 32-bit binaries too.  Userland is a
>    multiarch userland.

4. User installs a x86-64 kernel that has the ia32 emulation disabled.
   That results in a pure 64-bit environment.

> That is correct.  The kernel returns x86_64 for 'uname -m'.  The gcc
> toolpath is using x86_64 (with an underscore to avoid problems with
> the dash) as the architecture string.  My understanding is that the
> kernel uses whatever gcc uses and returns that for 'uname -m'.

The kernel has no connection to gcc.  The return value of the uname
syscall only depends on the personality of the calling process.

> I don't know about 'setarch' but you can use the 'linux32' program.
> It intercepts system calls and masquerades.

It does nothing like that, it just sets the personality and execs its
command line.  The personality determines, among others, which syscall
table is used.


Andreas Schwab, SuSE Labs, address@hidden
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

reply via email to

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