L'Evolution de l'architecture du
noyau
Os évolutif
Les capacités d'administration
Infrastructure du réseau
Déploiement sur les postes de
travail
Exploitation des derniers
matériels
D'autres fonctions
L'évolution
de l’architecture du noyau
Microsoft Windows 2000 se compose d'un
grand nombre de couches, lesquelles coopèrent pour offrir un
système d'exploitation complet à l'utilisateur. Au cœur de
cette architecture se trouve le noyau. Ce dernier n'est pas un
processus comme les autres, car il dispose de privilèges spéciaux
pour accéder au matériel. C'est le noyau qui est chargé
d'allouer la mémoire aux applications, de communiquer avec
les pilotes de périphérique et de choisir les processus qui
sont exécutés à un instant donné. Les applications dépendent
du noyau pour l'allocation de la mémoire, du temps processeur
et des ressources matérielles. Le noyau de Windows 2000
Server est un héritier direct du noyau de Microsoft Windows
NT 4.0, qui, lui-même, dérivait des versions précédentes
de Windows NT (figure 1-1). Chaque nouvelle version a été créée
pour répondre aux nouveaux besoins des utilisateurs, des
administrateurs et des programmeurs.
À chaque
fois que les programmeurs ont eu besoin de fonctionnalités
que le noyau de Windows NT n'offrait pas, Microsoft a modifié
ce dernier. Par exemple, on a ajouté les quotas de processeur
et la comptabilité de processus pour répondre aux besoins spécifiques
de IIS (Internet Information Server). Le noyau apporte
maintenant une meilleure prise en compte des utilisateurs
multiples, ce qui permet d'installer les services de terminal
(Terminal Services) sans qu'il y ait besoin de grosses
modifications du système. Les développeurs sont gagnants,
car ils peuvent désormais ajouter des fonctionnalités très
demandées. Les administrateurs et les utilisateurs bénéficient,
eux aussi, de ces améliorations.
Microsoft a
également remanié plusieurs aspects du noyau pour répondre
aux besoins spécifiques des administrateurs. Entre autres améliorations,
Windows 2000 Server s'adapte beaucoup mieux que ne pouvait le
faire Windows NT, grâce à une fonctionnalité appelée évolutivité,
scalability en anglais. Les applications réseaux sont plus
fiables et plus efficaces qu'auparavant. Pour les utilisateurs
d'autres pays, il est plus facile d'utiliser le système
d'exploitation et ses applications dans les environnements
nationaux. Il est important de comprendre les modifications opérées
dans le noyau, avant de passer aux améliorations apportées
aux divers services. En vérité, bon nombre des améliorations
apportées aux services s'appuient sur des modifications
faites au niveau du noyau.
Les quotas et la comptabilité de processeur
Les
fournisseurs de services Internet partagent souvent un même
serveur web entre plusieurs clients. Jusqu'à présent le site
web d'un client pouvait, dans certains cas, monopoliser les
processeurs et dégrader les performances des autres clients.
De même, le code ASP bogué d'un utilisateur était
susceptible de bloquer entièrement un serveur d'intranet. IIS
était capable de réguler la largeur de bande, mais le système
d'exploitation ne pouvait pas contrôler efficacement la
quantité de temps processeur accordée à chaque site web.
Deux
nouvelles fonctionnalités optimisent les environnements
multiutilisateurs : la comptabilité de processeur et la régulation
du temps processeur (CPU Throttling). La comptabilité de
processeur permet à IIS d'enregistrer dans un journal le
nombre de cycles CPU consommés par chaque requête web. Cela
permet aux fournisseurs de services Internet d'établir leur
facturation en fonction de l'utilisation du processeur, et aux
programmeurs de détecter les pages à optimiser en priorité.
La régulation du temps processeur empêche les applications
out-of-process d'un site web de monopoliser le temps
processeur au détriment d'autres sites web.
L'objet
tâche (job object) est la technologie sur laquelle s'appuie
la comptabilité de processeur et la régulation du temps
processeur. Pour comprendre ce que fait un objet tâche, il
faut savoir comment les applications et les services utilisent
les processus. Des services comme IIS engendrent de nombreux
processus, ce qui permet d'accomplir plusieurs tâches en même
temps. Les processus multiples améliorent les performances,
mais ils compliquent le suivi (quel processus est associé à
quelle tâche ?). Comme IIS 4 pouvait gérer un grand nombre
de serveurs virtuels se partageant le même espace
d'application, il était impossible d'auditer ou de contrôler
la quantité de ressources processeur consommée par chaque
serveur virtuel.
Les
objets tâches permettent au système d'exploitation de gérer
des groupes de processus sous la forme d'une seule unité.
Cela facilite pour les applications le contrôle et la régulation
du temps processeur consommé par les différentes tâches.
Cette fonctionnalité est vitale pour les environnements dans
lesquels plusieurs clients se partagent un même serveur.
Remarque
Dit plus simplement, un ou plusieurs processus peuvent coopérer
pour former une tâche unique, représentée par un objet tâche.
Le comptage Spin
Le
comptage Spin améliore les performances des machines
multiprocesseurs lorsque plusieurs programmes doivent accéder
simultanément aux mêmes ressources. Le comptage contrôle le
nombre de fois qu'un processus essaie d'accéder à une
ressource avant de se mettre en attente. Prenons un exemple :
une application de base de données a de multiples requêtes
qui s'exécutent en même temps sur différents processeurs.
Requête1 essaie d'écrire dans une ligne d'une certaine table
mais se voit refuser l'accès parce que Requête2 a verrouillé
la ligne. Sans le comptage, Requête1 attendrait un certain
temps, ce qui bloquerait l'exécution de la requête. Avec le
comptage Spin, Requête1 réessaie un certain nombre de fois
d'écrire dans la ligne dans l'espoir que Requête2 aura
entre-temps libéré la ligne. Requête1 n'attend que si
toutes ses tentatives ont échoué.
Cela
n'est utile que sur les machines multiprocesseurs, car il n'y
a qu'elles à pouvoir exécuter plusieurs processus simultanément.
Sur une machine monoprocesseur, les différents processus
doivent attendre que les autres aient fini ; en pareil cas, il
ne sert à rien de refaire des tentatives tant que l'autre
processus n'a pas libéré la ressource. Les applications
utilisant le comptage Spin sur des machines monoprocesseurs ne
verront pas leurs performances dégradées ; il n'y aura
simplement pas d'amélioration.
Le regroupement des E/S (scatter/gather)
Cette
nouvelle fonctionnalité de Windows 2000 Server améliore les
performances des serveurs d'application de votre réseau.
C'est une fonctionnalité totalement transparente pour les
administrateurs système, car les applications peuvent
l'utiliser sans qu'il faille procéder à quelque
configuration que ce soit. Cette technique rationalise le
processus de transfert des données depuis des portions non
contiguës de la RAM vers une partie connexe du disque dur.
Les applications utilisant cette technique doivent être écrites
de manière spécifique. De ce fait, les services existants ne
pourront pas en bénéficier. Cette technique, apparue avec un
service pack de Windows NT, a été spécialement conçue pour
optimiser les performances de Microsoft SQL Server. Windows
2000 Server est le premier système d'exploitation de
Microsoft à intégrer directement cette fonctionnalité.
Les tranches de temps
programmables
Un
quantum est une propriété de thread qui définit la durée
pendant laquelle s'exécute un thread avant que le système
passe la main à un autre thread. Les administrateurs et les développeurs
peuvent désormais contrôler plus finement le type et la durée
des quantums. Comme la commutation entre les threads prend du
temps, certaines applications peuvent tirer profit d'un
accroissement de la durée du quantum. Toutefois,
l'augmentation de la tranche de temps d'un thread peut dégrader
le fonctionnement multitâche.
Il
existe deux types de quantums : quantum à durée fixe et
quantum à durée variable. Le choix se fait dans la boîte de
dialogue Performance
Options (figure 1-2), accessible via l'onglet « Advanced
» de la boîte de dialogue System
Properties. Si vous donnez la priorité aux applications,
vous faites allouer des quantums courts et variables, ce qui
donne un fonctionnement multitâche plus lisse. Si vous donnez
la priorité aux services tournant en arrière-plan, vous
forcez le système d'exploitation à employer des quantums
longs et fixes,. ce qui améliore les performances des
services réseaux. Par défaut Windows 2000 Server donne la
priorité aux services tournant en arrière-plan, alors que
Windows 2000 Professional donne la priorité aux applications.
Figure
1-2. L'administrateur peut désormais configurer le type et la
durée du quantum.
Le
modèle de pilote de Windows
Un
pilote est un élément logiciel qui permet au système
d'exploitation de communiquer avec un composant matériel. Par
exemple, chaque modèle de carte vidéo a des capacités et
des méthodes de communication différentes ; c'est le pilote
qui fait la traduction entre Windows 2000 et la carte vidéo
spécifique. Tous les périphériques doivent avoir des
pilotes : cartes réseaux, cartes SCSI, modems, scanners et
imprimantes. Les versions précédentes de Windows exigeaient
des pilotes différents pour chaque version du système. Cela
représentait un fardeau pour les fabricants (qui écrivent
les pilotes) et pour les administrateurs supervisant plusieurs
systèmes d'exploitation.
Le
nouveau modèle de pilote WDM (Windows Driver Model) permet
d'utiliser les mêmes pilotes sur Windows 2000 et sur Windows
98. Cette technologie est avantageuse pour les fabricants qui
n'ont plus besoin d'écrire deux jeux de pilotes. Elle est également
avantageuse pour les utilisateurs, car elle accroît la
compatibilité entre les différents systèmes d'exploitation
Microsoft. Elle est enfin avantageuse pour les
administrateurs, qui n'ont plus besoin de gérer des pilotes
distincts pour les utilisateurs de Windows 98 et pour leurs
serveurs.
WDM
offre d'autres avantages. Microsoft a fait le gros du travail,
au niveau de la création des pilotes de périphérique. Les
fabricants n'ont plus qu'à écrire un minipilote pour chacun
de leurs produits, ce qui demande un temps de programmation
sensiblement réduit.
L'architecture
WDM Kernel Streaming améliore les performances des supports
pour données continues en temps réel. Les versions précédentes
de Windows obligeaient les applications gérant ces données
à faire le gros de leur travail dans le mode utilisateur. Bon
nombre de ces fonctionnalités ont été transférées vers le
mode noyau, où elles tournent beaucoup plus rapidement. Il
faut écrire les applications de manière spécifique pour
qu'elles puissent bénéficier de l'architecture WDM Kernel
Streaming. Les applications existantes ne peuvent donc pas en
tirer profit.
L'architecture
WDM Still Image permet au système d'exploitation de gérer
directement les scanners et les appareils photo numériques.
Cette prise en compte par Windows 2000 permet d'offrir aux
utilisateurs une interface cohérente, étroitement intégrée
au système, pour leurs équipements de scannérisation et de
photographie. Les versions précédentes de Windows
obligeaient les fabricants à écrire des logiciels spécifiques
pour greffer leurs matériels sur le système d'exploitation.
L'architecture
EMA
L'allocation
de mémoire peut créer des goulets d'étranglement pour bon
nombre de gros serveurs d'application. C'est particulièrement
vrai pour les très gros serveurs de base de données, qui
doivent manipuler des centaines de giga-octets de données.
L'une des améliorations de Windows 2000 concerne
l'architecture EMA (Enterprise Memory Architecture), qui
permet de faire adresser jusqu'à 32 Go de mémoire par les
serveurs munis de processeurs 64-bit. La plupart des serveurs
n'auront jamais besoin d'autant de RAM, mais les entrepôts de
données peuvent en bénéficier car la manipulation des données
se fait plus rapidement en mémoire que sur les disques durs.
Tous les ordinateurs ne sont pas encore prêts pour employer
le modèle de mémoire large, mais les puces Alpha et Pentium
II Xeon sont déjà compatibles.
Les
applications doivent être écrites de manière spécifique
pour pouvoir faire appel aux API VLM (Very Large Model).
Microsoft SQL Server peut déjà les utiliser, et il ne fait
pas de doute que d'autres bases de données relationnelles
seront modifiées pour pouvoir employer les nouvelles API.
Pour la plupart des applications, il ne suffira pas d'ajouter
de la RAM au-delà de 4 Go.
L'amélioration
des capacités multiprocesseurs
Aux
serveurs pour lesquels la vitesse de processeur est un goulet
d'étranglement, Windows 2000 Server offre des fonctionnalités
multiprocesseurs fortement améliorées. Windows NT permettait
de travailler avec plusieurs processeurs, mais la toute
nouvelle génération de systèmes d'exploitation pour
serveurs utilise les processeurs multiples de façon plus
efficace. Toutes les applications multithreads tournant sur
des machines multiprocesseurs auront de meilleures
performances, sans que les programmeurs aient à écrire du
code spécifique.
Windows
2000 Server peut gérer deux processeurs, mais les
utilisateurs de Windows NT 4.0 Server migrant vers Windows
2000 Server pourront utiliser quatre processeurs simultanément.
Windows 2000 Advanced Server peut gérer quatre processeurs,
mais les utilisateurs de Windows NT 4.0 Server Édition
Entreprise migrant vers Windows 2000 Advanced Server pourront
continuer à utiliser huit processeurs simultanément. Windows
2000 Advanced Server double le nombre maximal de processeurs
par rapport à ce qui existait précédemment : il est
possible maintenant de gérer seize processeurs en même
temps, et certains fabricants proposeront même des machines
à trente-deux processeurs. Pour la première fois dans
l'histoire d'un système Windows, il est possible d'affecter
un processus à un processeur particulier. Les administrateurs
peuvent se servir du Gestionnaire de tâches pour configurer
l'affinité d'un processus. Cette propriété force un
processus à n'utiliser qu'un certain processeur, ce qui peut
améliorer les performances en diminuant le nombre de vidages
de cache processeur qui s'effectuent lorsque les processus
passent d'un processeur à un autre. Employez cette
fonctionnalité à bon escient, car elle risque de dégrader
les performances en empêchant qu'un processus ne passe au
processeur le plus disponible.
L'architecture
I2O
I2O
(Intelligent I/O Architecture) est une nouvelle technologie
qui diminue la charge de l'unité centrale et optimise les
performances des entrées-sorties. Le fonctionnement de I2O
repose sur l'ajout d'un processeur dédié. Cette technique
permet de rationaliser les activités qui consomment beaucoup
de largeur de bande, par exemple les séquences sonores et vidéo
temps réel.
L'amélioration
du tri
Les
grosses bases de données et les applications utilisant des
entrepôts de données amélioreront leurs performances en
utilisant les fonctionnalités de tri de Windows 2000 Advanced
Server. Les performances seront grandement améliorées, grâce
à l'exécution en mode noyau de ces algorithmes qui utilisent
intensivement le processeur. Les applications doivent être écrites
de manière spécifique pour pouvoir utiliser les nouvelles
API ; c'est le cas de la dernière version de Microsoft SQL
Server.
Les
innovations pour ZAW
Nous
allons ici présenter les innovations architecturales. La
technologie plug and play est désormais prise en compte, ce
qui diminue la durée de configuration et de dépannage du matériel.
L'interface ACPI (Advanced Configuration and Power Interface)
optimise la consommation électrique de toutes les machines
Windows 2000 ; elle permet de réduire les exigences électriques,
diminuant d'autant les coûts. Les quotas de disque aident les
administrateurs à optimiser la consommation d'espace disque,
ce qui permet de diminuer les achats de matériels complémentaires.
La fonctionnalité d'amorçage à distance réduit les délais
d'installation des machines clientes.
Le
Plug and Play
En
matière d'administration des réseaux informatiques, l'une
des tâches les plus délicates concerne la gestion des
configurations matérielles. Traditionnellement, la
configuration du matériel exigeait de la part des
administrateurs une connaissance profonde des interruptions,
des ports d'E/S et de l'accès direct à la mémoire (DMA). La
technologie plug and play simplifie la configuration du matériel,
mais tous les systèmes d'exploitation ne la gèrent pas intégralement.
Alors que Windows 95/98 offre une prise en compte complète du
plug and play, Windows NT 4.0 n'offre qu'une prise en compte
minime. Windows 2000 Server dispose d'un Gestionnaire de périphériques
(Device Manager) et d'un Assistant Matériel (Hardware Wizard)
plus puissants que sur les autres versions de Windows. Ces
outils détectent et résolvent les conflits matériels d'une
manière plus fiable, diminuant ainsi les délais
d'administration. Les administrateurs passant moins de temps
à batailler avec la configuration du matériel quand ils
ajouteront des cartes réseaux, des modems ou des disques
durs, les serveurs seront donc arrêtés moins longtemps.
Au
démarrage le système d'exploitation détecte automatiquement
les nouveaux équipements matériels, et il lance l'Assistant
Matériel quand un administrateur ouvre une session. La détection
et la résolution des conflits se font automatiquement le plus
souvent, et des fichiers d'aide en ligne sont accessibles
rapidement lorsque l'administrateur doit procéder à une
configuration manuelle.
La
technologie OnNow/ACPI
L'initiative
OnNow/ACPI permet de contrôler plus finement la consommation
électrique. Les utilisateurs de portables sont ceux qui en
profitent le plus ; typiquement, les administrateurs ne se
soucient pas de la consommation électrique d'un serveur. Néanmoins,
les nouvelles normes sont intégrées au modèle WDM (Windows
Driver Model). Elles sont donc reconnues par tous les membres
des familles Windows 2000 et Windows 98.
Les
quotas de disque
La
nouvelle version de Windows apporte une nouvelle mouture du
système de fichiers NTFS. L'une des fonctionnalités les plus
intéressantes est la capacité à restreindre l'espace disque
attribué aux utilisateurs sur certaines partitions. Cela
permet aux administrateurs des serveurs de fichiers de contrôler
finement la manière dont les utilisateurs stockent leurs
fichiers. Il est même possible de configurer une unité pour
que les utilisateurs ne puissent pas remplir la partition !
L'amorçage
à distance
La
nouvelle fonctionnalité d'amorçage à distance intégrée à
Windows 2000 Server facilite le contrôle du démarrage des
machines clientes. Alors que les serveurs sont en général
allumés en permanence, il est bon d'arrêter les machines
clientes lorsqu'elles ne sont plus utilisées. Gérer l'amorçage
des machines depuis un serveur facilite aussi la configuration
d'un parc de machines clientes, car il est possible de les démarrer
et de les configurer sans devoir aller devant chacune d'elles.
Pour
pouvoir gérer l'amorçage à distance, il faut naturellement
modifier les cartes réseaux et leurs pilotes. Les nouvelles
cartes réseaux doivent être en mesure de détecter les requêtes
d'amorçage, même quand la machine est éteinte. Microsoft a
contribué à la standardisation de cette fonctionnalité,
qu'il a intégrée au système d'exploitation. Pour plus de détails
sur l'amorçage à distance, reportez-vous au chapitre 3,
consacré à ZAW (Zéro administration pour Windows).
Les
fonctionnalités de grappe (clustering)
Les
entreprises qui dépendent de leurs réseaux ont besoin que
ceux-ci soient disponibles à 100 p.100 ou presque.
L'interruption du fonctionnement du réseau est l'un des
facteurs les plus importants en matière de coût global de
possession (TCO, Total Cost of Ownership). L'interruption du
fonctionnement peut tenir à plusieurs causes :
·
Problème
matériel
·
Problème
au niveau d'une application
·
Redémarrage
rendu nécessaire par des modifications de la configuration
·
Mise
à niveau ou patch
Les
nouvelles fonctionnalités de grappe de Windows 2000
Datacenter Server permettent à deux serveurs de se relayer
mutuellement. Quand l'un des serveurs tombe en panne, le
second prend le relais en moins d'une minute (processus baptisé
redondance ou fail-over). Les services de surveillance détectent
l'incident et transfèrent tout le travail vers le serveur de
secours.
Pour
les arrêts planifiés, l'un des serveurs peut remplacer
l'autre quand ce dernier n'est plus en ligne. Ce processus,
appelé rolling upgrade, minimise les interruptions de
fonctionnement lors de l'installation d'un patch. Les plus
gros bénéficiaires sont les administrateurs qui ne sont plus
obligés d'attendre les heures creuses pour faire les mises à
niveau ! Cela donne des services réseaux extrêmement fiables
et minimise le coût global (TCO).
L'un
des objectifs d'une grappe est d'améliorer l'évolutivité (scalability)
en équilibrant la charge entre plusieurs machines. Même si
le principal objectif d'une grappe Microsoft est de fournir
des capacités de redondance pour minimiser les périodes
d'arrêt, il faut savoir que bien des aspects du système
d'exploitation sont susceptibles d'amélioration via l'équilibrage
de charge. Par exemple, il est possible de miroiter sur
plusieurs machines les disques et les imprimantes partagés.
Les requêtes peuvent être automatiquement distribuées sur
deux ou plusieurs machines, sachant que les clients choisiront
automatiquement un autre serveur si l'un des serveurs de la
grappe tombe en panne.
Les
services de grappe sont directement intégrés au système
d'exploitation. Cela facilite aux développeurs de logiciels
tierce partie l'utilisation du modèle COM (Component Object
Model) pour mettre en oeuvre des solutions personnalisées en
matière de disponibilité intensive. Il est aisé
d'administrer les grappes, car des outils d'administration
compatibles avec les grappes (cluster-aware) permettent de
reconfigurer simultanément plusieurs serveurs. Contrairement
à bon nombre de solutions tierce partie, Windows 2000 Server
n'exige pas l'achat de matériels coûteux ou non standards.
Vous pouvez employer toutes les fonctionnalités de grappe de
Windows 2000 Server sans être obligé d'acheter des matériels
spéciaux. Les serveurs d'une grappe peuvent même avoir des
configurations matérielles différentes, ce qui permet de
prendre une machine moins onéreuse comme serveur de secours.
Plusieurs
composants standards ont été améliorés pour gérer la
redondance entre les machines d'une grappe :
·
WINS
(Windows Internet Naming Service)
·
DHCP
(Dynamic Host Configuration Protocol)
·
DFS
(Distributed File System)
D'autres
chapitre des cet ouvrage traitent de ces services distribués.
Les
services de Terminal
Windows
2000 Server est le premier système Windows à intégrer les
services de terminal. Ces services permettent aux clients d'exécuter
des applications interactives sur un serveur distant. La
machine cliente se contente de recevoir les saisies de
l'utilisateur puis de lui afficher les résultats. C'est
l'infrastructure réseau qui transporte les données entre la
machine cliente et le serveur. Tous les traitements se font
sur le serveur lui-même (figure 1-4). Pour Windows 2000
Server, cette technologie est souvent baptisée Hydra (ancien
nom du projet).
Cette
nouvelle fonctionnalité permet d'utiliser des clients «
minces » et contribue à diminuer le coût global d'un réseau.
Un client mince est une machine dotée d'une configuration matérielle
minimale. Plus besoin de processeurs rapides, d'énormes RAM
et de gros disques durs sur les machines des utilisateurs, car
les services de terminal font tout le travail. Le client mince
se contente d'acheminer les requêtes au serveur.
L'utilisateur n'y voit que du feu : pour lui, tout se passe
comme s'il avait un ordinateur habituel. Les exigences matérielles
du client sont minimales, et les services de terminal peuvent
s'utiliser avec n'importe quelle machine.
Figure
1-4. Les services de terminal déchargent les clients en
transférant vers le serveur l'exécution des applications.
Les
contraintes minimales imposées aux clients procurent un
avantage supplémentaire aux entreprises qui ont des parcs
installés. Les machines Windows pour Workgroups 3.11 et
Windows 95 peuvent servir de clients, avec leurs systèmes
d'exploitation existants. Les matériels un peu anciens
peuvent ainsi exécuter des applications 32-bit modernes, ce
qui permet de garder les machines plus longtemps. Bien évidemment,
Windows 2000 Server est fourni avec les clients des services
de terminal pour Windows NT 4.0, Windows 95, Windows 98 et
Windows 2000 Édition Professionnelle.
Le
serveur prenant à sa charge tous les traitements pour le
compte des clients, les services de terminal exigent
naturellement que le serveur ait une configuration matérielle
des plus musclées. Toutefois, le coût du serveur est compensé
par les économies faites au niveau des clients. Cette
architecture apporte d'autres avantages en matière de
diminution des coûts. Les applications étant stockées sur
les serveurs eux-mêmes, les administrateurs ont moins de
machines à mettre à niveau quand ils installent une nouvelle
version d'une application. En outre, ils peuvent contrôler
plus finement l'environnement de l'utilisateur, car cet
environnement est entièrement stocké sur le serveur.
Plusieurs
modifications ont été apportées au noyau de Windows 2000
pour qu'il puisse gérer les services de terminal. Les systèmes
Windows traditionnels n'autorisaient qu'une seule session
interactive, celle de l'utilisateur travaillant directement
sur le clavier de la machine. Pour que plusieurs utilisateurs
puissent avoir chacun une session sur le réseau, Windows 2000
incorpore un sous-système Win32 fortement modifié. Ce
nouveau sous-système peut gérer plusieurs sessions
utilisateurs séparées. Les entrées au clavier et à la
souris sont reliées non seulement à la bonne application,
mais aussi à la bonne session. Chaque utilisateur travaille
à l'intérieur de ses propres frontières de sécurité. La
figure 1-5 illustre ces différences.
Figure
1-5.
Le
sous-système Win32 de Windows 2000 peut gérer plusieurs
sessions.
Voici
la façon la plus logique de comprendre la nouvelle
architecture. Techniquement, un processus Win32 distinct est
lancé pour chaque session utilisateur. Cela garantit que les
applications ne communiquent pas entre les sessions, éliminant
ainsi les violations de l'intimité d'un utilisateur. Ces
modifications du noyau n'affectent pas les administrateurs
n'utilisant pas les services de terminal. Il est toutefois
important de bien comprendre ces modifications, si vous prévoyez
de faire appel aux services de terminal.
La
mondialisation
Les
systèmes d'exploitation de Microsoft furent, à l'origine,
conçus pour le public américain. Ils fournissaient
uniquement l'alphabet romain et les caractères de l'anglais,
et ils ne faisaient rien pour aider les programmeurs à écrire
des applications ciblant d'autres langues et d'autres
cultures. Le monde entier réclamant Windows, les développeurs
ont dû toutefois se résoudre à écrire des applications
pour d'autres pays. Ce développement était difficile, car
les créateurs du système d'exploitation n'avaient pas
initialement pensé en termes de mondialisation. Au fur et à
mesure de l'évolution de Windows, chaque génération a ajouté
des fonctionnalités pour aider les usagers d'autres pays et
pour aider les programmeurs écrivant des applications pour
ces mêmes usagers. Windows 2000 dispose des fonctionnalités
de mondialisation les plus importantes de toute la famille des
systèmes Windows.
Le
noyau de Windows 2000 a été spécifiquement écrit pour
qu'il puisse prendre en compte la mondialisation. Unicode
s'utilise partout en interne, ce qui facilite l'adaptation du
système d'exploitation à d'autres langues. NLS (Native
Language Support) permet de stocker dans le Registre les données
d'emplacement et de langue, et il offre en outre une interface
homogène de localisation que les applications peuvent
interroger. Ces fonctionnalités aident les programmeurs à écrire
des applications pouvant fonctionner dans toutes sortes de
contextes locaux, et elles aident les utilisateurs à
personnaliser leur environnement en fonction de leurs besoins.
Unicode
Unicode
est une norme créée par le consortium Unicode, un organisme
dont le travail consiste à créer des normes pour
l'intercommunication entre les ordinateurs du monde entier.
Cette norme, semblable en cela à la norme ANSI, définit des
correspondances entre des octets et des caractères. Elle représente
toutefois une amélioration par rapport à ANSI, car un même
jeu de caractères sert pour toutes les langues. ANSI exigeait
un jeu de caractères différents pour chaque langue ayant un
alphabet particulier.
Remarque
Pour plus de détails sur le consortium Unicode, visitez le
site web http://www.unicode.org.
Unicode
peut gérer beaucoup plus de caractères que ne le fait ANSI.
Avec ANSI, les caractères sont codés sur 8-bit, ce qui donne
en tout 256 caractères (c'est déjà presque insuffisant pour
représenter toutes les majuscules et toutes les minuscules de
nombreuses langues). Unicode code les caractères sur 16-bit,
ce qui donne en tout 65 536 possibilités. Pour l'instant, on
a codé 38 887 caractères, qui recouvrent les principales
langues écrites d'Afrique, d'Inde, d'Asie, d'Europe, du
Moyen-Orient, d'Amérique du Nord et d'Amérique du Sud.
Des
polices Unicode ?
Unicode
gère environ 40 000 caractères. Aucune police ne peut
toutefois représenter une telle variété. Il existe donc
toutes sortes de polices pour différents sous-ensembles du
jeu de caractères Unicode. Chaque langue exige que soient
installées des polices adaptées au contexte local.
Windows
2000 s'appuie sur Unicode pour tous les mécanismes internes
du système d'exploitation. Par exemple, tous les noms NTFS de
fichiers se composent de caractères Unicode. Cela permet au même
système de fichiers d'être utilisé, quelle que soit la
langue du système local. On peut écrire les applications
pour qu'elles puissent tirer profit d'Unicode, mais sachez que
toutes les applications n'en ont pas besoin.
NLS
(Native Language Support)
NLS
permet aux administrateurs de configurer un système
d'exploitation avec des données spécifiques à un pays.
Cette API fait partie de Windows NT depuis la toute première
version. Elle stocke une centaine de données de configuration
dans le Registre et offre une interface vers ces données, ce
qui permet aux applications de retrouver aisément les paramètres
de localisation à utiliser sur une certaine machine.
Les
données de localisation n'indiquent pas seulement la langue
utilisée. Chaque pays a ses propres formats pour les dates,
les heures, les jours de la semaine, les symboles monétaires,
etc. L'emploi d'API standards évite aux utilisateurs de
devoir configurer pour leur environnement chaque application
prise individuellement. On configure une seule fois le système
d'exploitation, et ensuite toutes les applications peuvent
connaître les paramètres du système.
Seuls
sont installés les fichiers requis par la langue et le pays
concernés. L'espace occupé par ces fichiers est petit,
comparé à celui qui serait utilisé si l'on installait les
paramètres de localisation pour tous les pays reconnus par
Windows 2000.
Résumé
Au
cœur de Windows 2000 Server se trouve le noyau. Le noyau
s'appuie sur la même architecture fondamentale que celle qui
existait dans Windows NT Advanced Server 3.1, mais il intègre
un certain nombre de modifications qui ont été apportées
pour répondre aux exigences des réseaux modernes. Le noyau
permet maintenant au système d'exploitation de mieux évoluer
(scalability) ; ainsi, il permet de gérer 32 processeurs et
32 Go de RAM. Les bases de données comme Microsoft SQL Server
peuvent tirer profit de ces améliorations matérielles, en exécutant
en mode noyau une partie de leurs traitements pour optimiser
leurs performances. Des fonctionnalités comme les quotas de
processeur et la comptabilité de processus font de Windows
2000 Server une plate-forme très intéressante pour les
environnements exécutant des services web. Les fonctionnalités
de grappe sont maintenant intégrées au noyau, ce qui permet
de diminuer sensiblement les périodes de non-fonctionnement
du réseau pour peu que l'on mette en oeuvre la redondance.
Enfin, Windows 2000 Server offre la meilleure prise en compte
au sein de la famille Windows en matière de mondialisation et
de localisation ; cela permet d'exploiter toutes les
particularités linguistiques et locales.
 |
|
|
 |
Pour afficher ou poster un commentaire, cliquez sur ce lien : Forum-Microsoft
|
|