Hi folks,
The attached patch changes OFMEM so that instead of allocating new space within the Forth dictionary every time the /memory and /virtual-memory available/translations nodes are updated, we simply change the property to point directly to a static buffer. This has the effect of saving substantial amounts of memory during OpenSolaris 10 boot (in fact the final dictionary size after boot is now < 256K once again).
Blue/Andreas: please could you take a look at this patch and make sure it doesn't break anything in your SPARC64/PPC tests?
On the plus side, with this patch applied Milax gets to the end of its natural boot without crashing giving the following output:
OpenBIOS for Sparc64 Configuration device id QEMU version 1 machine id 0 kernel cmdline CPUs: 1 x SUNW,UltraSPARC-IIi UUID: 00000000-0000-0000-0000-000000000000 Welcome to OpenBIOS v1.0 built on Oct 14 2010 20:18 Type 'help' for detailed information Trying cdrom:f... Not a bootable ELF image Not a bootable a.out image
Loading FCode image... Loaded 7084 bytes entry point is 0x4000 Ignoring failed claim for va 1000000 memsz bf34e! Ignoring failed claim for va 1402000 memsz 303b3! Ignoring failed claim for va 1800000 memsz 60a30!
Jumping to entry point 00000000010071d8 for type 0000000000000001... switching to new context: entry point 0x10071d8 stack 0x00000000ffe06b49 warning:interpret: exception -13 caught SunOS Release 5.11 Version MilaX_0.3.2 64-bit Copyright 1983-2008 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. spacex@:interpret: exception -13 caught kdbg-words:interpret: exception -13 caught cb-r/w:interpret: exception -13 caught (Can't load tod module) EXIT -1 >
Does anyone know what the tod modules does? Is it Time Of Day (i.e. we are missing some kind of hardware clock emulation?)
ATB,
Mark.