From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: * X-Spam-Status: No, score=1.1 required=5.0 tests=BAYES_20,INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 Xref: utzoo comp.os.vms:38771 comp.lang.ada:5444 Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!thunder.mcrcim.mcgill.edu!snorkelwacker.mit.edu!spool.mu.edu!think.com!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!ra!uvaarpa!software.org!stluka From: stluka@software.org (Fred Stluka) Newsgroups: comp.os.vms,comp.lang.ada Subject: Re: Reducing VMS Ada .exe sizes... How? Message-ID: <1991May15.133134.2126@software.org> Date: 15 May 91 13:31:34 GMT References: <1991May13.134715.12503@software.org> <91134.084320PHALL@ESOC.BITNET> Sender: usenet@software.org (Usenet News/Mail Support) Organization: Software Productivity Consortium, Herndon VA List-Id: In article <91134.084320PHALL@ESOC.BITNET> PHALL@ESOC.BITNET writes: > you don't really say what the exact problem is, however if the problem > is that the image size is very large ... Yes, the problem is that the image size is huge (7500 blocks), wasting space on disk and time at image activation. I suspect that a major contributing factor is that lots of stuff which is in packages I reference but which I don't ever use is being included in the image. I suspect that the linker always links in an entire object module, regardless of how much is needed to resolve all references. Thus an Ada package containing many routines, or a C file containing many functions, is always completely included in the image, even when many of the routines are never called. Once these rouitnes are included, then other routines which they reference (but which I also never call from my code) must also be included, and so on. Therefore, my question to the net was how to prevent these routines from being linked into the image. I am still interested in an answer to that question, but other tips like the one below are also appreciated. > ... then check the linker map to see > how many modules are being linked. if this value is approx 96 it is likley > that the linker has stopped performing demand zero compression. > the linker option ISD_MAX specifies the maximum number of image sections > allowed in an image. The default is approz 96. If the total number of > image sections reaches or exceeds this value, demand zero compression stops. What is demand zero compression? Are you saying that pages which are entirely zero-filled are stored that way on disk in the image instead of being generated dynamically during a page fault, if the image has more than 96 or so sections? --Fred -- Fred Stluka Internet: stluka@software.org Software Productivity Consortium UUNET: ...!uunet!software!stluka 2214 Rock Hill Rd, Herndon VA 22070 USA