Bijour,
Il existe sous Windows, une fonctionnalité standard, dont je me demande si elle existe sous Linux.
Sous Windows, on peut ouvrir un fichier en la mappant en mémoire. Vous avez toujours une handle de fichier, mais vous avez aussi un pointeur, qui vous permet d'accéder au contenu du fichier de manière transparente, à travers une plage mémoire.
Le principe est simple, il repose sur la mémoire virtuelle : comme on peut associer un espace mémoire à un espace disque, Windows permet d'affecter directement un espace mémoir à un fichier.
Au lieu de par exemple allouer 1M de RAM pour charger en mémoire un fichier de 1M, Windows ne nécéssite aucune allocation en pure perte, et associe directement l'espace mémoire au fichier.
Trés pratique pour les scan et toutes les opérations de lecture en général.... : rapidité + économie de resource.
Seulement, j'aimerais utiliser cette technique pour des applications sous Linux, mais je n'ai pas trouvé d'équivalent de cette fonction sous Linux, alors que cette fonction me parrait pourtant évidente pour tout sytème d'exploitation disposant de mémoire virtuelle.
Cette fonction existe t-elle sous Linux ? Et si oui, quel est le syscall associé à cette fonctionnalité ?
Merci, merci![]()
Partager