utiliser mmap dans C à écrire dans la mémoire.
Je veux utiliser mmap()
pour créer un fichier contenant des entiers. Je veux écrire ce fichier en écriture à la mémoire. Je sais que les données dans la mémoire est un format binaire, et donc les données dans le fichier sera également en binaire.
Puis-je utiliser mmap
à cette fin? où puis-je trouver de bonnes ressources sur la façon d'utiliser mmap
? Je n'ai pas trouver un bon manuel pour commencer.
man 2 mmap
sera assez autant vous dire tout ce que vous devez savoir.l'autre manière autour. vous créez un fichier, puis mmap. puis tout accès à la mémoire occupée par le fichier sera automatiquement écrites dans le fichier du disque dur.
Notez que si vous ware écrit à la mémoire des nombres entiers à l'aide de mmap à un fichier, l'ordre des octets sur différentes plates-formes peuvent conserver ces fichiers puissent être échangées entre les différentes architectures d'exécuter votre programme. Si ce qui compte pour vous, essayez de regarder cette question
OriginalL'auteur parisa | 2014-10-08
Vous devez vous connecter pour publier un commentaire.
Voici un exemple:
À Partir D'Ici
Un autre exemple Linux
Windows de mise en œuvre de mappage de la mémoire.
où dois-je spécifier le fichier d'entrée
Oui, de l'entrée : "usage: un.out <fromfile> <tofile>"
FILE_MODE doit contenir les autorisations, il FILE_MODE = 0x0777 par exemple.
FILE_MODE doit être un int. Voir les modifications dans le code, je l'ai déjà fait.
OriginalL'auteur ryyker
Ressources -> mmap man 2
Exemples :
Linux cp par fahmy
Et le mmap wiki exemple
Essayez d'utiliser à la fois et de les adapter à votre objectif.
Salut, j'ai suivi vos conseils et retravaillé ma réponse. Merci pour vos commentaires !
OriginalL'auteur Mekap