Programmation système Windows qui stimule le cerveau
Chapitre 1 La première histoire de la structure informatique
- Comprendre et approcher la programmation du système
- Programmation système?
- Composants principaux des systèmes informatiques
- Configuration du matériel informatique
- CPU (unité de traitement centrale)
- Mémoire principale
- Bus d'entrée / sortie
- Comprendre le processeur
- Alu (unité logique arithmétique)
- Unité de contrôle
- Enregistrez les ensembles à l'intérieur du processeur
- Interface de bus
- Impulsion d'horloge
- Processus d'exécution du programme
- Grand mathématicien von Neuman
- Processus d'exécution du programme
- Réconciliation
Chapitre 2 asciicode vs Unicode
- Unicode dans Windows
- Types et caractéristiques du jeu de caractères
- Chaîne basée sur MBCS
- Programmation basée sur WBCS
- Support simultané des MBC et des WBC
- `#include <windows.h>
- Ressources définies par Windows
- Macro pour prendre en charge les MBC et les WBC (Unicode) en même temps
- Fonctions pour prendre en charge les MBC et les WBC (Unicode) en même temps
3 Chapitre 64 -BIT-Based Programming
- Gagnez 32 vs gagner 64
- 64-bits et 32-bits
- Ordinateur 64-bits du point de vue du programmeur
- Gagnez 32 contre gagnant 64 du point de vue de la mise en œuvre du programme
- LLP64 vs LP64
- Problèmes de coexistence 64-bits et 32-bits
- Matériaux de style Windows
- Vérifiez le type de données Windows
- Type de données polymorphe
- Hors des erreurs
- Fonction et code d'erreur GetLasterRor
- Conception du projet de programmation système
- Proposition du projet d'invite de commande
- Suggestions de projets d'invite de commande et mise en œuvre des commandes de sortie
Chapitre 4 La deuxième histoire de la structure informatique
- Comment aborder la structure informatique
- Concevons l'ordinateur
- Concevons le registre
- Concevoir la structure et la commande de la commande
- Conception de commande de chargement et de stockage
- La nécessité de la commande de chargement et du magasin
- Conception de commande de chargement et de stockage
- Mode direct et mode indirect
- Problèmes en mode direct et proposition du mode indirect
- Comprendre le mode indiret
- Exemple d'utilisation du mode indirect
Chapitre 5 La création et l'extinction des processus
- Comprendre le processus
- Qu'est-ce qu'un processus?
- Élément
- Chancaire et changement de statut du processus
- Planification du processus
- Changement dans le processus du processus
- Comprendre l'état du processus, compréhension avec des scénarios
- Commutation de contexte
- Création de processus
- Création de processus
- Comprendre la fonction de création
- Comprendre la fonction de création de création à travers un exemple
- Composition et exécution de l'environnement pour la pratique
- Exemples et problèmes liés à la création de processus
- Ajouter une fonction du projet d'invite de commande
Chapitre 6 Objets du noyau et acier d'objet
- Comprendre l'objet du noyau
- Comprendre l'objet du noyau
- Autres objets du noyau
- Objet du noyau et gérer la relation de dépendance
- Nombre d'objets et d'utilisation du noyau
- Ajouter une fonction du projet d'invite de commande
Chapitre 7 Communications entre les processus (IPC) 1
- La signification de la communication inter-process (IPC)
- Type de machine à envoyer IPC
- Signalé vs non signalé
Chapitre 8 Intercepteurs (IPC) 2
- Héritage des tables de poignée et des poignées d'objet
- Tuyau
- Variable de l'environnement de traitement
- Ajouter une fonction du projet d'invite de commande
Chapitre 9 Algorithme de planification et priorité
- Planification du processus
- Différences entre le système d'exploitation ordinaire et le système d'exploitation en temps réel
- Sott rtos vs hard rtos
- OS préventif et OS non en ligne
- Algorithme de planification prioritaire
- Algorithme de planification de la ronde
- Planification par algorithme de planification
- Inversion prioritaire
- Priorité du processus Windows
- Ajouter une fonction du projet d'invite de commande
- Comprendre la redirection
- Comment mettre en œuvre la redirection
- La réponse que j'ai mise en œuvre
Chapitre 10 Troisième histoire de la structure informatique
- Prise en charge de la procédure du Modèle de processeur
- Structure du cadre de pile
- Registre SP
- Registre du pointeur de cadre
- Stockons-le sur la pile, pointeur de cadre
- Fonction d'appel de fonction et conception d'instructions push & pop
- Salle de livraison du facteur d'appel de fonction
- Conception de la commande push & pop
- Mouvement de l'exécution par une fonction appelant
- Structure de mémoire et compteur de programme à regarder en arrière (compteur de programme)
- Fonction d'appel et de fin de fonction
- Congrès d'appel
Chapitre 11 Compréhension du fil
- Qu'est-ce qu'un fil?
- Programme basé sur plusieurs processus
- Problèmes et nouvelles propositions de programmes basés sur le système d'exploitation multi-processus
- Solution, filetage
- Le processus et enfiler ce processus à partir d'une structure de mémoire
- Processus et threads sous Windows
- Classification Selon le modèle de mise en œuvre du thread
- Thread au niveau du noyau et thread de niveau utilisateur
- Mode du noyau et mode utilisateur
- Avantages et inconvénients des threads de niveau du noyau et des threads de niveau utilisateur
Chapitre 12 Création et destruction du fil
- Création de threads et extinction dans Windows
- Génération de fil
- La disparition du thread (y compris des histoires supplémentaires sur la production de threads)
- La personnalité et les caractéristiques du thread
- Vérification des hanches, des zones de données et des zones de code
- Problèmes dans l'approche simultanée
- Séparation du thread du processus
- Bibliothèque et thread ANSI Standard C
- Fil
- Changement de fil
- Suspendre et reprendre
- Contrôle prioritaire du thread
Chapitre 13 Technique de synchronisation des threads 1
- Qu'est-ce que la synchronisation du thread?
- Synchronisation des threads sous deux perspectives
- Deux méthodes de synchronisation des threads
- Synchronisation de l'approche de la section critique
- Comprendre la section critique
- Synchronisation en mode utilisateur
- Synchronisation basée sur la section critique
- Synchronisation basée sur la famille entre verrouillée
- Synchronisation en mode noyau
- Synchronisation basée sur mutex
- Synchronisation à base de Semapore
- Synchronisation du nom Mutex basé sur le nom Mutex
- Propriété de Mutex et Wait_abandoned
Chapitre 14 Technique de synchronisation du thread 2
- Synchronisation dans l'ordre d'exécution
- Modèle producteur / consommateur
- Synchronisation basée sur l'événement
- Exemple d'utilisation des événements en mode réinitialisation manuelle
- Événement plus mutex
- Exemple d'applications et d'objets mutex
- Synchronisation basée sur la minuterie
- Timer de réinitialisation manuelle
- Périodique
Chapitre 15 Pooling de filetage
- Comprendre la piscine de fil
- Implémentation de pool de threads
- Interprétation par module de la mise en œuvre du pool de threads
- Code source d'implémentation complète du thread
- Ajouter une fonction du projet d'invite de commande
- Tuyau de connexion et sortie
- Principe de mise en œuvre
- Mise en œuvre
Chapitre 16 La quatrième histoire de la structure informatique
Chapitre 17 Technique de traitement des exceptions structurelles (SEH)
- Seh (manipulation des exceptions structurées)
- Le besoin de traitement des exceptions
- La différence entre les exceptions et les erreurs
- Exception matérielle et exception du logiciel
- Gestionnaire de terminaison
- Composition de base et principe d'action des termes
- Étude de cas d'utilisation du gestionnaire de fin 1
- Handler final utilise l'étude de cas 2
- Gestionnaire d'exceptions
- Handler et filtre des exceptions
- Étude de cas d'utilisation du gestionnaire d'exceptions
- Mouvement d'exceptions non transformées
- Maître
- Comment faire la distinction entre les types et les exceptions des exceptions définies
- Exception_continue_excusion & exception_continue_search
- Exception de définition du développeur basé sur le logiciel
- Occurrence d'exceptions logicielles
- GetExceptionInformation
Chapitre 18 Fichier E / S et contrôle du répertoire
- Fonctions de traitement de fichiers de base
- Fichier ouvert et fermer
- Lecture et écriture de fichiers et pointeurs
- Exemples d'ouverture, de lecture, d'écriture et de fermeture du fichier
- Obtenez les informations de temps du fichier
- Obtenir la taille du fichier
- Obtenez les informations caractéristiques du fichier
- Obtenez des informations caractéristiques du fichier
- Obtenez les informations sur le chemin du fichier
- Mouvement du pointeur -32 -bit Base
- Mouvement du pointeur de fichier -64 -bit Base
- Fonctions liées au répertoire et autres fonctions
- Création et extinction du répertoire
- Répertoire actuel, répertoire système et répertoire Windows
- Trouvez un fichier dans le répertoire
- Ajouter une fonction du projet d'invite de commande
- Xcopy Comprendre
- Portée et méthode de mise en œuvre de XCopy
- Cas de mise en œuvre de Xcopy
Chapitre 19 E / S asynchrones et APC
- E / S asynchrones
- Compréhension des E / S asynchrones
- E / S chevauchée
- Exemple d'E / S chevauché
- E / S Extension des infrastructures de routine d'achèvement
- État alerte
- Informations sur l'emplacement du fichier de la structure superposée
- Routine complète sur la minuterie
- Le contenu jusqu'à présent
- APC (appel de procédure asynchrone)
- Structure APC
- Accès à la file d'attente APC
Chapitre 20 Mémoire virtuelle (tas, MMF)
- Contrôle de la mémoire virtuelle
- Réserve, engager et libre
- Vérification du point de départ et de l'unité d'allocation de mémoire
- Fonction VirtualAlloc et VirtualFree
- Conception dynamique du tableau
- Contrôle du tas
- Ma mémoire de contrôle du tas
- Heap et Windows Hip par défaut dans le système Windows
- Contrôle de la hanche par défaut
- Un autre avantage de la production de tas dynamique
- Création, extinction et affectation de la hanche
- Exemple de liste de tas et lien
- MMF (fichier mappé de mémoire)
- Comprendre MMF
- Processus de mise en œuvre du MMF
- Fonction d'implémentation de MMF
- Exemple de configuration de MMF 1
- MMF pour écrire
- Copie-écriture (vache)
Chapitre 21 Bibliothèque de liaison dynamique
- Bibliothèque et printf!
- question
- La réponse est la bibliothèque
- Motivation pour écrire des bibliothèques
- Écrivez une bibliothèque
- Bibliothèque statique
- Une autre DLL de bibliothèque
- Comprendre la bibliothèque dynamique de liaison (DLL)
- La différence entre la DLL et la bibliothèque statique
- Production DLL 1: liaison implicite
- DLL et Déclaration externe
- DLL Production 2: liaison explicite
- DLL qui peut être chargé plus d'une fois
- Il s'agit de créer certains des fichiers Hoder!
- Au moins trois éliminatoires
- Soutenir tous avec un fichier d'en-tête