kevin@nuchat.UUCP (Kevin Brown) (12/18/90)
I'm running Minix-386 with virtual consoles (no Shoelace) on my system, and my system has 8 meg of RAM. Not surprisingly, I recently discovered that 32 processes just isn't enough when you have 8 console sessions going. :-) So I upped the constant, NR_PROCS, to 64, and discovered that weird things happened as a result. I got random, spurious nonmaskable interrupts for no apparent reason, and this of course caused the kernel to panic. Reducing the size of the buffer cache seemed to fix that problem. Increasing the size of the buffer cache (to more than 320K) threw me into the ROM setup. Hmm... I discovered, of course, that my image was big enough that it was overwriting the loader as it was being loaded in. Not good. I changed the address of the loader. Now things seem to work (I'll know soon enough if the system is stable, i.e. no spurious non-maskable interrupts and the like). But as it stands right now, I have 8 meg of RAM, and will soon expand that to 16. Clearly I won't be able to use all that RAM for processes, unless I increase the size of the process table yet again. That'll mean I'll have to reduce the size of my buffer cache (now at 380 blocks). What I REALLY want is a loader that does its thing in 386 mode so it can load the kernel anywhere in memory, not just in the first 640K. This will allow me to have, effectively, an arbitrarily large buffer cache and process table. A buffer cache of, say, a meg or two would be REAL NICE. That would mean, of course, that the kernel would actually start up in 386 mode, instead of starting up in 8088 mode and then switching over like it does now. Has anyone out there done something like this? As an aside, has anyone set up a boot procedure whereby the BSS size of the various Minix objects is stored someplace and those sections "dynamically" allocated? This would mean that the on-disk image would be considerably smaller than it is now. It would also mean that you could make your tables arbitrarily large without affecting the size of the kernel load image. -- Kevin Brown Addresses in preferred order: csci31f7@cl.uh.edu nuchat!kevin@uunet.uu.net
agm@stl.stc.co.uk (Andrew G. Minter) (12/19/90)
In the referenced article kevin@nuchat.UUCP (Kevin Brown) writes: >What I REALLY want is a loader that does its thing in 386 mode so it can >load the kernel anywhere in memory, not just in the first 640K. I don't have enough knowledge about the deep and nasty internals of PC's to write such such a beast, but it really is something that I would kill for (or perhaps even pay money). If someone feels inclined to have ago they will have my eternal gratitude. Andrew