[Kos-dev] Deux questions sans reponses

Fabrice Gautier kos-dev@enix.org
Sat, 14 Jul 2001 12:13:05 +0200


On Sat, 14 Jul 2001 11:13:57 +0200
Thomas Petazzoni <thomas.petazzoni@ifrance.com> wrote:

> Deux questions a propos de cet IDL :
>         1. une question generale : mon IDL me genere a partir d'un
> fichier de description de l'interface, un fichier .c qui contient les
>  proto des fonctions, et qu'il ne reste plus qu'a remplir. Si je veux
> changer l'interface (dans le fichier de description), que je dois
> regenerer le fichier .c. Je  dois le remplir de nouveau ? Si oui, et
> je pense que c'est le cas, c'est vraiment pas pratique de se tromper,
> nan ?

Oui, il faudrait que ton squellette génère un .h pas un .c. A^près tu
remplis ton .c en implémentant les prototypes. Si tu changes ton IDL tu
regenere que ton .h.


>         2. Comment vont se gerer les stubs au niveau CPL3 ? Il
> faudrait pas qu'on ai besoin de recompiler la libc a chaque fois qu'on
> ajoute une fonctionnalite dans le systeme. Pour un OS qui se veut
> dynamique, ca serait un peu pourri !

Ben si, t'as pas vraiment le choix, il faut bien regénerer le stub.
Quand tu fais du CORBA il faut aussi regenerer le stub.

Mais bon ca t'oblige pas forcément a recompiler une libC, juste t'as
libc aura pas tout les syscalls de ton kernel. C'est exactement pareil
pour linux aujordh'ui, quand unsyscall est rajouté si la libc ne le
supporte pas, t'es obligé de faire des contorsions pour l'appeler.

De toute facon une fois que les interfaces de BabelOS sont définis, ca ne
devra pas forcément bouger tant que ca.

D'aileur il est pas frocément dit que ce soit la libc qui contiennent
tous ces appels directs vers les drivers. Une libbabel/libbabelos serait
sans doute plus adapté si tu limites la libC aux fonctions définies par
le standard et aux fonctions POSIX.

-- 
Fabrice Gautier <gautier@email.enstfr>