Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ukma!tut.cis.ohio-state.edu!bloom-beacon!athena.mit.edu!rlcarr From: rlcarr@athena.mit.edu (Rich Carreiro) Newsgroups: comp.sys.amiga Subject: Re: "modular" programs Summary: Lattice C does overlays Message-ID: <9159@bloom-beacon.MIT.EDU> Date: 8 Feb 89 17:21:27 GMT References: <1188@hub.ucsb.edu> Sender: daemon@bloom-beacon.MIT.EDU Reply-To: rlcarr@athena.mit.edu (Rich Carreiro) Organization: Massachusetts Institute of Technology Lines: 31 In article <1188@hub.ucsb.edu> dougp@sbphy.ucsb.edu writes: ]This would be an ideal use for an overlay linker in which only certain ]parts of the code is loaded at any time. This way there could be ]overlays for the verious terminal emulators, and overlays for the ]verious transfer protocalls. This in no way reduces the size of the ]program on disk, but it greatly reduces the memory used when the program ]is run. The biggest advantage is that no customizing would be necessary, ]just select the terminal emulator you want and the code is automaticly ]loaded. ]Unfortunatly, I have not yet seen a C compiler which claims to have ]this feature working. I do remember seeing documentation about ]this feature in the Manx manual, but that was for a different computer. ]I have however seen commands in the verious Amiga reference manuals ]which would allow this to be done, but it would not be transparant ]like an overlay linker. This sounds like what Lattice C (4.0 and 5.0) offers with BLINK. They talk about overlays and say that you can automagically have the program load and unload code as it needs it, transparent to the user (and to the developer, except for making an overlay map to feed to the linker so it knows what modules need what other modules.) ARPA: rlcarr@athena.mit.edu UUCP: {wherever}!mit-eddie!mit-athena!rlcarr BITNET: rlcarr%athena.mit.edu@MITVMA.mit.edu ******************************************************************************* * Rich Carreiro "Back off man, I'm a scientist." * * rlcarr@athena.mit.edu - Dr. Peter Venkman * *******************************************************************************