Userspace vs espace noyau conducteur

Je suis à la recherche d'écrire un PWM pilote. Je sais qu'il y a deux façons de contrôler un pilote de matériel:

  1. De l'espace utilisateur pilote.
  2. L'espace noyau conducteur

Si en général (ne pas envisager un PWM pilote de cas) nous avons à prendre une décision d'aller de l'utilisateur de l'espace ou de l'espace noyau conducteur. Alors quels sont les facteurs que nous avons à prendre en considération en dehors de ces?

  1. De l'espace utilisateur pilote peut directement mmap() /dev/mem mémoire de leur espace d'adressage virtuel et n'ont pas besoin de changement de contexte.
  2. De l'espace utilisateur pilote ne peut pas avoir d'interruption gestionnaires de mise en œuvre (Ils ont d'interrogation pour interrompre).
  3. Pilote de l'espace utilisateur ne peut pas effectuer de DMA (Comme DMA capable de la mémoire peut être attribuée à partir de l'espace noyau).
  • Sécurité: les autorisations de fichier de l'appareil nœud de contrôle qui les utilisateurs peuvent ouvrir/lire/écrire sur le périphérique. Les opérations de fichiers autoriser ou de refuser les opérations simultanées.
  • La décision peut dépendre fortement de ce que vous PWM pratiquent, et l'utilisation de ce matériel.
InformationsquelleAutor Katoch | 2013-03-08