Formation : Développement système, sous Windows 2003/XP/Vista
Se former avec
ORSYS
- Renseignements :
- Durée : 5 Jours
- Type : En centre
- Diplômant : Oui
-
Prix H.T. € :2150.00
- Objectifs :
- Ce cours pratique vous apportera toutes les connaissances nécessaires au développement d'applications en C/C++ sous Windows 2003/XP/Vista mettant en œuvre la programmation système (utilisation du SDK Win 32). Dans les cas d’applications non gérées par C/C++, il utilisera l’environnement de développement Visual Studio.Net.
- Public visé :
-
Développeurs ayant à réaliser sous Windows 2003/XP/Vista des applications demandant l'utilisation des appels système.
- Pré-requis :
- Connaissance de l'utilisation d'un système fenêtré de type Windows. Bonne maîtrise de la programmation en C ou connaissance de la programmation en C++.
- Introduction
- Architecture de Windows 2003/XP/Vista : concepts essentiels, intégration de la sécurité, architecture client/serveur et conception orientée objet du système.
- Objets du noyau gestion des handle, notion de pseudo handle, manipulation des objets.
- Environnement de développement 32 bits : outils, SDK et MFC.
- Premier exemple de programme utilisant les appels système sous Windows.
- API de base : Gestion des entrées/sorties. Gestion du système de fichier. Gestion de l’asynchronisme dans les appels d’entrée/sortie. Gestion des erreurs dans les appels du système.
Environnement de développement avec Visual Studio .NET
- Les outils du développement : éditeur, divers types de programmes, outils de mise au point sous Visual Studio.NET.
- Les diverses librairies de programmation : mise en œuvre et différences.
- Approche dans la portabilité des applications entre les systèmes d’exploitation.
- Outils complémentaires au développement.
Travaux pratiques
Utilisation des outils standard de l’environnement de développement Visual .NET.
Le multitâche Windows 2003/XP/Vista
- Notion de thread et processus.
- Mise en œuvre des threads : lancement, vie et mort.
- Gestion des priorités, synchronisation entre threads, mécanismes de communications entre threads.
Travaux pratiques
Création de programme mettant en œuvre les threads. Communication entre threads.
Multiprocessus
- Utilisation des processus : lancement et arrêt.
- Manipulation des processus : changement des priorités, récupération d’informations.
- Relations interprocessus et nécessité des mécanismes de communication.
- Gestion des jobs sous Windows 2003/XP/Vista : principe du regroupement de processus en jobs, API de manipulation des jobs. Exemple d’utilisation.
Travaux pratiques
Mise en œuvre d’un programme multiprocessus dans l’environnement Visual C++. Mise en œuvre de la notion de job sous Windows 2003/XP/Vista.
Gestion de la mémoire
- Principe de la gestion de la mémoire sous Windows et modèle de mémoire : gestionnaire de mémoire virtuelle, espace d’adresse.
- Fonctions de gestion la mémoire : notion de ‘Heap’.
- Partage de mémoire entre thread et entre processus.
- Fichier ‘mappé’ en mémoire : principes et mise en œuvre.
Travaux pratiques
Mise en œuvre des mécanismes de gestion de mémoire et de communication interprocessus.
Mécanismes de communication interprocessus
- Gestion des canaux de communications (pipe) : canaux de communication non nommés et nommés.
- Relation avec le réseau.
- Utilisation des canaux de communication nommés : création, connexion et modifications.
- Les boîtes aux lettres ‘mailslot’ : différence entre les pipe et mailslot.
Travaux pratiques
Mise en œuvre des canaux de communication nommés pour la communication interprocessus
Gestion des exceptions
- Gestion des exceptions structurées.
- Mise en œuvre de la gestion des exceptions : intégration de la gestion des exceptions en C et C++.
- Utilisation de la gestion des exceptions : terminaison anormale d’un programme, outils de mise au point.
Développement de librairies dynamiques
- Concept de DLL (Dynamic Load Library). Avantages pour l’organisation des développements.
- Création de DLL avec l’environnement de développement. Utilisation de DLL pour la communication inter-application. Mise en commun de code. Eléments importants pour les DLL : fonctions d’initialisation et de terminaison (DllMain), contraintes d’utilisation.
- Interaction entre les DLL et les divers éléments du système.
Travaux pratiques
Utilisation de l’environnement de développement pour la création de DLL.
Gestion UNICODE sous Windows 2003/XP/Vista
- Principe de la codification UNICODE : internationalisation et portabilité des applications.
- API d'accès aux informations de localisation.
- Manipulation de données UNICODE et conseils d'écriture.
Travaux pratiques
Ecriture de programmes utilisant les données stockées sous forme UNICODE.
Développement de services sous Windows 2003/XP/Vista
- Notion de service. Principe de l’intégration de ‘démons’ dans le système. Intérêts du concept de service dans le développement système.
- Création et mise en place de services dans l’environnement Windows 2003/XP/Vista. Interaction avec le Service Control Manager (SCM).
- Interaction entre la notion de services et les contraintes de sécurité. Respect de la protection du système. Intégration de la sécurité dans la conception de services sous Windows.
Travaux pratiques
Création de service avec l’environnement Visual C++ de Microsoft.
Mise en œuvre de la sécurité
- Les principes de la sécurité sous Windows : jeton de sécurité, objets, sujet et usurpation de sujet.
- Les fonctions de gestion de la sécurité : descripteur de sécurité, liste de contrôle d’accès.
- Interaction entre le système d’authentification en domaine et la mise en œuvre de la sécurité dans les programmes Windows.
Travaux pratiques
Illustration de la mise en œuvre de la sécurité dans un programme.
2008 au 2009 (6)
2008 au 2009 (31)
2008 au 2009 (13)
2008 au 2009 (35)
2008 au 2009 (44)
2008 au 2009 (69)
2008 au 2009 (75)
2008 au 2009 (92)