Présentation
Auteur(s)
-
Michel TREILLET : Application Development, object Technology, IBM Eurocoordination
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleINTRODUCTION
Un peu d’historique
En présence d’un système d’exploitation, la tendance est de s’exclamer « encore un », en fait la plupart des systèmes correspondent à une évolution des besoins tant des entreprises utilisatrices d’informatique que des utilisateurs, OS/2 Warp n’échappe pas à cette règle.
Une première question de pure curiosité, pourquoi ce nom Warp : c’était le nom de code de ce qui devait être la future version 3 de l’OS/2, OS/2 étant le nom générique de ce système d’exploitation. L’origine de Warp est à rechercher dans le film « La guerre des étoiles » ou le « Warp factor » était un facteur d’accélération. Avec l’OS/2 version 3.0, pour la première fois, IBM a abandonné la terminologie traditionnelle, le nom de code Warp, jusqu’alors confidentiel a été retenu. On peut d’ailleurs remarquer que cette confidentialité des noms de code tombe en désuétude, « Merlin » nom de code de la nouvelle version est imprimé sur le CD-ROM de la présente version bêta test. Dans le cours de cet article j’utilise indifféremment Warp et OS/2.
Pourquoi OS/2 ? Avant tout, il s’agissait de pallier les insuffisances du DOS, et de faire bénéficier ce nouveau système de fonctions usuelles dans les systèmes d’exploitation des grandes machines, ainsi que des avancées ergonomiques initiées par divers centres de recherches tel que le Palo-Alto Research Center et popularisées par le Mac-Intosh ou encore des travaux du Centre de recherche d’IBM sur le projet GLASS.
Les faiblesses du DOS : l’insuffisance première était avant tout la limitation en matière d’adressage. Muni d’un langage de commande rudimentaire, il permettait l’exécution d’un seul programme d’un maximum de 640 ko. De nombreuses astuces ont été utilisées pour contourner la limitation d’adressage :
-
utilisation de la zone réservée entre 640 ko et 1 024 ko grâce à des utilitaires qui optimisaient l’utilisation de cette zone réservée, en principe destinée à accueillir du code de support de futurs périphériques, cette utilisation se faisait donc aux dépens de l’utilisation future des matériels. Les conséquences ont été gênantes, certains utilisateurs se trouvant bloqués avec des applications ne tournant qu’en DOS 3.3 et avec des matériels obsolètes fabriqués spécialement. Sans parler des autres systèmes d’exploitation compatibles avec lui, le DOS proprement dit en est à la version 7 ;
-
utilisation de techniques de pagination non automatique telles que EMS (« Enhanced Memory Specification »), aussi appelées LIM pour ses concepteurs (Lotus, Intel et Microsoft) ou encore EEMS (« Extended Enhanced Memory Specification ») : ces techniques sont en effet non automatiques car contrairement à une véritable mémoire virtuelle, les applications devaient être programmées de façon spécifique ;
-
utilisation d’une ligne d’adressage oubliée permettant de gagner encore 64 ko moyennant un driver spécifique.
Les manques : il s’agit avant tout de ce que l’on appelle le multitâche, et qui recouvre en fait deux notions assez différentes qui, dans le cas des grands systèmes, avaient deux noms différents.
-
Multiprogrammation : c’est la possibilité de lancer plusieurs programmes simultanément, l’exécution paraît simultanée lorsque ces programmes utilisent des ressources différentes. Le cas d’école le plus facile à comprendre est le suivant : un programme utilisant de façon importante des entrées-sorties lentes comme l e clavier l aisse les ressources du processeur disponibles, un autre programme pourra donc les utiliser. Lorsque l’on lance ces deux programmes, ils s’exécutent de façon simultanée. Il y a donc possibilité de simultanéité vraie lorsqu’il s’agit de l’utilisation de ressources différentes. Le système se charge de la gestion des ressources et de leur affectation à tel ou tel programme.
Il faut noter que c’est automatique et ne nécessite aucune programmation particulière.
-
Multitâche : c’est la même notion mais appliquée cette fois à un programme, ce programme est composé de tâches élémentaires, il va être possible d’orga-niser leur simultanéité. Cela n’est pas automatique et nécessite une program-mation particulière.
Cette technique a été standardisée par les systèmes transactionnels tels que CICS, il est intéressant de noter que, bien que très courante, dans le monde des grands systèmes, elle a été très peu employée par le monde de la micro-informatique, force est de constater que bien peu des programmes écrits pour OS/2 par les sociétés de logiciels utilisent réellement cette possibilité alors qu’elle est d’une utilisation très courante pour ce même OS/2 dans le cas d’applications écrites par l’utilisateur.
L’avènement de la programmation objet qui, naturellement, entraîne un découpage des applications devrait changer cet état de fait, d’ailleurs l’utilisation de Java facilite largement la programmation d’applications multitâches.
-
Multitraitement : cette possibilité maintenant courante sur les grands sys-tèmes est apparue avec la version 2.1 de l’OS/2. Il s’agit cette fois d’activer simultanément plusieurs processeurs. Le fait de disposer de plusieurs processeurs va permettre d’exécuter simultanément des tâches de même nature. Comme tout bon système supportant le multitraitement cela se fait de façon totalement transparente, les tâches ou les programmes étant répartis par le système sans intervention de l’utilisateur et sans qu’il soit nécessaire d’utiliser une programmation spécifique.
-
Ergonomie : si la micro-informatique à ses débuts souffrait d’une absence totale d’ergonomie. Il a fallu dans le monde du PC attendre le PC-DOS 4.0 d’IBM pour obtenir une approche un peu plus conviviale. Cela explique la prolifération de systèmes de gestion de l’interface utilisateur ajoutée au DOS. Le plus connu est bien sûr Microsoft Windows, qui résout en plus en partie le problème de l’adressage avec sa version 3.0, mais il y en a eu d’autres : Quaterdeck, Topview, etc.
Les concepteurs de l’OS /2 (équipe mixte Microsoft/IBM) ont choisi dans un premier temps une voie moyenne.
Avec la prise en main d’OS/2 par IBM et la séparation d’avec Microsoft, OS/2 a fait l’objet d’une refonte totale : tous les éléments de l’interface sont des objets, ont leur propre comportement, toutes les actions peuvent se faire par manipulation d’icônes. Avec Merlin, pour satisfaire au besoin d’Opendoc qui est une technologie destinée à des systèmes d’exploi-tation variés, il y a présence permanente de barre de menu.
Nota :cette description est basée sur la nouvelle version de Warp disponible en français. Au début de la rédaction de cet article, l’auteur ne disposait que d’une version américaine, ce qui peut expliquer certaines dénominations non conformes dans le courant de l’article.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
1. Architecture OS/2
OS/2 est un système d’exploitation 32 bits, permettant du multi-tâche préemptif avec gestion de la priorité entre tâches :
-
32 bits : l’adressage direct a une résolution de 4 Go ;
-
multitâche : ce système est architecturé pour faire travailler plusieurs tâches concurrente ;
-
préemptif : OS/2 a le contrôle de l’activation des tâches, ce qui le distingue d’un système coopératif avec lequel chaque tâche doit se charger elle-même de libérer la mémoire ;
-
gestion de la priorité : le système affecte des niveaux de priorité à ces tâches concurrentes pour s’assurer qu’aucune d’elle ne monopolise l’unité centrale.
1.1 Concepts généraux
OS/2 est composé de plusieurs entités que l’on peut se représenter comme des couches superposées, de bas en haut en partant de la couche matérielle :
-
les pilotes de périphériques (drivers) organisent la communication entre le noyau du système (kernel) et le matériel ;
-
le noyau du système (kernel) ;
-
les librairies dynamiques (DLL : Dynamic Loadable Librairies). Ce sont des composants du système, modulaires, qui ont pour caractéristique principale d’être remplaçables, modifiables, extensibles en fonctionnalité. Elles sont appelées à la demande et peuvent être partagées entre plusieurs utilisateurs, elles n’occupent donc qu’un seul emplacement en mémoire. Les concepteurs de programmes peuvent créer des DLL à usage spécifique de leur application ;
-
API : ce sont les interfaces de programmation, elles sont fournies par l’ensemble noyau-DDL. Avec ces interfaces, le programmeur communique avec le système, par commodité, elles ont été regroupées en catégories, par exemple :
-
GPI : interfaces de programmation graphique ;
-
Open32 : interface permettant d’obtenir en OS/2 une programmation très proche de celle de Windows NT comportant la majorité de l’interface Win32.
-
Les DLL sont des fonctions appelées lors de l’exécution soit de façon explicite en utilisant DosLoadModule, soit de façon dynamique. Elles sont à la base du fonctionnement de l’OS/2. L’existence des DLL signifie que le système peut être modifié ou étendu de...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Architecture OS/2
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive