DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
Shared libraries

Exclude routines that use much static data

Routines that use much static data increase the size of processes. Every process that uses a shared library gets its own private copy of the library's data, regardless of how much of the data is needed. Library data is static: it is not shared and cannot be loaded selectively, with the provision that unreferenced pages may be removed from the working set.

For example, getgrent(S) is not used by many standard UNIX system commands. Some versions of the module define over 1400 bytes of unshared, static data. It probably should not be included in a shared library.


Next topic: Exclude routines that complicate maintenance
Previous topic: Exclude infrequently used routines

© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003