Per poter eseguire il programma hello.c (dopo aver avviato il sistema con rtlinux, ovviamente) dovete seguire i seguenti passi:
include rtl.mk all: hello.o clean: rm -f *.o hello.o: hello.c $(CC) ${INCLUDE} ${CFLAGS} -c hello.c
$ make
$ rtlinux start hello
Dovreste iniziare a vedere da subito il messaggio di hello.c visualizzato ogni secondo. A seconda di come la vostra macchina è configurata, il messaggio potrebbe apparire o direttamente sulla console oppure eseguendo:
$ dmesg
Per interrompere il programma occorre rimuoverlo dal kernel. A questo scopo, digitate:
$ rtlinux stop hello
Un'altra maniera per caricare e rimuovere il modulo consiste nell'usare rispettivamente insmod e rmmod.
L'esempio appena proposto è decisamente semplice. A differenza di ciò che abbiamo appena visto, ci possono essere diversi thread in un programma. Le priorità possono essere impostate al momento della loro creazione ma possono essere anche modificate in un secondo tempo. In aggiunta, possiamo stabilire pure quale algoritmo di scheduling verrà usato. Possiamo addirittura scrivere il nostro algoritmo personale!
Tornando al nostro esempio, potremmo impostare la priorità del thread al valore 1 e scegliere lo scheduling FIFO inserendo le seguenti righe in testa alla funzione thread_code() :
struct sched_param p; p . sched_priority = 1; pthread_setschedparam (pthread_self(), SCHED_FIFO, &p);