next up previous contents
suivant: Les appels systèmes privilégiés monter: Les appels systèmes présents précédent: Les appels systèmes présents   Table des matières

Les appels systèmes non-privilégiés

Ces appels systèmes sont librement utilisables par tous services ou programmes. Ils utilisent l'interruption 0x30 (48ième entrée de l'IDT).

Les appels systèmes suivant sont temporaires, ils seront bientôt implémenter sous forme de fonctions utilisateurs de la librairie C, avec une implémentation thread-safe :

Code syscall Fonction libc Description
SYSCALL_MALLOC malloc(unsigned int size) Alloue de la mémoire
SYSCALL_FREE free(void **data) Libère de la mémoire
    précédemment allouée par
    malloc

Les appels systèmes suivants sont totalement définitif, et concerne les messages:

Code syscall Fonction libc Description
SYSCALL_GET_MSG get_msg() Récupère le prochain message
    de la tâche
SYSCALL_WAIT_MSG wait_msg() Endort l'appelant jusqu'à
    réception d'un message
SYSCALL_WAIT_MSG wait_msg_from(...)  
_FROM    
SYSCALL_GET_MSG get_msg_from(...)  
_FROM    
SYSCALL_SEND_MSG send_msg(t_msg *msg_hdr) envoie le message msg_hdr
SYSCALL_CREATE_MSG create_msg(t_tskid dest, Crée un message
  int data_size)  

Les appels systèmes suivants sont également définitif, mais leur implémentation changera (Cf. partie ``Evolutions futures''):


next up previous contents
suivant: Les appels systèmes privilégiés monter: Les appels systèmes présents précédent: Les appels systèmes présents   Table des matières
nicolas 2006-07-30