Est-ce que quelqu'un sait quelle est la différence entre mmap(2)
et mmap(3)
? La section Man 3 est décrite comme "Ce chapitre décrit toutes les fonctions de la bibliothèque à l'exclusion des fonctions de la bibliothèque décrites dans le chapitre 2, qui implémente les appels système." mmap(3)
n'effectue-t-il pas un appel système? En lisant les deux pages man, je vois que mmap(2)
semble accepter une plus grande variété de drapeaux que mmap(3)
, et prétend être capable de mapper des espaces d'E/S de périphérique. mmap(3)
prétend pouvoir mapper des "objets mémoire partagés" et des "objets mémoire typés" en plus des fichiers, mais ne mentionne pas les E/S des périphériques.mmap (2) vs mmap (3)
Puisque les deux fonctions ont le même nom, je ne suis même pas sûr de savoir comment choisir l'une plutôt que l'autre.
Merci, c'était très clair. Merci également pour le pointeur dans l'arborescence source de la bibliothèque C. Bien que je fasse pas mal de travail au niveau des noyaux et des pilotes, j'investis rarement dans l'espace utilisateur pour autre chose que des utilitaires de test, et je n'ai pas du tout cherché de source de glibc. Je peux voir que j'ai manqué une approche très utile à un certain nombre de problèmes. – EQvan