Re: [NTLK] Einstein Emulator on arm-linux (e.g. Zaurus): new build

From: Paul Guyot (pguyot_at_kallisys.net)
Date: Wed Feb 23 2005 - 22:35:24 PST


Aux environs du 23/02/05 à 22:23 -0800, sous le titre "Re: [NTLK]
Einstein Emulator on arm-linux (e.g. Zaurus)", Martin Joseph prit sa
plus belle plume pour écrire les mots suivants:
>On Feb 23, 2005, at 9:45 PM, Paul Guyot wrote:
>
>> Aux environsSegmentation faults very likely mean that you don't have
>> enough RAM.
>> The zaurus version is based on the same code as the MacOS X version
>> and requires 100 MB of RAM (so you need to grow the swap file or
>> whatever to get it working).
>> This is a temporary limitation, of course.
>Wow! 100MB of Ram for a Newton! Who knew...

Actually, this is due to the way the code is built for maximum efficiency.
The emulator comes with 16 MB of ROM and 4 MB of RAM -> 20 MB of
memory where there can be code.
This memory is kept for accesses (so you need 20 MB, even if the ROM
could stay in a file and I could use mmap) and additionally, each
instruction (32 bits) is currently replaced by 4 words (two pointers
to functions and two static data) for dynamic translation of the code.
This yields to 20 MB + 4 * 20 MB = 100 MB.

My concern was speed, not size. My PowerBook has 1 GB of RAM, so 100
MB isn't really a problem.

Of course, this is a temporary limitation for generic,
cross-emulators (different processor) emulation. Indeed, at some
point, (a) I'll do recompilation (doing it for the ARM is the easiest
since I only have to change the privileged instructions) and (b) once
I'll get an arm-linux PDA myself, I might use caches instead of
translating everything to better work on embedded devices.

Paul

-- 
Ministre ultraplénipotentiaire en disponibilité.
Baignoire à vendre.
http://www.kallisys.com/
http://newton.kallisys.net:8080/
-- 
This is the NewtonTalk list - http://www.newtontalk.net/ for all inquiries
Official Newton FAQ: http://www.chuma.org/newton/faq/
WikiWikiNewt for all kinds of articles: http://tools.unna.org/wikiwikinewt/


This archive was generated by hypermail 2.1.5 : Wed Feb 23 2005 - 23:00:02 PST