Path: utzoo!attcan!uunet!cs.utexas.edu!wuarchive!zaphod.mps.ohio-state.edu!swrinde!ucsd!ucbvax!pnet91.UUCP!ericmcg From: ericmcg@pnet91.UUCP (Eric Mcgillicuddy) Newsgroups: comp.sys.apple2 Subject: ViM Message-ID: <9009291730.aa10320@generic.UUCP> Date: 29 Sep 90 17:24:41 GMT Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 54 I have received no responses to my request for information on how people use the memory manager on the IIgs. I can therefore assume that everyone follows Apple's standards. The reason for asking is that I am in the process of writing a virtual memory management system for GSOS. I have attempted to make it as transparent as possible, but this is not always possible. I may be able to make it compatible with existing programs, but I can not guarantee this. To make things faster and easier all memory requests should be in block sizes of exactly 64k. This minimizes disk fragmentation. Regardless of the size of the block swapped out, the disk space occupied will be rounded up to the nearest multiple of 4k internally. Thus 16 bits will represent 64k making free space searching very fast. Data is usually position independent, however once loaded code is usually not. To get around this I suggest using only short addressing modes and bank aligning all code segments. Do not use long addressing modes anywhere except through a Jump Table to move between code segments, use this form JMP [segmentpointer], where segmentpointer points to the dereferenced and resolved address of the desired code segment etry point. Given the memory manager model This should be the standard method used in existing applications, but since I have received no feed back I can not be certain. ViM will allow you to create the backing file on any GSOS volume, hard disk, RAMdisk, or 3.5" disk. I would reccommend against using a 5 1/4" disk, a useful size would be 1 Meg minimum. This will provide a good use for existing slot RAMcards. The maximum size for virtual memory will be 16Megabytes, giving a total memory available of over 17Megs, 16Meg virtual plus whatever real memory you have. Given that GSOS is a 32 bit operating system up to 4Gigaytes of virtual memory is possible in the future. I require FEEDBACK on this system, and soon. I have the swapout routines working and some of the swap in routines. I am having trouble patching the memory manager and this is delaying beta release. I need idas, suggestions and opinions before I get any farther into the design stage, once I choose a certain form it will not be changed. I need your help as I would like to release this before System7 is available on the Mac's. UUCP: bkj386!pnet91!ericmcg INET: ericmcg@pnet91.cts.com