Subject: Re: questions from NetBSD sparc beginner
To: jonathan michaels <jlm@caamora.com.au>
From: Michael Lorenz <macallan@netbsd.org>
List: port-sparc
Date: 03/06/2007 12:46:16
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
On Mar 6, 2007, at 01:55, jonathan michaels wrote:
> can i run sparc applications on a sparc64 built system.
Usually yes - if you have options COMPAT_NETBSD32 in your kernel config
you can run 32bit sparc binaries on NetBSD/sparc64. Tools that muck
around with kernel memory will not work though, use their 64bit
equivalents.
Or, you can run a 32bit kernel on a 64bit machine, have a look at the
GENERIC32 kernel config on arch/sparc64/conf.
That said - all UltraSPARC CPUs can run binaries compiled for SPARC V8
CPUs, but only in user mode. Kernel mode is incompatible between 64bit
and 32bit SPARC and most Ultras have hardware registers outside the
lower 4GB physical address space so the kernel needs to be a 64bit
binary in any case. On sparc64 you have the choice to build a kernel
that natively runs 64bit userlands or one that natively runs 32bit
userlands. On the former you can emulate enough ( that's what
COMPAT_NETBSD32 is for ) to run most of the latter.
> i have many sparc ultraII cpu machines (ultra 60 and half dozen
> creatord3d machines
> and netra but also some ss20's. is it possible to built a seamless
> network using a mix of machines without reference to 64 bit/not 64 bit
> hardware and use just teh netbsd sparc port and forgoing some of teh
> 'specialties; that would be available from a a sparc64 hardware
> installed with sparc64 opsystem, much like the way people use thier
> amd64
> based machines with freebsd 32 bit operating system and applications
> packages.
As long as you don't want to share binaries across all your machines
there isn't much to consider. Some applications that benefit from
having 64bit longs or sparc v9 instructions will take a (usually small)
performance hit but that might be compensated by lower memory
consumption to some degree.
have fun
Michael
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)
iQEVAwUBRe2o6cpnzkX8Yg2nAQI1hQgAtDIZe4lJttVLlmApE/monHGyiT/BuDPR
uYtJepFj+2QDpSHF80MiUgkkqZwovJtY/JJeofio7ENEl8fLwqIEiOjQi65m9HDE
nWHi++4bOP0D5QDO7UfG2ZYO8Jihb7WpUMj4tNbGDE2Gwll4li1fuupXtf8Vvnff
e8bXCuADW4dGXOOKcD0kuJGCtXnp4agiXSq4YlSo7QgAOqDiRPixCnsL1g4JOJRM
9AujbOOsKvuU3iZZD7j1n6V3aBcNFq1Oa0mooIcgcdvxZ2NPD8UxERJK5pxN+KCk
nUnkQayxLoVyMKovQCJcSoU/TzcyJR6jvLbFNvyajFiDtyBlLhlFug==
=xiPp
-----END PGP SIGNATURE-----