2008-09-22 3 views

Répondre

4

Vous pouvez utiliser deux méthodes pour accéder à votre périphérique mappé E/S à partir d'un RTP.

E/S du sous-système (préféré)

Vous essentiellement créer un petit pilote de périphérique. Ce pilote peut être intégré dans le sous-système d'E/S de VxWorks. Une fois intégré, le pilote est disponible pour le RTP en utilisant simplement les opérations d'E/S standard: ouvrir, fermer, lire, écrire, ioctl. Notez que "créer un pilote de périphérique" ne doit pas être compliqué. Cela pourrait être aussi simple que de simplement définir un wrapper pour la fonction ioctl. Voir ioLib pour plus de détails.

Mémoire Carte directement (non recommandé)

Vous pouvez créer une région de mémoire partagée par l'appel sdOpen. Lors de la création de la mémoire partagée, vous pouvez spécifier l'adresse physique. Spécifiez l'adresse de la région mappée E/S de votre périphérique et vous pouvez accéder directement au périphérique.

Le problème est qu'une région de mémoire partagée est un objet public disponible pour n'importe quel espace, et piquer directement sur du matériel va à l'encontre de la philosophie derrière les RTP.

Questions connexes