J'utiliserais un initramfs. (http://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt)
De nombreuses distributions Linux utilisent un initramfs (à ne pas confondre avec un initrd, ils sont différents) pendant le processus de démarrage, principalement pour pouvoir démarrer les programmes de l'espace utilisateur très tôt dans le processus de démarrage. Cependant, vous pouvez l'utiliser pour tout ce que vous voulez.
L'avantage d'un initramfs par rapport à un initrd est qu'un initramfs utilise un système de fichiers tmpfs tandis qu'un initrd utilise un périphérique de bloc RAM. La principale différence ici est que pour un initrd, vous devez préallouer tout l'espace pour le système de fichiers, même si vous n'allez pas utiliser tout cet espace. Donc, si vous n'utilisez pas l'espace du système de fichiers, vous gaspillez de la RAM, qui sur un périphérique intégré, est souvent une ressource rare. Tmpfs est un système de fichiers qui manque de RAM, mais n'utilise que la quantité de RAM actuellement utilisée sur le système de fichiers. Ainsi, si vous supprimez un fichier d'un tmpfs, ce RAM est immédiatement libéré.
Maintenant, normalement, un initramfs est temporaire, utilisé uniquement pour exécuter certains programmes très tôt dans le processus de démarrage. Une fois ces programmes exécutés, le contrôle est transféré au système de fichiers réel exécuté sur un disque physique. Cependant, vous n'êtes pas obligé de le faire. Rien ne vous empêche de manquer d'initramfs indéfiniment.