Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
54
sources/poky/documentation/dev-manual/x32-psabi.rst
Normal file
54
sources/poky/documentation/dev-manual/x32-psabi.rst
Normal file
@@ -0,0 +1,54 @@
|
||||
.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
|
||||
|
||||
Using x32 psABI
|
||||
***************
|
||||
|
||||
x32 processor-specific Application Binary Interface (`x32
|
||||
psABI <https://software.intel.com/en-us/node/628948>`__) is a native
|
||||
32-bit processor-specific ABI for Intel 64 (x86-64) architectures. An
|
||||
ABI defines the calling conventions between functions in a processing
|
||||
environment. The interface determines what registers are used and what
|
||||
the sizes are for various C data types.
|
||||
|
||||
Some processing environments prefer using 32-bit applications even when
|
||||
running on Intel 64-bit platforms. Consider the i386 psABI, which is a
|
||||
very old 32-bit ABI for Intel 64-bit platforms. The i386 psABI does not
|
||||
provide efficient use and access of the Intel 64-bit processor
|
||||
resources, leaving the system underutilized. Now consider the x86_64
|
||||
psABI. This ABI is newer and uses 64-bits for data sizes and program
|
||||
pointers. The extra bits increase the footprint size of the programs,
|
||||
libraries, and also increases the memory and file system size
|
||||
requirements. Executing under the x32 psABI enables user programs to
|
||||
utilize CPU and system resources more efficiently while keeping the
|
||||
memory footprint of the applications low. Extra bits are used for
|
||||
registers but not for addressing mechanisms.
|
||||
|
||||
The Yocto Project supports the final specifications of x32 psABI as
|
||||
follows:
|
||||
|
||||
- You can create packages and images in x32 psABI format on x86_64
|
||||
architecture targets.
|
||||
|
||||
- You can successfully build recipes with the x32 toolchain.
|
||||
|
||||
- You can create and boot ``core-image-minimal`` and
|
||||
``core-image-sato`` images.
|
||||
|
||||
- There is RPM Package Manager (RPM) support for x32 binaries.
|
||||
|
||||
- There is support for large images.
|
||||
|
||||
To use the x32 psABI, you need to edit your ``conf/local.conf``
|
||||
configuration file as follows::
|
||||
|
||||
MACHINE = "qemux86-64"
|
||||
DEFAULTTUNE = "x86-64-x32"
|
||||
baselib = "${@d.getVar('BASE_LIB:tune-' + (d.getVar('DEFAULTTUNE') \
|
||||
or 'INVALID')) or 'lib'}"
|
||||
|
||||
Once you have set
|
||||
up your configuration file, use BitBake to build an image that supports
|
||||
the x32 psABI. Here is an example::
|
||||
|
||||
$ bitbake core-image-sato
|
||||
|
||||
Reference in New Issue
Block a user