tsp-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tsp-devel] fonction alloca


From: Eric Noulard
Subject: Re: [Tsp-devel] fonction alloca
Date: Thu, 16 Oct 2008 14:14:06 +0200

Le 16 octobre 2008 13:47, Frédéric Martinsons
<address@hidden> a écrit :
>  Bonjour,
>
>  Juste deux petites questions:
>
>   J'essaye en ce moment de faire tourner vxstub sur ppc5500 et il ne
> reconnait pas le symbole alloca()  utilisé dans tsp_decoder et tsp_encoder
> (après recherche sur ce qu'il faisait, c'est normal qu'il ne le connaisse
> pas...). J'avais commencé à modifier les sources à coup de #ifdef VXWORKS
> mais c'est moche, donc Yves m'a dit qu'on wrappait ces fonctions suivant la
> machine utilisée.Ma question est donc par où commencer pour wrapper cette
> fonction à la sauce VxWorks ?

Ben peut-être peux-tu coder un remplacement d'alloca pour VxWorks
dans external/VxWorks/vxworks_alloca.[hc] ?

2 options:
   a) utiliser  malloc/free et donc alloca sera une vraie fonction
   b) utiliser une allocation dans pile via la déclaration d'une variable
       et alloca serait une macro.

le problème étant qu'avec alloca tu n'as pas de free donc
il restera probablement du code à rajouter pour la désallocation
(sauf si l'allocation dans la pile fonctionne)

Donc au final peut-être devras tu définir 2 macros:

ALLOCA_ALLOC()
ALLOCA_FREE()

que tu pourrais réaliser pour les systèmes disposant
d'alloca ou pas.


et... rajouter/remplacer les appels alloca dans le code actuel
par l'utilisation de ces macros.

>   Ensuite dans le fichier tsp_stream_sender.c  , la structure socklen_t est
> utilisée pour la taille du buffer mais elle n'est pas définie dans le
> socket.h de VxWorks, après recherche il semble qu'il se contente d'un u_int
> maintenant.J'imagine que c'est le même problème qu'avant, il faudrait
> wrapper ceci dans tsp_abs_types pour la portabilité ?

Oui bonne idée.

>   J'ai aussi remarqué que toutes les modif dues au portage de TSP sous Rtems
> n'était pas présentes dans les dernières sources disponible sur savannah,
> c'est normal ?

Elle le sont dans le CVS mais pas dans les tarball (dernière release 0.8.3)
la release 0.8.4 est en attente de temps dispo des personnes qui ont postulées
pour les faire :=)

Je te conseille de travailler sur la version CVS.
Si tu ne peux pas faire de checkout l'un d'entre nous peut peut-être
de sortir un tarball du CVS actuel.


-- 
Erk




reply via email to

[Prev in Thread] Current Thread [Next in Thread]