RamDisk en C

Fermé
Hisoka - 20 déc. 2003 à 19:09
 Pedro McCoy - 22 nov. 2006 à 14:15
Bonsoir à tous. Je dois coder un système de fichiers en C qui doit bien évidemment tourner en RAM. Ce système doit réaliser plusieurs opérations élémentaires comme formater, créer des fichiers, les détruire, lister... Tout ce que fait un vrai système de fichiers. Je vais donc devoir allouer une bonne partie de mémoire pour faire tourner ce disque virtuel. Mais je vois pas trop comment m'y prendre. J'aimerais bien cerner tous les pbs avant de me mettre à le coder. Et c'est là que vous intervenez, si vous pouviez me dire à quoi m'attendre, les points auxquels je vais devoir faire attention, j'attends des conseils. Et si vous connaissez des sites traitant ce sujet, je susi preneur. Voilà merci.
A voir également:
  • RamDisk en C
  • Ramdisk - Télécharger - Optimisation

4 réponses

ar4gorn Messages postés 3 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 14 mai 2004
6 janv. 2004 à 10:30
Ta avancé sur ton ramdisk
J'ai le meme truc a faire et je sais pas par ou commencé
Au secours.......



Il ne faut pas négliger le négligeable
0
tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177
6 janv. 2004 à 13:40
bon c'est simple, va lire le code source du systeme de fichiers de linux par exemple, disons la 1ere version.

tafiscobar "lou waye def bopame"
la nullite n'existe pas, l'ignorance oui, ah je suppose!!!
0
tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177
6 janv. 2004 à 13:59
j'avais mal lu, je pensais que tu voulais ecrire un systeme de fichiers qui joue avec le disque, mais la, tu veux faire juste une
simulation, alors je te conseille d'aller voir http://www.cse.sc.edu/~arodrigu/csce311/nachos_pool.html

C'est une simulation de OS,que l'on utilise a l'univ pour nos cours d'OS. C'est en C++, mais pas trop pousse, il y a un repertoire qui s'appelle "filesys" (systeme de fichiers) et un autre "machine" ou tu trouveras un module de qui s'appelle "disk" pour la simulation du disque.

Sinon, voila ce que je crois fait un FS (je n'ai pas assiste a mon cours de SE sur les FS, j'etais malade) :
tu as une structure de données, generalement un arbre avec comme noeuds les repertoires et coe feuilles les fichiers. La racine, c'est le repertoire de debut (sous linux /, sous windows generalment C:).
Tu peux le simuler ainsi : pour chaq fichier que tu cres, tu prends toutes les infos le concernant (parent dir, taille, differents blocs, etc...) et tu le mets a sa place ds l'arbre. La suppression utilise ses infos pour plus de rapidite. Lister aussi.
Simuler une creation de fichiers c'est avoir un disque dur (la taille que tu veux en nbre de bits), le diviser en blocs de taille fixe (que tu determineras) et donc creer un fichier, c'est lui allouer des blocs sur le disque, le supprimer, lui retirer les blocs.
Formater, c'est tout simplement liberer tous les blocs et reinitialiser ta structure de données.
Pour ne pas alourdir ta structure de données, tu peux bien renseigner ds chaq fichier cree,la liste des blocs, mais cela a aussi ses incovenients.
bon je te laisse, j'ai pas vu lheure passer

tafiscobar "lou waye def bopame"
la nullite n'existe pas, l'ignorance oui, ah je suppose!!!
0
Pedro McCoy
22 nov. 2006 à 14:15
Si tu t'attaques aux ramdisk en C je te préviens de suite il te faudra des connaissances assez pointues. Ne va pas croire que ca se fait en 3 lignes de code! Mais si tu tapes "ramdisk source" sur Google le premier lien est celui d'une source officielle krosoft. Elle est assez facile à appréhender, mais il te faudra déterrer le DDK (Driver Devkit) pour la compiler...
Bon courage
0