mirror of
https://git.yoctoproject.org/poky
synced 2026-05-09 17:39:31 +00:00
overview-manual, ref-manual, dev-manual: Moved x32 stuff
Fixes [YOCTO #12370] The section on the x32 psABI topic was in the "technical details" section of the reference manual. This section combined conceptual and "how to" information for x32 psABI. I moved the conceptual information to a new chapter in the overview-manual. I moved the "how-to" information to a separate topic in the dev-manual. This resulted in the mega-manual being updated to take on a new chapter for the overview-manual (overview-concepts.xml). No links were affected. (From yocto-docs rev: 84da28a4ad0f3f89bfc865f410a5d06b57439beb) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
60cfd0785b
commit
e2060287db
@@ -1462,91 +1462,6 @@
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='x32'>
|
||||
<title>x32</title>
|
||||
|
||||
<para>
|
||||
x32 is a processor-specific Application Binary Interface (psABI) for x86_64.
|
||||
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.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
|
||||
<section id='support'>
|
||||
<title>Support</title>
|
||||
|
||||
<para>
|
||||
This Yocto Project release supports the final specifications of x32
|
||||
psABI.
|
||||
Support for x32 psABI exists as follows:
|
||||
<itemizedlist>
|
||||
<listitem><para>You can create packages and images in x32 psABI format on x86_64 architecture targets.
|
||||
</para></listitem>
|
||||
<listitem><para>You can successfully build many recipes with the x32 toolchain.</para></listitem>
|
||||
<listitem><para>You can create and boot <filename>core-image-minimal</filename> and
|
||||
<filename>core-image-sato</filename> images.</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='completing-x32'>
|
||||
<title>Completing x32</title>
|
||||
|
||||
<para>
|
||||
Future Plans for the x32 psABI in the Yocto Project include the following:
|
||||
<itemizedlist>
|
||||
<listitem><para>Enhance and fix the few remaining recipes so they
|
||||
work with and support x32 toolchains.</para></listitem>
|
||||
<listitem><para>Enhance RPM Package Manager (RPM) support for x32 binaries.</para></listitem>
|
||||
<listitem><para>Support larger images.</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
|
||||
<section id='using-x32-right-now'>
|
||||
<title>Using x32 Right Now</title>
|
||||
|
||||
<para>
|
||||
Follow these steps to use the x32 spABI:
|
||||
<itemizedlist>
|
||||
<listitem><para>Enable the x32 psABI tuning file for <filename>x86_64</filename>
|
||||
machines by editing the <filename>conf/local.conf</filename> like this:
|
||||
<literallayout class='monospaced'>
|
||||
MACHINE = "qemux86-64"
|
||||
DEFAULTTUNE = "x86-64-x32"
|
||||
baselib = "${@d.getVar('BASE_LIB_tune-' + (d.getVar('DEFAULTTUNE', True) \
|
||||
or 'INVALID'), True) or 'lib'}"
|
||||
#MACHINE = "genericx86"
|
||||
#DEFAULTTUNE = "core2-64-x32"
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para>As usual, use BitBake to build an image that supports the x32 psABI.
|
||||
Here is an example:
|
||||
<literallayout class='monospaced'>
|
||||
$ bitbake core-image-sato
|
||||
</literallayout></para></listitem>
|
||||
<listitem><para>As usual, run your image using QEMU:
|
||||
<literallayout class='monospaced'>
|
||||
$ runqemu qemux86-64 core-image-sato
|
||||
</literallayout></para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id="wayland">
|
||||
<title>Wayland</title>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user