Les nouveautés technologiques de Windows Vista

| Louis-Guillaume MORAND | Aymeric MORILLEAU |

Article présentant en détail les nouveautés technologiques de Windows Vista ♪

- Titre : Les nouveautés technologiques de Windows Vista

- Auteurs : Louis-Guillaume MORAND, Aymeric MORILLEAU

- Parution : 10 février 2006

- Licence : Copyright ® 2005 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- Introduction

- I. WinFS

- I-A. Les métadonnées

- I-B. Architecture WinFS

- I-C. Couche du modèle des données et du noyau de WinFS

- II. WinFX

- II-A. Framework 2.0

- II-B. Avalon

- II-C. Indigo

- III. Monad

- IV. Metro

- V. Internet Explorer 7

- VI. WDF (Windows Driver Foundation)

- Conclusion

Introduction

I - WinFS

Avec le Win FS (Windows File Systems), Microsoft compte fournit encore plus de facilités pour archiver, retrouver et disposer de ses données. Le support NTFS (datant de Windows 2000) reste en place, mais fait peau neuve avec cette surcouche venant le compléter et l'actualiser.

I-A - Les métadonnées

Les métadonnées sont la base du principe de fonctionnement de ce nouveau système de fichiers. Mais tout d'abord, définissons une métadonnée.
Une métadonnée : c'est « une donnée sur une donnée ». Plus précisément, c'est un ensemble d'informations qui décrit une ressource informationnelle, soit externe, soit interne au fichier. C'est l'information bibliographique d'un document électronique.

Voici les principaux usages des métadonnées :
1. Permettre une description des ressources en leur associant des informations ;
2. Faciliter le repérage de l'information. Permettre une facilité de recherche dans la masse ;informationnelle. Permettre une évaluation rapide de la pertinence du contenu d'un document ;
3. Faciliter l'organisation et la gestion de collections de données - des collections virtuelles peuvent être créées à partir de ressources éparpillées sur les disques ;
4. Faciliter la gestion des différentes versions de document : copie de préservation, copie de diffusion (les métadonnées peuvent conserver ces liens et indiquer la différence entre les versions) ;
5. Certifier une certaine autorité intellectuelle du contenu (métadonnées sur l'auteur, la date de création, l'organisme responsable, la date de mise à jour…) ;
6. Contribuer à la préservation de l'intégrité des documents électroniques :
- l'information contenue : balises auteur, date de création, mots-clés,
- la fixité : accompagnement de toutes les modifications par numérotation ou identification rigoureuse des versions, identification de la version originale,
- la provenance : restituer le document au sein d'une collection ou d'une série de documents (dossier/sous-dossier, chapitre/n° page),
- le contexte : logiciel utilisé, format, information sur les modes de diffusion, contexte hypertextuel…

Les systèmes de fichiers gérant les métadonnées ne sont pas rares : OS/400 - OS/2 - BFS - BeOS - Ext2… Ce ne sera donc pas une révolution dans le principe de fonctionnement général que nous apportera ce WinFS, mais une exploitation des technologies en vogue appliquées à l'environnement Windows, des technologies ayant fait leurs preuves à plusieurs reprises, un atout de plus dans la musette du système d'exploitation de la firme de Redmond.

I-B - Architecture WinFS

Couche NTFS
WinFS n'est pas un système de fichiers qui remplacera NTFS (le système de fichiers actuel de Windows XP, Windows NT, Windows 2003), mais qui viendra se placer au-dessus de celui-ci. Il s'agit en effet d'une surcouche s'appuyant sur ce dernier ce qui permettra d'assurer une compatibilité avec les systèmes actuels tout en pouvant exploiter les avancées de WinFS. C'est d'ailleurs pour cela que le système de fichiers WinFS pourra être déployé sur les Windows XP et 2003 lors de sa sortie.

Couche du moteur relationnel
Microsoft s'est inspiré des SGBD pour créer WinFS. L'implémentation d'un moteur relationnel est donc logique, il permet de mettre en place un système efficace d'organisation et de requêtes. WinFS se reposera sur Yukon (SQL server 2005).

I-C - Couche du modèle des données et du noyau de WinFS

Modèle des données
Le modèle de données se décompose en trois parties : les éléments (Items), les relations, et les extensions.

Noyau de WinFS
- Le noyau de WinFS se décompose en deux modules.
- Le premier module est une somme de services se chargeant de la gestion du système de fichiers proprement dit. Ces services manipulent les fichiers tels des éléments (principe de WinFS) tout en s'interfaçant vers des flux NTFS afin d'assurer une compatibilité avec les couches inférieures qui les supportent. À noter également, la présence d'utilitaires d'import/export.
- Le second module a un but plus interactif, il est appelé module des opérations. Gestion des sauvegardes, copie de fichiers « cachés » visant la récupération de versions antérieures), gestion des éléments de sécurité (authentification d'auteur, d'intégrité…), quotas…

