kh (03/16/83)
(We have 4.1bsd, but these questions are really about any virtual memory system.) Two questions concerning virtual memory: (1) Does ld (the linking editor) take into any consideration the execution order of the various subroutines. The only paper I've ever read on the subject said that a little extra effort at load time can mean a BIG reduction in the number of page faults. (2) Why aren't at least some of the library routines in memory, instead of each program having its own copy?!? If "printf" alone were in memory, around 2K would be saved from each program that used it! And the number of page faults would also be lowered, since it would only be in physical memory once. I've heard (rumors) that VMS has such a feature, so it can't be too hard. This would be a great feature since it saves disk space, save memory space (hence speeds execution) and has the added bonus that you don't have to re-compile everything if you change a library routine. Are there any plans for this kind of thing in future BSD's (or any other UNIX)? Kenny Hirsch duke!unc!kh kh.unc@UDel-Relay Chapel Hill, N.C.