[Kos-dev] Module helloworld, bochs et qemu
David MENTRE
dmentre at linux-france.org
Sat Jan 15 12:23:02 CET 2005
Bonjour à tous,
J'ai réussi à compiler un mini-module helloworld.
Mon soucis : le module est bien chargé (message affiché) sur qemu et
mais pas sur bochs. Pourquoi ?
Le code :
==> _helloworld.c <==
#include <loader/mod.h>
#include <kos/macros.h>
#include "_helloworld.h"
void hello(void)
{
printk("Hello world !\n");
}
EXPORT_FUNCTION(hello);
==> helloworld.c <==
#include <loader/mod.h>
#include <kos/macros.h>
#include "_helloworld.h"
__init_text static int init_module_level0(kernel_parameter_t *kp)
{
UNUSED(kp);
printk("(Init module helloworld...");
hello();
printk("Ok)\n");
return 0;
}
DECLARE_INIT_SYMBOL(init_module_level0, INIT_LEVEL4);
==> _helloworld.h <==
#ifndef ___HELLOWORLD_H
#define ___HELLOWORLD_H
#define printk ktty_printk
void hello(void);
#endif /* ___HELLOWORLD_H */
==> helloworld.h <==
#ifndef __helloworld_H__
#define __helloworld_H__
#endif /* __helloworld_H__ */
==> Makefile <==
OBJS= helloworld.o _helloworld.o
all: helloworld.ro
helloworld.c: helloworld.h _helloworld.h
_helloworld.c: _helloworld.h
helloworld.ro: $(OBJS)
TOPSRCDIR=../..
include $(TOPSRCDIR)/modules/MkRules
J'ai également ajouté :
$(MODULES_DIR)/helloworld/helloworld.ro \
dans MODULES:= de MkVars.
Amicalement,
d.
PS : ktty pourrait pas faire le #define de print_ktty en printk ou
printf ?
--
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