[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tsp-devel] TSP dans Rtems
From: |
Eric Noulard |
Subject: |
Re: [Tsp-devel] TSP dans Rtems |
Date: |
Wed, 31 Oct 2007 11:15:30 +0100 |
Le 31/10/07, Arquer Stephane<address@hidden> a écrit :
> Bonjour Eric,
>
> J'ai à priori ou en partie résolu mes problèmes de buffers réseau en
> dimensionnant un peu mieux la taille de ceux-ci et en modifiant le nombre de
> fragments du driver de la carte. J'arrive à fonctionner à 100Hz avec les
> clients graphiques (targa et gdisp).
C'est super bravo.
Je pense que certains d'entre nous seront preneurs d'informations
précises à ce sujet.
>
> Peux-tu me répéter la démarche à suivre pour l'intégration du BB stp.
je vais faire une intro mais peut-être que
Fred Deweerdt me corrigera/complètera car c'est lui
qui a introduit la jolie structure bb_operations qui doit permettre
un portage facile du BB sur différents système supportant
- de la mémoire partagée
- des messages queues
- des semaphores
La démarche que je ferais serait la suivante:
1) Essayer bêtement de compiler le contenu tsp/src/util/libbb
(sauf probablement les tsp/src/util/libbb/bbtools qui
des outils en ligne de commandes inutiles pour RTEMS)
2a) ca marche ben voila tu as un bb pour RTEMS
2b) ca ne marche pas
A priori le fichier qui pourrait poser problème est
libbb/bb_core_sysv.c (et le header correspondant ibbb/bb_core_sysv.h)
Il nécessite d'avoir les API SysV pour
shmget, shmat, shmdet, ...
semget, semop, ..
msgget
Alors je te conseille d'implementer
libbb/bb_core_posix.c (et le header correspondant ibbb/bb_core_posix.h)
qui implémentera les mêmes fonctions que sysv mais avec
les API posix:
shm_open, shm_unlink ...
sem_open, sem_close, sem_wait ...
mq_open, mq_receive, ....
Ces primitives sont dispos sur RTEMS
http://www.rtems.com/onlinedocs/releases/rtemsdocs-4.7.0/share/rtems/html/posix_users/index.html
voir
Memory, Semaphore et Message Passing Manager.
> De plus, il faut utiliser tsp_bb_provider.c,
> j'ai vu qu'il y avait un bb_tsp_provider_main.c personnalisé pour Vxworks,
> peut-être est-il compatible ?
Aucune idée, la personnalisation VxWorks a dû être faite
par Cesare, je ne l'ai jamais testée.
Ce sera surement des modifs similaires sinon égales à réaliser
pour RTEMS car aussi bien pour VxWorks que pour RTEMS
y'a pas de notions de "main" mais de point d'entrée d'une tâche
à démarrer.
Pour lancer un bb_provider il te faut une "appli" qui l'utilise
tu as un exemple là:
tsp/src/util/libbb/bbtools/bb_simu.c
C'est un "pseudo simulateur".
Bon courage.
--
Erk