Re: What File System supports Application XIP

From: Paulo Marques
Date: Thu Sep 09 2004 - 04:22:17 EST


colin wrote:

Hi there,
We are developing embedded Linux system. Performance is our consideration.
We hope some applications can run as fast as possible,
and are think if they can be put in a filesystem image, which resides in
RAM, and run in XIP (eXecute In Place) manners.
I know that Cramfs has supported Application XIP. Is there any other FS that
also supports it? Ramdisk? Ramfs? Romfs?

Obvisously cramfs can not support XIP, because the "in-place" image
is compressed (unless you have a processor that can execute compressed
code :)

AFAIK only tmpfs supports XIP because it works on a higher level
without using block devices underneath. Ramdisks are simply RAM
block devices that behave like any other block device.

You can have a compressed image in flash (for instance), decompress
everything into a tmpfs and execute from there.

I'm not sure, however, that this will be such a performance gain.

If you use cramfs (for instance) then the kernel will uncompress
and run only the pages that are needed, and they will be cached in
page cache so that they will be available again when needed. This
way you only waste the RAM you actually need, and can still drop
old pages if the application needs more RAM.

Just my two cents,

--
Paulo Marques - www.grupopie.com

To err is human, but to really foul things up requires a computer.
Farmers' Almanac, 1978
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/