GNU/Linux >> Tutoriels Linux >  >> Linux

mmap mémoire physiquement contiguë

Si vous ne pouvez pas transmettre le résultat de Memory_alloc() comme premier argument de votre mmap() (par exemple, s'il utilise également mmap() qui rendrait impossible le mappage à nouveau vers cette mémoire), vous devriez probablement utiliser une autre méthode d'E/S de flux de l'exemple donné - IO_METHOD_USERPTR variation. Il utilise le même ioctl comme IO_METHOD_MMAP pour capturer des images et devrait fournir la même efficacité.


Vous auriez besoin de l'assistance du pilote de la caméra. mmap obtient les pages physiques qu'il mappe à partir du pilote qu'il mappe - l'appareil photo dans ce cas. Vous ne pouvez pas dire à mmap d'utiliser certaines pages pré-allouées, car il faudrait dire au pilote sous-jacent d'utiliser ces pages pré-allouées.


Linux
  1. Qu'est-ce que ioremap()

  2. Quelle est la portabilité de mmap ?

  3. Pilote de périphérique du noyau Linux vers DMA à partir d'un périphérique dans la mémoire de l'espace utilisateur

  4. Mémoire partagée Linux :shmget() vs mmap() ?

  5. Quel pilote gère mon pavé tactile ?

Comment installer un pilote de périphérique sous Linux

Qu'est-ce que la NVM (mémoire non volatile) ?

Comment effacer la mémoire d'échange sous Linux

Jenkins actif (sorti)

Pourquoi malloc() appelle mmap() et brk() de manière interchangeable ?

Utilisation de la mémoire de la commande TOP