Couche des API
Pour donner aux développeurs un accès aux performances offertes par le WinFS sous Windows, des API seront disponibles :
- module XML : autorise la portabilité vers d'autres systèmes, ce module vise à sérialiser les éléments WinFS en XML ;
- module T-SQL : avec une logique proche de celle des SGBD, WinFS permettra des requêtes et recherches complexes grâce à cet ADO.Net ;
- module des classes : ces classes représentent le module nécessaire et essentiel pour utiliser WinFS… Ces classes fortement typées s'adressent aux applications développées en C#, VB.Net…

Liens complémentaires :
http://fr.wikipedia.org/wiki/Base_de_données_relationnelle
http://fr.wikipedia.org/wiki/WinFS
http://www.esi.umontreal.ca/~albertsi/INU1030/Cours/cours10.html

Voici la liste des informations (métadonnées) qui seront attachées à chaque fichier :

Valeur

Traduction

Description

Date Modified

Date de modification

Précise la date de modification du fichier

Keywords

Mots clés

Permet d'adjoindre des mots clés à un fichier. Mots clés utilisables pour une recherche par exemple

Author

Auteur

Précise le(s) auteur(s) du document

Rating

Évaluation

Permet de mettre une note au fichier. Par exemple, pour des fichiers musicaux, n'écouter que ceux ayant une note de 5 étoiles

Size

Taille

Désigne la taille du fichier

Comments

Commentaires

Permet de préciser un commentaire sur le fichier

In Folder

Emplacement

Précise le chemin auquel se trouve le fichier

Project

Projet

Title

Titre

Précise le titre du fichier

Application Name

Nom de l'application

DateCreated

Date de création

Précise la date de création du fichier

Word Count

Nombre de mots

Renseigne le nombre de mots contenus dans le fichier (dans le cas de fichiers texte bien sûr)

Pages

Nombres de pages

Renseigne le nombre de pages dans le fichier (dans le cas de fichiers texte bien sûr)

Slides

Nombres de diapositives

Renseigne le nombre de diapositives dans le fichier (dans le cas de fichiers de présentation (PowerPoint, etc.))

Last saved by

Dernier enregistrement par

Renseigne la date de dernière modification

Byte Count

Nombre d'octets

Character Count

Nombre de caractères

Renseigne le nombre de caractères dans le fichier (dans le cas de fichiers texte bien sûr)

Last Print

Dernière impression

Renseigne la date de dernière impression

Template

Hidden count

Line count

Nombre de lignes

Renseigne le nombre de lignes dans le fichier (dans le cas de fichiers texte bien sûr)

Notes

Notes

Paragraph Count

Nombre de paragraphes

Renseigne le nombre de paragraphes dans le fichier (dans le cas de fichiers texte bien sûr)

Presentation format

Revision Number

Numéro de révision

Permet d'assigner un numéro de version à un fichier

Edit Time

File Description

Description du fichier

Category

Catégorie

Protected

Protection

Language

Langue

Subject

Sujet

Friendly Type Name

II - WinFX

Un nouveau « module » technologique devrait faire son apparition dans les mois à venir. Si celui-ci n'est pas spécifiquement prévu pour Windows Vista, c'est sur ce dernier qu'il fonctionnera au mieux et offrira tout son potentiel.
Ce « module » se nomme WinFX (prononcez « Win Effects ») et contiendra différentes technologies :
- le Framework .Net dans sa version 2.0 ;
- Windows Presentation Foundation (nom de code : Avalon) ;
- Windows Communication Foundation (nom de code Indigo).

Vous trouverez ici les dernières news/développements concernant WinFX :
http://msdn.microsoft.com/winfx/

Nous allons maintenant voir en détail les différentes parties de ce package.

II-A - Framework 2.0

Un framework est un ensemble de bibliothèques permettant le développement rapide d'application. Il y a maintenant quelques années, le Framework .Net 1.0 a vu le jour, proposant une révolution dans le style de développement. Peu de temps après sortait une mise à jour : la version 1.1.
Il aura fallu attendre 2005 pour qu'une grosse évolution du framework .Net sorte. Cette version, permettant de profiter plus facilement des nouvelles technologies (support 64 bits, IPv6), propose également des évolutions pour gérer très facilement le réseau (tcp/ip, ftp) ce qu'aucun autre langage ne faisait alors. Parmi ses autres nouveautés, on peut aussi noter l'implémentation du SMTP (envoi de mail), mais surtout une multitude de nouveautés aussi bien dans les caractéristiques des différents langages du framework, que dans les différents composants graphiques, winform et web, de celui-ci.

