My Project
Chargement...
Recherche...
Aucune correspondance
appelsysteme.h
Aller à la documentation de ce fichier.
1/*----------------------------------------------------------------------------*/
2/* Implantation des appels système de Manux. */
3/* */
4/* Attention, il s'agit donc bien ici de la partie noyau ! */
5/* */
6/* (C) Manu Chaput 2000-2021 */
7/*----------------------------------------------------------------------------*/
8#ifndef APPEL_SYSTEME_DEF
9#define APPEL_SYSTEME_DEF
10
11#include <manux/appelsystemenum.h> /* Les numéros des AS définis */
12#include <manux/types.h>
13
14/*
15 * Définition du nombre maximal d'appels système
16 */
17#ifndef NB_MAX_APPELS_SYSTEME
18# define NB_MAX_APPELS_SYSTEME 16
19#endif
20
21/*
22 * Tableau des appels systeme
23 */
25
26/*
27 * Type du premier paramètre de chaque appel système (dû au
28 * séquencement des appels). WARNING a expliquer.
29 */
44
45
46int definirAppelSysteme(int num, void * appel);
47/*
48 * Définition de la fonction appel comme appel système de numéro num.
49 * Code de retour:
50 * 0 succés
51 * EINVAL num n'est pas dans l'intervalle correct
52 */
53
55/*
56 * Initialisation des appels systèmes prédéfinis.
57 */
58
63
64
69
70#endif
void * vecteurAppelsSysteme[NB_MAX_APPELS_SYSTEME]
void entrerAppelSysteme(uint32_t num)
Prélude à un appel système.
struct _ParametreAS ParametreAS
int definirAppelSysteme(int num, void *appel)
void sortirAppelSysteme(uint32_t num)
Fin d'un appel système.
void initialiserAppelsSysteme(void)
#define NB_MAX_APPELS_SYSTEME
unsigned long uint32_t
Definition types.h:20
uint32_t adresseRetourInterface
uint32_t ebx
uint32_t edx
uint32_t esi
uint32_t edi
uint32_t adresseRetourInterruption
uint32_t csretour
uint32_t ebp
uint32_t eflags
uint32_t ecx
uint32_t esp
uint32_t eax