On Sat, Nov 30, 2019 at 10:55 AM Lassi Kortela <[email protected]> wrote:
> >> The Chicken DLL is about 3.4MB, of which a good deal will be relocation > tables and such. I'm a Cygwin user, so my C library is included in > cygwin1.dll, which is about the same size [...] The native Windows C > library, also a DLL, is about 1MB, depending on the OS version [...] > Cygwin1.dll doesn't use the native C library at all; it lives directly on top of the Win32 kernel and the lower-level WinNT Executive. > > > So the RAM footprint at run time for the executable code (excluding the > OS) will be on the order of 12KB + 3.4MB + 3.4MB + 1MB, so about 8MB. I > think that is a better measure when estimating the amount of RAM needed to > run an application. > I added (let loop () (loop)) after the (print "Hello world") so I could watch the process, and Windows is charging it with 2.6 MB. I don't know how, if at all, Windows allocates DLL memory to applications with the DLL open. > The RAM taken by the DLLs ought to be shared with other running programs > using the same DLLs. If we assume the user's program is the only Chicken > program running at the time, but there are other Windows/Cygwin > programs, the Chicken program would be 12KB + 3.4MB on top of those. > That's my situation while running this program. John Cowan http://vrici.lojban.org/~cowan [email protected] The first thing you learn in a lawin' family is that there ain't no definite answers to anything. --Calpurnia in To Kill A Mockingbird
