Mappage des adresses physiques à l'adresse virtuelle linux

Je suis en train de travailler sur un petit système embarqué. Quand mon linux démarre dans l'espace utilisateur, je sais où sont mes appareils dans la mémoire physique. Je veux mapper dans l'espace utilisateur, les adresses virtuelles. Actuellement, je le fais par le biais d'un module du noyau. J'utilise vmalloc/kmalloc (selon la taille) puis-je utiliser ioremap_page_range sur qui a renvoyé les adresses virtuelles à la carte de mes adresses physiques. Je ne pense pas que c'est la bonne façon d'aller à ce sujet. Tout d'abord, je suis de l'allocation de mémoire et puis j'ai fais une demande de noyau pour remapper que l'espace d'adressage virtuel de quelques différentes adresse physique de l'espace. (D'abord cartographié physique->virtuel dans vmcall/kmalloc est un peu inutile comme je n'ai pas de soins sur ces pages physiques. Ce n'est certainement pas la bonne.)

Au lieu de cela, est-il une meilleure façon de carte de la physique connue de la mémoire dans le processus de l'espace utilisateur. (Je sais que d'autres que mon processus de l'espace utilisateur, personne ne va toucher que de la mémoire.)

Grâce

OriginalL'auteur agent.smith | 2012-07-23