Bonjour,

Je recode un malloc et j'ai un soucis pour le rendre compatible multithread.
J'ai besoin de mutex mais j'arrive pas a utiliser les mutex kernel d'unix et impossible de trouver un exemple d'utilisation sur le net.

Je ne peux pas utiliser les mutex posix (pthread_mutex) car ils (d'apres ce que j'ai compris en lisant de la doc sur le net) font des appels a malloc. Du coup, ils ne sont pas utilisables.

Je pense qu'il faut que j'utilise les fonctions qui sont definis ds le header sys/mutex.h.

En faisant un define de _KERNEL j'arrive a inclure les entetes de fonctions, je peux declarer un mutex de type struct mtx mais impossible d'utiliser une des fonctions associes (mtx_init, mtx_lock ....)

Voici ma ligne de compilation:
cc main.c -D_KERNEL -W -Wall

Voici l'erreur de compil:
undefined reference to: mtx_init

Est ce que je dois inclure une lib? Utiliser un autre type de mutex?
Merci d'avance pour vos reponses!