Liens complémentaires :
Les nouveautés du Framework .NET 2.0
Les nouveautés d'ASP.NET 2.0
VB.Net 2005 : le namespace My
Ajoutez des thèmes à vos pages ASP.Net 2.0
Framework .Net 2.0 : les nouveautés pour le réseau
Tutoriel ClickOnce: Le déploiement facile d'applications .NET

II-B - Avalon

Avalon est un nouveau moteur d'affichage basé sur du XML plus exactement du XAML. Ceci permettra aux développeurs de définir l'affichage de leur application dans un fichier XML qui sera ainsi plus facilement modifiable.
Ce nouveau moteur possède un certain nombre de spécificités.

Ainsi Avalon :

- sera basé sur Direct3D, et permettra de nouvelles fonctionnalités d'affichage dans les applications ;

- prendra avantage de l'accélération matérielle ;

- sera basé sur du vecteur permettant, un affichage 3D, un affichage plus précis, un affichage de plus en plus joli grâce aux futures grandes résolutions ;

- permettra des effets d'affichage avancés comme les effets de flou, une gestion plus réaliste de la transparence

Toutes ces nouvelles possibilités graphiques seront en partie capables grâce au langage XML. XAML (eXtensible Application Markup Language) est une évolution du langage XML, qui a pour vocation la déclaration de l'interface graphique. Typiquement, chaque page d'interface est décrite dans un fichier XAML. Une page XAML décrit la classe qui sera générée lors du runtime.
Jean-Alain Baeyens a d'ailleurs écrit un très bon article sur ce nouveau langage : Àla découverte de XAML avec C#

Liens complémentaires :
Installer et développer pour Avalon
Mon premier écran avec Avalon
Les contrôles usuels dans Avalon

II-C - Indigo

Windows Communication Foundation (nom de code : Indigo) est un nouveau système de communication, utilisant une API basée .Net, qui permettra d'unifier les différents types de communication existants (com+, webservices, etc.).
WCF a pour but d'utiliser la méthodologie RAD (Rapid Application Developpement) pour le développement de webservices, avec une seule API de communication aussi bien pour les communications locales, qu'en LAN ou encore sur Internet, le tout de façon plus simplifiée tout en augmentant la sécurité (implémentée dans la sandbox (protection interne du FX))

III - Monad

On peut sans exagérer utiliser l'adjectif « obsolète » pour définir le gestionnaire de ligne de commande des différents systèmes d'exploitation Windows, et qu'ils soient tous basés sur MS-DOS justifie sans mal cet état de fait. Microsoft a donc décidé de mettre un terme à cette situation en lançant son programme MSH (Microsoft Shell) dont MONAD est le premier résultat.

MSH aura pour objectif de fournir des possibilités d'administration accrues et plus poussées grâce à la plateforme .Net. Il devra également permettre l'exécution sécurisée de scripts localement et à distance. De plus, il veut respecter certains points :
Mieux que le Shell UNIX
principalement basé sur le Framework qui est plus adapté aux technologies d'aujourd'hui. (Le Shell Unix lance simplement des commandes qui permettent de les gérer.)

Compatibilité et interopérabilité
Possibilité d'exécuter les scripts déjà existants (vbs, batch, exe, etc.).

Scripting sécurisé distant
Possibilité d'utiliser des scripts et des cmdlets (petites commandes) signés.

Batching
Exécution de tâches administratives automatisées sur plusieurs ordinateurs distants.

Management et configuration
Récupération et mise en place de paramètres systèmes (réseau, impression, bureau, etc.)

Navigation unifiée et facile
Navigation facile parmi les fichiers, les fichiers système, le registre, le réseau, active directory, Windows Management Instrumentation, etc.

MONAD disposera donc d'un contrôle accru sur les ressources du système. Et afin de lutter contre les éventuelles (et probables) attaques dont sera la cible ce nouveau-né de Redmond, signature électronique (certifiant l'auteur) et limitation du lancement par double-clic ont été annoncées. On pourra également signaler la création d'alias et le développement de commandes propres dans la liste des éléments présentant MONAD.

Attention : certains ont pu lire cet été que des virus avaient déjà été trouvés sur Monad. Sachez que plusieurs techniciens de chez Microsoft ont spécifié que Monad en est à ses tout premières bêtas et que de toute façon, il n'était pour le moment pas prévu de l'intégrer de base dans Windows Vista ou antérieur, tant qu'une version stable et sécurisée ne serait pas finie. Monad n'est donc pas un « trou à virus » comme certaines mauvaises langues aiment à le dire.

