[OpenIndiana-discuss] Building Applications

Albert Lee trisk at opensolaris.org
Fri Oct 15 08:45:17 UTC 2010


On Fri, Oct 15, 2010 at 3:35 AM, russell <stream at willows7.myzen.co.uk> wrote:
>  Hi Alasdair,
>
> From a personal perspective I would prefer if everything was 64bit and 32bit
> libraries were provided for backward compatibility.  I see no reason to
> provide 32bit binaries if 64bit versions can be created, 64bit x86 chips
> have been available since 2003, virtually all the CPUs on the market are
> 64bit capable. The only reason to support 32bit binaries are for older
> computers with older cpus, or the application is not 64bit aware. ZFS
> provides us with a 128bit filesystem but we cling on to antiquated 32bit
> applications.
>

Solaris on SPARC, which has had no 32-bit systems for even longer (and
no 64-bit kernel since S10), still includes 32-bit applications
because 64-bit versions are often slower. This happens less frequently
on x86 because IA-32 performance can be impaired, but it's still an
important reason. The number of bits ZFS uses in its storage
addressing scheme is largely irrelevant. Perhaps a decade or so down
the road, we can stop building 32-bit applications.

> However, some people may feel that that is bit draconian, so may I suggest a
> more acceptable alternative.
> Provide within Package Manager, a 64/32 bit application preference option
> (which the user selects and the system records), the list of Packages
> provided are then dependant of the users 64/32bit choice. If an application
> is available as a combined 64 and 32 bit application then it is always
> listed irrespective of the users choice.
>

All regular applications have a plain 32-bit version. An application
can support multiple extended ISAs using a standard mechanism (see
isalist(5), isaexec(3)), allowing the instruction set to be selected
at runtime. These are usually delivered as a combined package. The
64-bit ISA is handled the same way as the others. pkg(5) has a as-yet
unused "facet" mechanism that would let you filter components of
packages to not be installed; for example, development files or
documentation. Adding arch tags has been proposed, although I think
the original use case was for not wasting space on 32-bit systems.


> Unfortunately this will result in many applications having to be built in 32
> and 64 bit versions. The IPS servers will record the number of downloads 32
> v 64 bit and the results can be published annually.

All standard "64-bit" applications are already combined 32- and 64-bit.

-Albert



More information about the OpenIndiana-discuss mailing list