Il ne peut s'agir de la valeur par défaut, car vous ne pouvez pas supposer que chaque utilisateur disposera de tonnes de mémoire vive et d'un système d'exploitation 64 bits. De plus, vous voudrez éventuellement synchroniser le cache sur le disque, afin de ne pas perdre tout votre cache lorsque vous éteignez Firefox ou votre ordinateur.
Je pense qu'une meilleure approche consiste à laisser le cache sur le système de fichiers, mais à utiliser un pilote de système de fichiers plus intelligent qui peut recevoir des indications sur les fichiers qui ont une faible priorité pour être synchronisés sur le disque, de sorte que de nombreuses modifications peuvent être accumulées en mémoire sur une longue période de temps sans que les modifications soient engagées sur un support physique. Cela permettrait d'obtenir des performances comparables à celles d'un disque RAM sans avoir à modifier l'application.
Si vous êtes sous Windows, vous risquez d'être bloqué à moins d'utiliser un pilote de système de fichiers tiers (ou d'essayer ReFS dans Windows Server 8 ; je ne suis pas sûr qu'il fasse des commits retardés). Si vous êtes sous Linux, vous pouvez essayer certaines fonctionnalités de ext4 telles que les commits retardés et l'allocation retardée ; vous pouvez également désactiver la fonctionnalité de sécurité qui empêche les fichiers d'être validés sur le disque jusqu'à ce que fsync() soit appelé sur eux. Cela réduit la sécurité des données dans le cas général, mais pour un cache, vous ne vous souciez vraiment pas de perdre les données à cause d'une panne de courant aléatoire, n'est-ce pas ? Ce n'est pas précieux et vous êtes plus intéressé par la performance que par l'intégrité des données. Si le cache est corrompu, FF peut simplement le supprimer et recommencer.
Quant à mon idée originale d'un système de fichiers capable d'accepter un "indice" indiquant que certains fichiers n'ont pas de valeur et n'ont pas besoin d'être transférés à moins qu'il n'y ait une pression de mémoire qui pousse les pages hors de la mémoire : ce serait bien, mais je ne sais pas si des systèmes de fichiers actifs sur n'importe quelle plate-forme le font. Cela ressemble à quelque chose qui doit être ajouté aux normes POSIX. La plupart des systèmes de fichiers actuels violent les normes en synchronisant automatiquement les données sur le disque toutes les N secondes (généralement entre 5 et 15 secondes) même si le programme n'appelle pas fsync(), nous avons donc besoin d'un moyen de lui dire "whoa whoa attendez une minute, je ne me soucie vraiment pas de ces fichiers et je préférerais que vous ne les synchronisiez PAS à moins que le système ne s'éteigne". C'est un détail de la conception du système de fichiers... je ne sais pas si vous êtes intéressé par ce genre de choses :)