Ecrire et lire dans une image disque

Soyez le premier à donner votre avis sur cette source.

Vue 10 034 fois - Téléchargée 1 433 fois

Description

Ce programme était pour un projet de programmation système.
J'utiliais un émulateur (BOCHS), qui travaillait à partir d'une image de disque dur.
Alors que j'étais encore sous Windows, j'avais besoin de modifier facilement cette image, j'ai donc fait ce logiciel.

Ce projet est abandonné, car je suis passé à linux, et sous linux, comme tout est fichier, y a juste à monter l'image
de disque de disque dur en prenant soin de connecter la bonne partition.
L'image est éditable directement dans le système, et je peux (Après avoir démonté l'image) lancer un émuleteur dessus (QEMU).

Je précise bien "image de disque dur", car y a un MBR et donc une table de partitions.

Juste pour info, la capture à été faite sous linux, grâce à WINE, l'émulateur d'environement Windows.

Source / Exemple :


'In the ZIP !'

Conclusion :


Seul le FAT32 et sans VFAT (Nom long) est implémenté.
Il est possible de créer un fichier de script (A passer comme paramètre de lancement) qui permet tout ce que l'on peut faire dans le programme.
Le fichier Script.rwi contient toutes les commandes possibles avec explications.
Il est possible de renommer le nom des partitions ! Et cette fonction est complète, elle applique le nom aussi bien dans le BootSector
que dans l'entrée FAT32 de nom de volume qui se trouve dans le répertoire racine. Evidemment, cette entrée est créé si elle n'existe pas.

Ce projet est au moins intéressant pour son polymorphisme.

Date de création : 16/03/2003
Date de mise à jours: 03/11/2005
Version: 0.6

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
11
Date d'inscription
mercredi 8 septembre 2004
Statut
Membre
Dernière intervention
19 janvier 2007

bonsoir, j'ai commencé a ecrire un programme de clonage de disque... Qui fait justement des images. Le projet est aussi abandonné mais une grande partie est accomplie, il reste a faire une refonte assez profonde du code car j'ai beaucoup progréssé depuis ce temps et il est très sous optimal. Ton projet serait un assez bon complément au mien. Peut-être que si une période de chaumage se présentait,il serait temps de les "résurectionner". J'ai dérrière la tête une petite idée de quoi faire parlons-en un de ces jours.
Merci.
Messages postés
92
Date d'inscription
jeudi 24 novembre 2005
Statut
Membre
Dernière intervention
29 mai 2008

ce prog à l'air excellent, et j'en ai absolument besoin
mais il n'y a pas d'exe et je ne peux pas le compiler (je ne peux pas installer delphi pour des raisons diverses)

pouvez vous mettre l'exe dans l'archive ou un lien ?
merci
Messages postés
225
Date d'inscription
mardi 4 mars 2003
Statut
Membre
Dernière intervention
30 juillet 2008

Oui, tu comprend bien.
En fait, la FAT12 fais environs 16 Mo max (Avec des cluster de 4ko).
La FAT16, 500 MO (Avec des cluster de 4ko)
Et la FAT32 32 go max (Avec des clusters de 4ko).

Donc, microsoft à établit quelques règles :
FAT12 < FAT16 < FAT32
16MO < 500MO < 32GO

Bien sûr, il est possible de faire un FAT32 de 30 mo !
Mais pas avec les outils DOS standard.
Avec les outils linux, tu peux choisir manuellement si tu en à envie.
- Les petites choses qui font que je ne regrette pas d'être passé à linux ;) -
Messages postés
41
Date d'inscription
samedi 23 février 2002
Statut
Membre
Dernière intervention
31 juillet 2007

Ben oui maintenant que tu le dis c'est tellement évident ! Donc si je comprends à travers ces lignes les images de moins de 512Mo serait en Fat 16 voir en Fat 12 . Merci pour tout c'est très interressant tout ça.
Messages postés
225
Date d'inscription
mardi 4 mars 2003
Statut
Membre
Dernière intervention
30 juillet 2008

Quand tu créer une image avec BXimage, tu n'as qu'un fichier vide...
Comme quand tu achète un disque dur neuf.
Tu dois donc le partitionner et formater la ou les partitions en FAT32.
Je t'informe juste qu'une partition FAT32 doit faire plus de 512 Mo.

Par exemple, tu vas démarrer bochs avec une disquette LINUX ou DOS en aillant bien ton image disque dur reconnue dans bochs comme un disque dur.
Ensuite, tu vas utiliser fdisk pour partitionner ce disque dur virtuel.
Puis FORMAT (DOS) ou mkfs.vfat F 32 (Linux) pour formatter une partition en FAT32.

@+
Afficher les 14 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.