Roland Mainz wrote: > Ok... > ... is it possible to make "elfwrap" tag the data as "shareable between > processes" (e.g. read-only) by default ? Otherwise we have a similar > issue like the current Sun Studio 10/11 "cc" behaviour for string > literals which eat memory per process instead of being shared between > processes (unless you use "-xstrconst") ...
It is read-only. For example, from a standard ELF relocatable object: Section Header[4]: sh_name: .rodata sh_addr: 0 sh_flags: [ SHF_ALLOC ] sh_size: 0 sh_type: [ SHT_PROGBITS ] Section Header[5]: sh_name: .data sh_addr: 0 sh_flags: [ SHF_WRITE SHF_ALLOC ] sh_size: 0 sh_type: [ SHT_PROGBITS ] The .rodata (read-only data) section only has SHF_ALLOC flag set. The .data section is writable (and non-sharable) having the SHF_WRITE flag set. elfwrap(1) produces: Section Header[1]: sh_name: .passwd sh_addr: 0 sh_flags: [ SHF_ALLOC ] sh_size: 0x395 sh_type: [ SHT_PROGBITS ] All allocatable, non-writable sections are combined by ld(1) into the text segment, which is read-only and sharable between all processes. -- Rod.