La phrase qui pourrait définir le principe de MSH serait : « Tout est objet et vous avez un contrôle infini sur ces derniers » (dite par Jeffrey Snover : architecte Monad).
PowerPoint de présentation : télécharger le PowerPoint
Vidéo de démonstration : télécharger la vidéo
Minifaq Monad : visualiser la FAQ

IV - Metro

Il est bien connu que Microsoft a décidé depuis un bout de temps de faire du XML (Extensible Markup Language) son langage de prédilection pour la sauvegarde de données (fichiers de configuration, fichier de données, etc.). Microsoft fait encore un pas en avant avec le nouveau format XPS : nom de code Metro. La cible annoncée de « METRO » est les documents du quotidien ainsi que ceux du web.
Ce nouveau format de fichier basé sur du XML dispose d'une nouvelle architecture d'impression. En effet, ce format aux spécifications rendues publiques (http://www.microsoft.com/whdc/xps/metro.mspx) aura pour but de proposer un format répondant aux exigences des utilisateurs, à savoir : rester simple et avoir le même affichage, quelle que soit l'application qui le visualise. Fini les prévisualisations qui changent d'un logiciel à l'autre, fini l'impression qui ne correspond pas à ce que l'on souhaite.
C'est actuellement ce que fait le format PDF, mais Microsoft ne tient pas à le remplacer, juste proposer un substitut alliant les avantages du PDF aux nouveautés techniques et technologiques. Metro comprendra un nouveau PDL (Page Description Language) qui va justement lui permettre d'être un substitut aux qualités reconnues du format PDF. Pour vous donner une idée, le format XPS devrait, comme le permet le format PDF, contenir les ressources et données graphiques ainsi que les images, le tout dans un fichier autodescriptif et permet donc d'être visualisé par un logiciel autre que celui qui l'a créé (contrairement à un fichier .doc (Microsoft Word) par exemple).

Description du pack « METRO »
- Un format défini et fixé pour la description de document basé sur le XML pour une utilisation par toutes applications sous tous OS (Operating Systems).
- Une visionneuse, permettant la lecture des documents.
- Un « Print-to-File » (Driver d'imprimante virtuelle) afin de créer par conversion des documents « METRO » depuis les applications basées sur Microsoft Windows.
- Gestion des impressions en natif et nouvelle gestion du Pipeline.

Spécifications du format « METRO »
- Compatibilité accrue avec les différentes plateformes et leurs applications : « METRO » utilise le langage XML pour décrire un document qu'il souhaite restituer. Les différents éléments constituant le document (Fonts, images…) sont inclus à l'entité « METRO » dans un fichier respectant les spécifications du format .ZIP. Les documents « METRO » peuvent donc être lus sur n'importe quelle plateforme et le package ouvert par n'importe quelle application gérant le format .ZIP.
- Comme les PDL, « METRO » fournit une description figée du document qui peut être facilement générée par différentes applications. Les documents peuvent être lus ou imprimés sans devoir disposer du logiciel qui les a créés. À aucun moment « METRO » ne fait appel à des composants Windows, il est donc portable.
- « METRO » propose d'ajouter des marqueurs hardware ou logiciel afin d'ajouter des services ou de personnaliser le pipeline d'impression.
- Avec un support natif des effets de transparence ou de dégradé et la gestion d'un nombre important de couleurs, « METRO » cible également les professionnels de l'image et de la communication (designer graphique, imprimeur…).

Liens complémentaires : Spécification du format XPS http://www.microsoft.com/whdc/xps/metro.mspx

V - Internet Explorer 7

Internet est sans conteste une des premières applications (en nombre d'heures consacrées) de l'informatique chez les particuliers. Microsoft a donc apporté un soin particulier aux éléments consacrés à cette pratique dans Windows Vista. Le principal élément de cette chaîne est Internet Explorer, le Browser phare de la firme de Redmond fait peau neuve avec sa version 7 qui ajoute certaines fonctionnalités qui, à défaut d'être innovantes, lui apportent de nouvelles possibilités fortement intéressantes.

La principale adjonction à IE 7 est la navigation par onglet (principe permettant d'ouvrir les nouvelles fenêtres dans un onglet supplémentaire limitant ainsi l'encombrement de la barre des tâches et simplifiant la navigation entre pages pour l'utilisateur). Beaucoup de navigateurs présentaient déjà cette fonctionnalité (FireFox, Maxthon…)

On remarque également une interface simple dans un style sobre, tout à fait dans l'esprit du thème Aero. Dans les nouveautés qui m'ont plu, je noterais la barre de chargement en surbrillance de la barre d'adresse :

Concernant les options disponibles dans le panneau de configuration et dédiées à l'Internet, la liste est largement plus étoffée que pour XP .

La partie réseau est bien sûr toujours présente avec un outil de diagnostic, des assistants de connexion.

Des options Internet gérant le blocage des pop-ups, l'effacement des cookies et fichiers temporaires d'Internet, ainsi que l'historique.

Le firewall Windows a bien entendu été maintenu.
Et la part belle aux communications par réseau sans-fil et son assistant.

Et l'apparition d'une section PeerToPeer :

Notons son apparition dans les tâches actives (jouxtant l'horloge).

Sinon la connexion à Internet a été assez facile (après avoir trouvé les drivers de ma carte réseau), mais j'ai un modem Ethernet donc un coup de DNS (automatique) et c'est réglé.

On apprécie également l'intégration de la gestion des flux RSS. Cette technologie consiste en l'affichage en temps réel d'informations stockées dans un fichier XML, libérant ainsi des accès serveurs.

L'apparition d'une protection antiphishing augmente également la sécurité de navigation de ce browser. Le phishing est la fausse copie de site Internet ( VPC / bancaire / … ) à des fins parfois lucratives, mais toujours malveillantes.

Avec peu de problèmes pour sa version beta IE 7, promet de surfer facilement sur la toile, avec un maximum de sécurité (protection activeX, scripts, phishing, etc.). Il est seulement à noter, dans les points négatifs, le non-respect des consignes de la W3C (consortium fondé en 1994). On peut cependant s'attendre à une amélioration du navigateur dans ce sens d'ici la version finale.

VI - WDF (Windows Driver Foundation)

Quel que soit le système d'exploitation, les drivers sont les jointures qui permettent à un système d'utiliser les périphériques, matériels et autres qui l'entourent.
Aujourd'hui, les drivers pour Windows sont basés sur le modèle WDM (Windows Driver Model). Ce modèle est une norme déposée pour permettre aux constructeurs de périphériques de développer des drivers. En plus de ce modèle, il existe différentes normes complémentaires (NSIS, ASIO) en fonction du périphérique (réseau, multimédia, etc.). Cette norme permet d'unifier les différents drivers et permet l'utilisation de technologies comme le Plug-And-Play et la gestion d'énergie des périphériques.
Néanmoins, ce modèle apporte quelques contraintes et « problèmes ». En effet, pour une gestion correcte des périphériques, ces drivers sont exécutés en mode « noyau » et partagent la mémoire de l'OS. Ils ont plus de « droits », mais en cas de problème, leur crash peut être fatal au système. C'est pour cela que l'on parle d'instabilité système avec les drivers WDM (bien sûr ceci, dans le pire des cas. Des drivers bien choisis permettent un système plus stable).

Avec la venue de Windows Vista (nom de code Longhorn), un nouveau modèle de driver fait son apparition : le modèle WDF (Windows Driver Foundation). Ce modèle doit à lui seul remplacer les anciennes normes et leurs différents problèmes (stabilité, sécurité) tout en reprenant toutes leurs capacités.
Ainsi, ce nouveau modèle qui sera implémenté sur Windows Vista permettra :
- l'unification de la gestion des périphériques. Une seule norme pour gérer le PnP (Plug-And-Play) et la gestion d'énergie de tous les types de périphériques (réseau, multimédia, composant interne) ;
- possibilité pour les drivers d'être exécutés en mode « kernel » (comme avec le modèle WDM), mais également en mode « utilisateur » permettant une grande stabilité du système
- réduction du nombre des miniports : Actuellement, pour chaque fonction d'un driver (multifonction), le constructeur doit développer un miniport ainsi qu'un pilote de bus pour gérer ces miniports ;
- possibilité d'installer plusieurs versions d'un même pilote.

Ainsi, nous pouvons déjà affirmer que les drivers WDF permettront de garder le système plus stable, que leur développement sera simplifié et que leur architecture couplée à de nouveaux outils permettra de plus facilement les diagnostiquer.

Pour en savoir plus : http://www.microsoft.com/whdc/driver/wdf/wdf-intro.mspx

Conclusion

C'est donc en grand nombre que Windows Vista proposera de nouvelles technologies. Celles-ci, aussi bien destinées aux développeurs qu'aux administrateurs ou encore aux simples utilisateurs, ont été pensées afin d'accroitre la sécurité, la visibilité et la facilité d'utilisation.