Linked by Gavin Wraith on Wed 5th Jul 2006 17:44 UTC
Thread beginning with comment 140655
To view parent comment, click here.
To read all comments associated with this story, please click here.
To view parent comment, click here.
To read all comments associated with this story, please click here.





Member since:
2005-09-17
I think it would be fair to say that this is also a feature of the OS. Writing an OS that loads from ROM is different from writing an OS that runs from ROM. The latter requires a clear separation between the code space and the memory that the code uses, along with an architecture that allows it. Perhaps I'm over emphasising this a little, but RISC OS certainly had to be designed specifically to allow it to run from ROM.
I think all modern operating systems do that, though. Remember that most use disk caching to load programs: code pages are mapped directly to (read-only) pages in the disk cache. This saves memory, allows code to be shared between programs, and makes things faster. If you allow writing to code areas, everything gets much less efficient as the whole page of memory, including the unchanging code, has to be copied.
Still, you might want to code from ROM to a read-only RAM area anyway, depending on whether RAM access is faster and how much free RAM you have.