Généralités
Portail général TPAO
Portail Réseau
Généralités
Classification
Topologie
Connectique
Protocoles
Transmissions
NT4
Administration
Sécurité
Glossaire
Questions
Plan

Notions de Base

  • Le système d'exploitation Windows NT est très objet. Chaque entité, physique ou virtuelle, est représentée; comme un objet dans le système. Le coeur du système d'exploitation lui-même est divisé en objets, ce qui en fait un système d'exploitation modulaire. L'avantage de la méthode objet, quand certaines règles sont bien appliquées, est que chaque objet est indépendant. Un objet n'a aucune connaissance de comment sont constitués les autres. La seule chose qu'il connaisse des autres objets est leur interface. C'est uniquement à travers des interfaces que les objets vont dialoguer entre eux, ce qui assure, avec des interfaces bien définies, un bon fonctionnement d'ensemble. Si par hasard un problème survenait, ce serait une bogue dans le code de l'un des objets ou une mauvaise définition des interfaces. Une autre règle en programmation objet est d'avoir un couplage faible, c'est à dire que les interfaces ne doivent pas être trop grosses et qu'un objet ne devrait pas avoir à connaître trop d'objets. Ce dernier critère devient difficile à respecter dans le développement d'un système d'exploitation. En effet, tous les objets du système ont besoin des services des autres, un couplage fort est donc inévitable. Windows NT n'y a pas échappé.
  • Windows NT, comme tout système d'exploitation moderne, est préemptif et multitâches. Préemptif signifie qu'il est capable de faire tourner sur le microprocesseur plusieurs processus (programmes) en concurrence. C'est le système d'exploitation qui va se charger de remplacer un processus en cours d'exécution par un autre (changement de contexte...).
  • Windows NT est multi-processeurs, il peut gérer 4 processeurs, et même jusqu'à 32 avec un développement spécifique des constructeurs.
  • Windows NT est basé sur une architecture client-serveur. Le système est un ensemble d'objets. Certains sont propres au système, d'autres sont des objets "utilisateur". Quand un objet demande un service à un autre, il joue le rôle de client. Le fournisseur de service joue le rôle du serveur.
  • Un adressage 32 bits permet à Windows NT d'allouer 4 Go d'espace mémoire (virtuel) pour chaque processus.
  • Windows NT supporte plusieurs systèmes de fichier, la MS-DOS FAT (File Allocation Table), HPFS (High Performance File System), le système de fichier pour le CD-Rom, NTFS (NT File System). Pour le système Win32, je crois qu'il faut ajouter un petit programme. Pourtant c'est aussi du Microsoft, eh oui. A croire que ce système de fichier soit mauvais, et qu'il risquerait de rendre Windows NT instable.
  • Les langages de programmation C et C++ ont été principalement utilisés pour le développement de Windows NT.
  • Les services réseau sont intégrés au système d'exploitation (normal, c'est un NOS : Network Operating System, Système d'exploitation réseau).

 Structure détaillée de l'architecture Windows NT

Windows NT fonctionne dans deux mode différents, le mode noyau et le mode utilisateur.

  • Le mode noyau est le mode dans lequel tournent les fonctions vitales du système d'exploitation. C'est un mode protégé ou le code est très optimisé. Un programme tournant dans ce mode n'est pas soumis aux divers contrôles de sécurité, comme par exemple vérifier si la mémoire à laquelle il accède lui est bien attribuée. Les programmes ne doivent contenir aucune bogue car la sécurité est réduite au minimum. Les programmes doivent à tout prix respecter leur espace d'adressage. On retrouve dans ce mode tous les programmes utilisés en permanence par le système d'exploitation. Il est impossible de faire tourner ces propres programmes dans ce mode.
  • Le mode utilisateur est le mode dans lequel tournent les programmes qui sont soumis à la sécurité du système d'exploitation, fournie justement par les programmes qui tournent en mode noyau. On y trouvera tous les programmes des utilisateurs, mais aussi certains programmes du système d'exploitation qui ont été placés ici pour ne pas trop charger de programmes en mode noyau (peut-être aussi parce-que leurs programmes ne sont pas stables et qu'il ne vaut mieux pas qu'ils puissent accéder à toute la mémoire...).

La stabilité de Windows NT est assurée grâce à ces deux modes. Le mode noyau est le coeur du système d'exploitation, la partie la plus petite possible, la plus optimisée et sans aucune bogue. Tout ce qui tourne en mode utilisateur est controlé par les programmes du mode noyau et ne peut donc pas faire planter le système, en théorie.

Sur l'image qui suit, la séparation entre les deux modes est matérialisée par une ligne horizontale en pointillés :

Tout ce qui apparaît en vert, c'est à dire, tout ce qui est en mode noyau, sauf le matériel, s'appelle le NT Executive. Il regroupe le noyau, la HAL et les services systèmes. Les services systèmes sont tous les modules tournant en mode noyau, autour du noyau (ne pas confondre noyau et mode noyau) : le I/O Manager, l'Object Manager, le Security Ressource Manager, le Process Manager, le LPC, le Virtual Memory Manager et le Graphic Manager. Sur l'image, les services systèmes sont représentés comme une surcouche, c'est en fait la vision que tout programme tournant en mode utilisateur a du système d'exploitation. Les programmes vont faire appel aux services système via des API appelées "Native API". Il ne vont pas s'adresser directement à tel ou tel service.
Critères
Généralités
HAL
Noyau
Services
environnement
VDM
Liens

Toute remarque concernant ce site peut être envoyée à
Jean Cumps - Faculé de Médecine UCL - Ecole de Pharmacie - TPAO

Dernière modification : 06/01/03