[Kos-dev] Module helloworld, bochs et qemu

David MENTRE dmentre at linux-france.org
Sat Jan 15 13:28:58 CET 2005


Yop!

Thomas Petazzoni <thomas.petazzoni at enix.org> writes:

> J'ai repris ton module helloworld (avec quelques modifications que je
> détaille ci-dessous), et chez moi ça marche aussi bien dans Bochs et
> Qemu.

Bon, thomas a trouvé la solution sur IRC : mon fichier .bochsrc ne
pointait pas sur la bonne image. :]

> Pour utiliser printk(), il faut inclure <lib/std/stdlib.h>

ok.

>> EXPORT_FUNCTION(hello);
>
> Au vu du code actuel du module, exporter le symbole hello() n'est pas
> nécessaire : il n'est utilisé que par le module lui-même.
>
> Vu que le proto de la fonction n'est pas dans helloworld.h, je suppose
> que c'est une fonction privée du module, qui ne doit donc pas être
> exportée.

yep. noté.

>> DECLARE_INIT_SYMBOL(init_module_level0, INIT_LEVEL4);
>
> Ici, on préfèrera nommer la fonction init_module_level4().

Dans ce cas, il faut aussi corriger i8042/i8042.c. :)

> Pas besoin de définir les dépendances pour les .c. Y'a une moulinette à
> base de gcc et de sed qui les génèrent toute seule. Cf MkRules pour ceux
> qui aiment les détails un peu trash (âmes sensibles d'asbtenir).

Oui, j'ai compris ça après coup, quand il ne voulait pas recompiler
après un renommage de fichier. :)

> Ok. A noter que si tu veux que ton module soit compilé automatiquement
> avec le reste de KOS, il faut l'ajouter dans la variable SUBDIRS de
> modules/Makefile.

Ok, merci.

> C'est <lib/std/stdlib.h> qui fait ça. Mais ça ne me plaît que moyennement.

Pourquoi ?

Amicalement,
d.
-- 
pub  1024D/A3AD7A2A 2004-10-03 David MENTRE <dmentre at linux-france.org>
 5996 CC46 4612 9CA4 3562  D7AC 6C67 9E96 A3AD 7A2A



More information about the Kos-dev mailing list