Page principale   Liste par ordre alphabétique   Liste des composants   Liste des fichiers   Composants   Déclarations  

Référence du fichier fifo.c

#include "fifo.h"

Aller au code source de ce fichier.

Fonctions

void liste_init (l_fifo *liste)
 Initialise un pile.

void liste_add_pid (l_fifo *liste, int pid)
 Ajoute un nouveau processus a la pile.

int liste_next_pid (l_fifo *liste)
 Retourne le num du processus dont il faut executer une instruction.

int liste_supp_pid (l_fifo *liste, int pid)
 Supprime un processus de la pile.

void liste_add_page (l_fifo *liste, int page)
 Ajoute une nouvelle page a la pile.

int liste_old_page (l_fifo *liste)
 Retourne le num de la plus vielle page.

int liste_acces_page (l_fifo *liste, int page)
 Actualise l'age d'une page (qd on y accede).

int liste_supp_page (l_fifo *liste, int page)
 Supprime une page de la pile.

int liste_taille (l_fifo *liste)
 Retourne la taille de la liste.

int * liste_enum_pid (l_fifo *liste)
 Retourne un tableau d'entiers representant la liste des processus.


Description détaillée

Source definissant toutes les fonctions utiles pour manipuler une pile FIFO. Et notament pour gerer la liste de processus actifs et l'ordonnancement de leur execution.

Définition dans le fichier fifo.c.


Documentation de la fonction

int liste_acces_page l_fifo   liste,
int    page
 

Quand on accede a une page, elle devient la page la plus 'jeune'. Cette fonction permet d'actualiser l'age de cette page. En fait, on deplace cette page au fond de la pile.

Paramètres:
liste  : la pile contenant la liste des pages physiques de la memoire principale
page  : le num de la page a deplacer
Renvoie:
  • -1 en cas de pile vide
  • -2 si il n'y a pas de page de num page
  • 0 sinon

Définition à la ligne 174 du fichier fifo.c.

Références liste_add_page(), et liste_supp_page().

Référencé par cmd_clone(), ecrire_mot_mem(), lire_mot_mem(), et page_forcee().

void liste_add_page l_fifo   liste,
int    page
 

Ajoute une nouvelle page a la pile.

Paramètres:
liste  : la pile ds laquelle il faut ajouter une page
page  : le num de la page a ajouter
Renvoie:
rien

Définition à la ligne 126 du fichier fifo.c.

Références cellule::page, cellule::suivant, et l_fifo::tete.

Référencé par liste_acces_page(), et page_libre().

void liste_add_pid l_fifo   liste,
int    pid
 

Ajoute un nouveau processus a la pile

Paramètres:
liste  : la pile ds laquelle il faut ajouter un processus
pid  : le num du processus a ajouter
Renvoie:
rien

Définition à la ligne 27 du fichier fifo.c.

Références cellule::pid, cellule::suivant, cellule::temps, et l_fifo::tete.

Référencé par deverrouiller_tampon(), ecrire_stdin(), interprete_signaux(), lire_stdout(), pid_libre(), et terminer_proc().

int* liste_enum_pid l_fifo   liste
 

Retourne un tableau d'entiers representant la liste des processus en cours d'utilisation

Paramètres:
liste  : la pile contenant la liste des proc en cour d'execution
Renvoie:
Un pointeur sur un tableau d'entiers representant la liste passee en parametre.

Définition à la ligne 249 du fichier fifo.c.

Références liste_taille(), cellule::pid, cellule::suivant, et l_fifo::tete.

void liste_init l_fifo   liste
 

Initialise une pile

Paramètres:
liste  : la pile a initialiser
Renvoie:
rien

Définition à la ligne 17 du fichier fifo.c.

Références l_fifo::tete.

int liste_next_pid l_fifo   liste
 

Retourne le num du processus dont il faut executer une instruction

Paramètres:
liste  : la pile contenant la liste des proc en cour d'exec
Renvoie:
  • -1 en cas de pile vide
  • le num du processus sinon

Définition à la ligne 56 du fichier fifo.c.

Références cellule::pid, quantum, cellule::suivant, cellule::temps, et l_fifo::tete.

Référencé par top_horloge_handler().

int liste_old_page l_fifo   liste
 

Retourne le num de la plus vielle page

Paramètres:
liste  : la pile contenant la liste des pages physiques de la memoire principale
Renvoie:
  • -1 en cas d'erreur
  • Le num de la plus vielle page

Définition à la ligne 154 du fichier fifo.c.

Références cellule::page, et l_fifo::tete.

Référencé par page_forcee().

int liste_supp_page l_fifo   liste,
int    page
 

Supprime une page de la pile.

Paramètres:
liste  : la pile contenant la liste des pages physiques de la memoire principale
page  : le num de la page a supprimer
Renvoie:
  • -1 en cas de pile vide
  • -2 si il n'y a pas de page de num page
  • 0 sinon

Définition à la ligne 197 du fichier fifo.c.

Références cellule::page, cellule::suivant, et l_fifo::tete.

Référencé par liberer_page(), et liste_acces_page().

int liste_supp_pid l_fifo   liste,
int    pid
 

Supprime un processus de la pile

Paramètres:
liste  : la pile contenant la liste des proc en cour d'exec
pid  : le num du processus a supprimer
Renvoie:
  • -1 en cas de pile vide
  • -2 si il n'y a pas de processus de num pid
  • 0 sinon

Définition à la ligne 90 du fichier fifo.c.

Références cellule::pid, cellule::suivant, et l_fifo::tete.

Référencé par cmd_attends(), cmd_ecrit(), cmd_lit(), deverrouiller_tampon(), ecrire_stdin(), interprete_signaux(), lire_stdout(), pid_libre(), et supprimer_proc().

int liste_taille l_fifo   liste
 

Retourne la taille de la liste

Paramètres:
liste  : la pile contenant la liste des proc en cour d'execution
Renvoie:
La taille de la liste

Définition à la ligne 230 du fichier fifo.c.

Références cellule::suivant, et l_fifo::tete.

Référencé par liste_enum_pid().


Généré le Sun Sep 29 22:47:23 2002 pour KSInu par doxygen1.2.16