8#include <manux/config.h>
33void handlerHorloge(
void * inutile)
39#if defined(MANUX_TACHES) && defined(MANUX_PREEMPTIF)
50void setFrequenceHorloge(
uint16_t freqHz)
54 decompte = 1193200 / freqHz;
58 outb(0x40, decompte & 0xFF);
59 outb(0x40, (decompte >> 8) & 0xFF);
67void attenteCalibrer(
void)
#define MANUX_FREQUENCE_HORLOGE
La fréquence du timer.
#define MANUX_NB_CYCLES_CALIBRAGE
Durée du calibrage des attentes actives en nombre de cycles du timer.
NO_OPTIMIZE void attenteMilliSecondes(int n)
Attente active de n millisecondes.
void initialiserHorloge(void)
Initialisation du système d'horloge.
typedef void(Handler(void))
Définition des fonctions de base d'entrée-sortie du noyau.
int i8259aAjouterHandler(int numIRQ, void(*handler)(void *), void *private)
Ajout d'un handler.
void i8259aAutoriserIRQ(uint8_t numIRQ)
Masquage d'une IRQ.
#define outb(port, octet)
Emission d'un octet sur un port.
Tache * tacheEnCours
: L'identification de la tâche en cours
void ordonnanceur(void)
Basculer vers la prochaine tache à exécuter.