garyb@abekrd.UUCP (Gary Bartlett) (02/01/91)
Has anyone written any software for the Archimedes to allow the use of disk space for virtual memory? Is anyone keen to try? I wouldn't mind a reduction in running speed for say an 8Mb (virtual) memory machine. Just an idea - or a real possibility? Gary -- --------------------------------------------------------------------------- Gary C. Bartlett NET: garyb@abekrd.co.uk Abekas Video Systems Ltd. UUCP: ...!uunet!mcsun!ukc!pyrltd!abekrd!garyb 12 Portman Rd, Reading, PHONE: +44 734 585421 Berkshire. RG3 1EA. FAX: +44 734 567904 United Kingdom. TELEX: 847579
gtoal@tharr.UUCP (Graham Toal) (02/02/91)
In article <1682@abekrd.UUCP> garyb@abekrd.UUCP (Gary Bartlett) writes: >Has anyone written any software for the Archimedes to allow the use of disk >space for virtual memory? Is anyone keen to try? I wouldn't mind a reduction >in running speed for say an 8Mb (virtual) memory machine. Just an idea - or >a real possibility? It is certainly on the cards; Arthur Norman did a prototype of such a thing way back, though I don't think it would work any more. I sketched up a rough draft of a design of one when I was working at Acorn, but left before I had a chance to do anything about it. (It's too big a job for spare-time hacking I think) My feeling was that it would be relatively easy to page code off the disc but data would have to stay in Ram. And the code had better not be squeezed or even that wouldn't work. I'll see whether I can find my design document in my old mail archives. G -- (* Posted from tharr.uucp - Public Access Unix - +44 (234) 261804 *)
rabin@cs.qmw.ac.uk (Rabin Ezra) (02/04/91)
It strikes me this shoudn't be too hard. Major problems include IRQ service etc, but if you only page the application area, and have your IRQ's in modules, it would be ok. I thought you might hack the task launch stuff, so that if an application flagged itself as pagable, the task managment stuff would provide vm. Remember though that vm performance on an ARM is poor due to the massive page size, so you would need to group often called code together, with less used code in other pages. This can't be done easily. Also note that the BSD trick of paging code from binaries won't work either, as most code tends to be delivered squeezed, so you can't trivially tell where the page you need is. (I gather that RISCiX squeezes swapped stuff though) Rabin Ezra -- Rabin Ezra UUCP: rabin@qmw-cs.UUCP PhD Student, JANET: rabin@uk.ac.qmw.cs Dept of Computer Science, Internet: rabin@cs.qmw.ac.uk Queen Mary and Westfield College, <If the gateway bounces try : Mile End Road, rabin%cs.qmw.ac.uk@nsfnet-relay.ac.uk > London E1 4NS. If you have problems try qmc in place of qmw. U.K.