stevesu@azure.UUCP (Steve Summit) (12/13/83)
Has anyone attacked the problem of generating shareable images to run under vms? The assembler (in this case, Eunice's vmsas) has to provide the linker (in this case, vms link) with information about which psects are position-independent, which data segments can be shared, etc. It looks like it could be a mess to figure out. I'm not sure I can even look at the vmsas source to figure it out -- on our machine, at least, /usr/src/cmd/vmsas is missing files, and the files there are older than the ones in /usr/src/cmd/as, which also have VMS #ifdef's. Shareable images are highly desirable, but they are not the default under vms, as they are under unix. Unless you explicitly say link/shareable, the executable code will not be shared, and each user will receive his own, private, in-core copy. This will kill performance in the case of a large program that many people are executing (like a command interpreter or editor) since there won't be enough physical core and most people will have their redundant copy of the code swapped out most of the time. If anyone has looked into this problem, or can just suggest which vmsas sources are likely to be reliable, I would appreciate any tips. Perhaps it would help to use cc -S, and let the vms assembler take a stab at the assembly language code the unix c compiler spits out. Eventually we're going to get DEC's c compiler, which will probably be able to deal with things properly. Steve Summit Tektronix, Inc. tektronix!tekmdp!stevesu 503-629-1069