Table 6 options to change various attributes (continued)

To do this

Use the option

Enable run-time dereferencing of null pointers to produce a SIGSEGV signal. (This is the

-z

complement of the -Zoption.)

 

 

 

Use immediate binding for all libraries loaded at program start-up.

-B immediate

 

 

Use deferred binding for all libraries loaded at program start-up.

-B deferred

 

 

Disable run-time dereferencing of null pointers. (This is the complement of the -zoption.)

-Z

 

 

Control the address space model to be used by the kernel. Possible values for mode are

+as mode

default, share_magic, exec_magic, shmem_magic, and mpas. The default value is

 

currently equivalent to share_magic. In order to set the mode to any value other than

 

the default, the binary must be built with the -Ncompiler option to ensure that the text

 

and data segments are contiguous.

 

 

 

Control whether the embedded path list stored when the program (if any) was built can

+b flag

be used to locate shared libraries needed by the program. The two flag values, enable

 

and disable, respectively enable and disable use of the embedded path list. However,

 

you cannot use disable on an ELF file, and a warning message is issued. If +b enable

 

and +s enable are both specified, the order in which they appear determines which

 

search path is used first. See the +s option.

 

 

 

Format 2 only: Enable or disable the code bit for a specified segment. If this is enabled,

+c flag

it is denoted by the +c flag for the segment listing in the chatr output.

 

 

 

Enable or disable the code bit for the file's data segment(s). If this is enabled, it is denoted

+cd flag

by the +c flag for the segment listing in the chatr output.

 

 

 

Enable or disable the code bit for the file's text segments(s). If this is enabled, it is denoted

+ci flag

by the +c flag for the segment listing.

 

 

 

Enable or disable the ability to run a program, and, after it is running, attach to it with a

+dbg flag

debugger and set breakpoints in its dependent shared libraries. For shared libraries, this

 

flag makes the text segment mapped private and writable.

 

 

 

Format 2 only: Enable or disable lazy swap allocation for dynamically allocated segments

+dz flag

(such as the stack or heap).

 

 

 

Control the ability of user code to execute from stack with the flag values, enable and

+es flag

disable. See the "Restricting Execute Permission on Stacks" section of the chatr(1)

 

manpage for additional information related to security issues.

 

 

 

Control whether the global symbol table hash mechanism is used to look up values of

+gst flag

symbol import/export entries. The two flag values, enable and disable, respectively enable

 

and disable use of the global symbol table hash mechanism. The default is disable.

 

 

 

Request a particular hash array size using the global symbol table hash mechanism. The

+gstsize size

value can vary between 1 and MAXINT. The default value is 1103. Use this option with

 

+gst enable. This option works on files linked with the +gst option.

 

 

 

Controls the preference of physical memory for the data segment. This is important only

+id flag

on ccNUMA (Coherent Non-Uniform Memory Architecture) systems. The flag value may

 

be either enable or disable. When enabled, the data segment uses interleaved memory.

 

When disabled (the default), the data segment uses cell local memory. This behavior is

 

inherited across a fork() but not an exec. For more information on ccNUMA, see

 

pstat_getlocality(2).

 

 

 

Request kernel assisted branch prediction. The flags, enable and disable, turn this request

+k flag

on and off, respectively.

 

 

 

Do not subject a library to path list lookup, even if path lists are provided. That is, use

+l libname

default library path stored in the executable.

 

 

 

Format 2 only: Enable or disable the modification bit for a specified segment. If this is

+m flag

enabled, it is denoted by the +m flag for the segment listing in the chatr output.

 

54 Linker Tools for Itanium-Based Systems