Solaris 64-bit Developer's Guide

AMD64 ABI Features

64-bit applications are described using Executable and Linking Format (ELF64), which allows large applications and large address spaces to be described completely.

Following is a list of the AMD ABI features.

See the draft amd64 psABI document System V Application Binary Interface, AMD64 Architecture Processor Supplement, Draft Version 0.92.

Address Space Layout for amd64 Applications

For 64-bit applications, the layout of the address space is closely related to that of 32-bit applications, though the starting address and addressing limits are radically different. Like SPARC V9, the amd64 stack grows down from the top of the address space, while the heap extends the data segment from the bottom.

The following diagram shows the default address space provided to a 64–bit application. The regions of the address space marked as reserved might not be mapped by applications. These restrictions might be relaxed on future systems.

Diagram showing address space allocation for a typical amd 64-bit application

The actual addresses in the figure above describe a particular implementation on a particular machine, and are given for illustrative purposes only.