Programmation système sous Unix/Linux
Code |
Title |
Duration |
Price HT |
C350 |
Programmation système sous Unix/Linux |
5 days |
Consult us |
Objectives
Apprendre à programmer l'interface de programmation système d'Unix, de
Linux et de façon plus générale des systèmes compatibles
Posix. Maîtriser les processus, la gestion de la mémoire et les
communications entre processus. |
Public
Développeurs. |
Prerequisites
La connaissance du langage C est indispensable. |
Post-Training
|
Methods
50% Pratique 50% Théorique |
Program
CONCEPTS ET OUTILS- Généralités sur le développement sous Linux
- L'architecture des systèmes Unix
- Outils de développement (Éditeurs de texte, Compilateur, éditeur de liens, débogueur, profileur)
- Traitement du code source
- Construction d'application
- Distribution du logiciel
- Environnements de développement intégré
- Contrôle de version
- Bibliothèques supplémentaires pour le développement
PROCESSUS ET THREADS- La notion de processus
- Accès à l'environnement
- Exécution des programmes
- Lancement d'un nouveau programme
- Fin d'un programme
- Exécution automatique de routines de terminaison
- Attendre la fin d'un processus fils
- Signaux
- Gestion classique des signaux
- Liste des signaux sous Linux
- Émission d'un signal sous Linux
- Gestion portable des signaux sigaction( )
- Signaux temps-réel
- Endormir un processus
- Timers temps-réel
- Suivre l'exécution d'un processus
- Obtenir des statistiques sur un processus
- Limiter les ressources consommées par un processus
- Entrées-sorties simplifiées
- Ordonnancement des processus
- États d'un processus
- Fonctionnement multitâche, priorités
- Modification de la priorité d'un autre processus
- Les mécanismes d'ordonnancement sous Linux
- Programmation multithread
- Création de threads
- Attributs des threads
- Déroulement et annulation d'un thread
- Zones d'exclusions mutuelles
- Attente de conditions
- Sémaphores
- Données privées d'un thread
- Les threads et les signaux
GESTION DE LA MEMOIRE- Routines classiques d'allocation et de libération de mémoire
- Règles de bonne conduite pour l'allocation et la libération de mémoire
- Désallocation automatique avec alloca( )
- Débogage des allocations mémoire
- Configuration de l'algorithme utilisé par malloc( )
- Verrouillage de pages en mémoire
- Projection d'un fichier sur une zone mémoire
- Protection de l'accès à la mémoire
- Utilisation des blocs mémoire et des chaînes
FICHIERS ET FLUX DE DONNEES- Différences entre flux et descripteurs
- Ouverture et fermeture d'un flux
- Lectures et écritures dans un flux
- Positionnement dans un flux
- Fichiers à trous
- Problèmes de portabilité
- Paramétrage des buffers associés à un flux
- État d'un flux
- Ouverture et fermeture d'un descripteur de fichier
- Lecture ou écriture sur un descripteur de fichier
- Positionnement dans un descripteur de fichier
- Accès au contenu des répertoires
- Fichiers temporaires
- Recherche de noms de fichiers
- Attributs des fichiers
ACCES AUX INFORMATIONS DU SYSTEME- Groupes et utilisateurs
- Nom d'hôte et de domaine
- Informations sur le noyau
- Système de fichiers
IPC- Communications classiques entre processus (pipes, pipes nommés)
- Files de messages
- Mémoire partagée
- Sémaphores
- Entrées-sorties avancées
- Entrées-sorties non bloquantes
- Attente d'événements – Multiplexage d'entrées
- Distribution de données – Multiplexage de sorties
- Entrées-sorties asynchrones avec fcntl( )
- Entrées-sorties asynchrones Posix.1b
- Écritures synchronisées
- Programmation réseau
- Manipulation des adresses IP
- Noms d'hôtes et noms de réseaux
- Utilisation des sockets
|
Environment
|
Tags
C350 programmation systeme Unix Linux C350 |
Order
Formafast Consulting
1, Rue Mozart, 20250 Casablanca, Maroc
Phone : +212 6 31 10 82 16 WhatsApp/Telegram
E-mail: contact@formafast.com