[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tsp-devel] TSP dans Rtems
From: |
Frederik Deweerdt |
Subject: |
Re: [Tsp-devel] TSP dans Rtems |
Date: |
Wed, 31 Oct 2007 13:17:08 +0100 |
User-agent: |
Mutt/1.5.12-2006-07-14 |
On Wed, Oct 31, 2007 at 11:15:30AM +0100, Eric Noulard wrote:
> 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.
Yup, pour ajouter un type de BB supplémentaire il faut:
1) Ajouter un champ à enum bb_type dans bb_core.h
2) Ajouter un champ à static struct bb_operations ops dans bb_core.c
3) choisir une convention de nommage pour les BB posix (e.g. p://<nom bb>),
et apprendre à bb_type() dans bb_core.c à les reconnaître.
A+
Fred