Eugene Grosbein
2018-Jan-30 12:42 UTC
i386 with 4GB RAM: less than 2GB available on A2SAV (Intel Atom E3940)
On 30.01.2018 13:59, Andre Albsmeier wrote:>> Also, I'd like to know reasons that made you stick to 32 bit OS >> as we have pretty good support for 32 bit applications running under 64 bit system. > > I (still) have 32 bit machines and don't want to maintain 2 userlands. > Each machine has its own kernel but userland (updated via nfs) must > remain 32 bit. > > Or is it possible to boot a 64 bit kernel and have everything else in > 32 bit?I have not tried "everything else in 32 bit", there may be some rough edges dealing with run-time linker but you can try. /sbin/init is statically linked and it should work with kernel having option COMPAT_FREEBSD32. /bin/sh may be OK too provided /libexec/ld-elf32.so.1 is in place. You should really consider switching to 64 bit kernel for such hardware.
Mike Karels
2018-Jan-30 13:54 UTC
i386 with 4GB RAM: less than 2GB available on A2SAV (Intel Atom E3940)
> On 30.01.2018 13:59, Andre Albsmeier wrote:> >> Also, I'd like to know reasons that made you stick to 32 bit OS > >> as we have pretty good support for 32 bit applications running under 64 bit system. > > > > I (still) have 32 bit machines and don't want to maintain 2 userlands. > > Each machine has its own kernel but userland (updated via nfs) must > > remain 32 bit. > > > > Or is it possible to boot a 64 bit kernel and have everything else in > > 32 bit?> I have not tried "everything else in 32 bit", there may be some rough edges > dealing with run-time linker but you can try.> /sbin/init is statically linked and it should work with kernel having option COMPAT_FREEBSD32. > /bin/sh may be OK too provided /libexec/ld-elf32.so.1 is in place.> You should really consider switching to 64 bit kernel for such hardware.You definitely cannot run all of userland in 32-bit mode. There are many sysadin programs that have incompatible syscall interfaces, starting with mount, ifconfig, ps, route, netstat, etc (probably 50 total). Unless they were all statically linked, you would have to install the 64-bit shared libraries, moving the 32-bit libraries to /lib32 and /usr/lib32, and switching around /libexec/ld-elf*. Or, if you really want the userland to be the same, you could use a PAE kernel. Mike