Ciao a tutti,
il mio problema è la creazione di un processo all'interno di un modulo per linux.
Per creare un processo con un un file c nessun problema per esempio:
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
main()
{
pid_t pid;
int status ; /* conterra’ lo stato */
printf("Unico processo con PID %d.\n",(int)getpid());
pid=fork();
printf("il valore di pid e: %d \n\n\nciuccia\n\n", pid);
pid = fork();
if ( pid ) { /* siamo nel padre */
sleep(20); /* aspetta 20 secondi */
pid = wait(&status);
if (WIFEXITED(status)) {
/*!=0 se il figlio e’terminato normalmente,(exit o
return) non ucciso da signal */
printf("stato %d\n", WEXITSTATUS(status));
}else { /* siamo nel figlio */
printf("Processo %d, figlio.\n",getpid());
// exit(17); /*termina con stato 17 */
}
}
mentre in modulo non mi fa fare niente perche nn trova le librerie #include <unistd.h>,#include <sys/types.h>.
mentre
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
le trova tranquillamente.
Non capisco proprio il perche, cambia per caso il percorso delle librerie??
AIUTOOOOOOOOOO!!!!!
ps: ho imparato a creare i moduli qui:
http://www.hwupgrade.it/forum/archiv.../t-851881.html