Annonces Google

mercredi 22 octobre 2008

fork, creation de process linux

fork() permet de créer un processus fils à partir d'un processus père. Les deux processus s'exécutent en parallèle.
Le processus fils est une copie du processus père. Pour distinguer les deux, il faut lire le retour du fork:
  • Au niveau du processus fils, le retour du fork est zéro.
  • Au niveau du processus père: fork retourne le pid du processus fils.

Un petit exemple en C:

#include
main()
{
int pid;
pid = fork();
if (pid == 0)
{
for(;;)
printf ("Affichage Processus fils\n");
}
else
{
for(;;)
printf("Affichage Processus fils\n");
}
}

mercredi 15 octobre 2008

Linux Programmation, Présentation du plan de cours

I. Introduction 

1.      Rappels d'architecture machine.

2.      Fonctions d’un système d'exploitation.

3.      Notions de bases (commutation de contexte, trappes, appels système).

II. Gestion de processus

1.      Processus : concepts, opérations sur les processus.

2.      Processus Linux : création d’un processus, recouvrement de code, fin de processus, états et structure d’un processus Linux

3.      Ordonnancement dans un système multiprocessus

4.      Ordonnancement sous Linux.

5.      Fonctionnement des signaux.

TP : Création des Processus Père/Fils, et ordonnancement des processus

III. Communication entre processus

1.      Utilisation des tubes

2.      Utilisation des files de messages

3.      Utilisation de la mémoire partagée.

4.      Communication répartie : les sockets

TP 1 : Communication entre Processus en utilisant des tubes, des files des messages, de la mémoire partagée.

TP 2 : Communication entre deux processus répartis en utilisant des Sockets avec le protocole UDP, puis des sockets avec le protocole TCP.

 

IV. Gestion des accès concurrentiels

1.      Les schémas de synchronisation :

2.      Exclusion mutuelle

3.      Producteurs/Consommateurs

4.      sémaphores.

TP : Simulation du principe Producteurs / Consommateurs avec des processus Linux

V. Gestion de la mémoire

1.      Pagination.

2.      Mémoire virtuelle.

3.      Segments de mémoire partagé sous Linux.

VI. Systèmes de fichiers

1.      Interfaces des systèmes de fichiers et implémentation.

2.      Allocation du support de masse.

3.      Notions de répertoires, de partition.

4.      Gestion des accès disque (politique d’ordonnancement du bras)

VII : Systèmes de gestion de fichiers sous Linux

1.      Structure des fichiers Linux, INODE.

2.      Structure d’une partition Linux.

3.      Commandes Linux liées à la gestion de fichiers.

 

Linux programmation, séance du 15 Octobre 2008

Dans cette séance, nous verrons les points suivants : 
  1. Objectif du cours.
  2. Présentation du plan du cours.
  3. Rappels d'architecture machine.
  4. Fonctions d’un système d'exploitation.
  5. Notions de bases (commutation de contexte, trappes, appels systèmes.