Connexion
Vous n'avez pas encore de compte personnel ? Vous devriez en créer un. Une fois enregistré vous aurez certains avantages, comme pouvoir modifier l'aspect du site, ou poster des commentaires signés...
Support
Activité du Site

Pages vues depuis 06/01/2019 : 12 709 513

  • Nb. de membres 366
  • Nb. d'articles 2 837
  • Nb. de forums 24
  • Nb. de sujets 13
  • Nb. de critiques 0

Top 10  Statistiques

Index / Documentation / Manuel d'utilisation

MorphOS en détails -

(2811 mots dans ce texte ) -  lu : 3975 Fois


 
 

MorphOS en détails

   
 

Traduction française de « MorphOS In Detail », réalisée par Mehdi 'Kal-L' Boulahia.
Document également disponible (en version originale) au format PDF (29 ko).

Copyright © novembre 2002 Thendic-France.


Sommaire

1. Introduction
2. Le Passé: L'Histoire de MorphOS
3. Le Présent: La Structure de MorphOS
4. Le Présent: L'A-Box
5. Le Futur: La Q-Box
6. Informations Supplémentaires

Ce document a été écrit dans l'optique de décrire MorphOS, comment il a vu le jour, son fonctionnement, son état actuel et les futurs plans. Remerciements spéciaux à Bplan et à l'équipe de développeurs de MorphOS pour leur grande assistance.


Introduction

MorphOS est un nouveau système d'exploitation pour microprocesseurs RISC PowerPC, il fonctionne sur le Pegasos ainsi que sur les cartes PowerUP pour Amiga (CyberstormPPC et BlizzardPPC). Il a aussi été testé sur les cartes d'évaluation Mai Logic Teran CX et Teran PX. A l'avenir, MorphOS fonctionnera sur d'autres machines PowerPC basées sur l'Open Firmware et peut-être même sur certains Apple Macintosh PowerPC.

Il fonctionne présentement sur les processeurs PowerPC 603e, 604e, 750 et 7400 (G4 original).

MorphOS le bien nommé est un amalgame du vieux et du neuf. A l'origine, en 1995, il devait être une solution migratoire pour faire passer l'Amiga au PowerPC mais ils devint finalement un système d'exploitation à part entière compatible avec les applications Amiga. A l'avenir, il va encore évoluer pour devenir un vrai système d'exploitation moderne et très avancé. Néanmoins, il gardera sa compatibilité avec les applications existantes au travers de son système "d'OS Boxes".


 

A l'Origine - L'Histoire de MorphOS

Pour prendre un peu de recul et être le plus exhaustif, avant de rentrer plus dans les détails, cetten section va décrire comment le projet MorphOS a débuté et a évolué dans le temps.

La voie longue et tortueuse du PowerPC sur Amiga a commencé en 1995. Bien qu'il y a eu et qu'il y a encore d'autres projets similaires, avec MorphOS 1.0, le projet original est enfin en phase terminale.

En septembre 1995, un accord est passé entre Amiga Technologies et la compagnie allemande Phase5 avec pour but de développer un chemin de transition pour passer de la famille de processeurs 680x0 (68k), qui arrivait en fin de vie, vers la famille PowerPC, ceci fut la genèse du projet MorphOS.

Malheureusement, cet accord fut de courte durée puisque Escom, la compagnie détenant Amiga Technologies fit faillite. Néanmoins, le projet ne tomba pas aux oubliettes puisque Phase5 décida d'aller de l'avant et continuer le processus de migration. Ceci amena Phase5 à sortir en 1997 une série de cartes accélératrices nommée PowerUP qui, pour la première fois, apportaient à l'Amiga une accélération RISC. Les programmes fonctionnaient sur le 68k et certaines fonctions étaient accélérées par l'usage du PowerPC et d'une bibliothèque PPC native.

Il y eut beaucoup de projets et d'accords entre Phase5 et d'autres compagnies mais avec tous les retournement de situations inhérents à l'histoire de l'Amiga, les compagnies firent faillite et aucun de ces projets n'arriva à terme, même Phase5 fit faillite dû au fait que le marché Amiga déclinait à vue d'oeil. Plus tard, une nouvelle sociéte vit le jour: BPlan fut formée et le projet ressorti des cartons mais cette fois-çi, c'était dans l'optique de le concrétiser en tant que Système d'Exploitaion à part entière sans aucun composant du SE original. En 2000, alors qu'il arrivait au stage de développement final, MorphOS était révélé dans une version beta publique
fonctionnant sur les carte PowerUP.

La version 2002 publique de MorphOS, dévoilée sur le Pegasos PowerPC représente le chapitre final de 7 ans de longue transition du matériel propriétaire basé sur le 68k vers la plateforme PowerPC. MorphOS n'a plus besoin du matériel original, il ne contient pas non plus d'élément du système original, mais ce qui est sûr, c'est qu'il contient le même état d'esprit et les mêmes sensations: un ordinateur rapide et fun à utiliser.


 

La Structure de MorphOS

Le Système MorphOS est basé sur le micronoyau Quark. Par dessus le noyau se trouvent actuellement 2 "Boxe". La première, actuellement en stage final de développement, est l'A-Box, la seconde toujours en développement est la Q-Box, bien plus avancée technologiquement.

Au moment où ces lignes sont écrite (Novembre 2002), le gros du développement se focalise sur l'A-Box mais un travail de design considérble a été fait sur la Q-Box.

L'A-Box peut faire fonctionner les applications RTG (Re-Targetable Graphics) puisqu'il inclut une réimplémentation propre et complète de la version 3.1 de l'Amiga Operating System (AOS) ainsi qu'un émulateur 68k JIT (Just In Time).

La Q-Box, d'autre part, sera nouvelle est requerra ses propres applications, mais puique la compatibilté avec les applications Amiga grâce à l'A-Box est possible, MorphOS peut prendre son essor avec une base mature d'applications existantes pendant que le dévloppement de la Q-Box continue.

Il est aussi possible que dans le futur, d'autres "boxes" soient ajoutées permettant la compatibilité avec d'autres systèmes d'exploitation. Les différentes possibiltés sont d'ajouter la compatibilité avec les applications Unix/Linux ou celles de BeOS. Notez bien que ce ne sont que des possibilités et des nombreux point doivent être pris en considération avant d'ajouter la compatibilité avec ces sytèmes à MorphOS.


 

L'A-Box

Le but original de MorphOS était de garder en vie l'Amiga en fournissant une voie de transition vers un matériel plus moderne.

Les utilisateurs peuvent déjà lancer leurs applications d'origine sur d'autres plates-formes mais ceci fonctionne par l'émulation du 68k et des chips propriétaires. Même si cette émulation est complète et précise, une bonne partie des performances sont perdues dans l'émulation elle-même.

Bien que MorphOS ait évolué vers un autre but que celui qu'il avait à ses orgines, il continue à garder la compatibilité avec l'AOS 3.1. Néanmoins, il utilise une technique différente qui permet aux logiciels de tirer parti au maximum d'un matériel moderne. L'A-Box inclut un implémenation propre de l'API de l'AOS3.1, créée en utilisant des documentations disponibles publiquement.

Elle a été écrite et compilée sur PowerPC et est donc 100% native. Il y a aussi l'émulateur 68k pour les applications existantes, les performances de ces dernières sont accélérées de manières substantielle par le complilateur à la volée JIT (Just In Time) qui convertit les code 68k en code PowerPC et ensuite les met en cache, réduisant de façon drastique la lourdeur de l'émulation. En plus d'être native, l'A-Box est plus rapide que l'original pour ce qui est de faire fonctionner les applications, ceci grâce à différentes techniques et aussi au fait qu'elles sont utilisées justement dans ce système. Ceci permet une accélération notable dans les performances système.

Pour un maximum de performances, il est néanmoins très simple de compiler du code en natif PPC. Cela permet aux applications Amiga de tirer pleinement profit des performances du PowerPC.

Un point qu'il est tout de même important de noter: il n'y a acune émulation des chipsets propriétaires de l'Amiga. Par conséquent, MorphOS ne peut lancer par lui-même des applications les requérant. Ce n'est pas vraiment un problème en lui-même puique l'on peut imaginer que depuis les avancées de l'AOS 2.0, les applications ont eu la possibilité d'utiliser des appels de l'API indépendants du matériel. Si un utilisateur veut lancer des applications requerrant les chips propriétaires (par ex. beaucoup de jeux), ils peuvent utiliser UAE (Ubiquitous Amiga
Emulator), il émule la totalité de hardware Amiga et existe sur beaucoup de plate-fromes, dont MorphOS.

L'AOS originel fonctionnait sur des machines maintenant obsolètes qui ne possèdent qu'une fraction de la puissance disponible sur les microprocesseurs actuels. Les vitesses des Amiga était notées en MIPS (Millions d'Instructions Par Seconde), l'IBM G3 à 1Ghz est plus de 2000 fois plus rapide que l'Amiga 68000 d'origine. Malgré cela, la rapidité et les temps de réponse des Amiga originaux étaient -et sont encore- très élevés. Par conséquent, étant donné que l'A-Box fournit une implémentation PPC des plus efficaces, ses temps de réponse vont paraître extrèmement rapides à un utilisateur de PC, surtout lorsque l'on sait que c'est sur une machine initiale dont la vitesse n'est que de 600 Mhz.

Support des Système de Fichiers

MorphOS supporte un grand nombre de Systèmes de Fichiers et d'autres peuvent être supportés par l'ajout de plug-ins:

OFS

 

(Original File System)

FFS

 

(Fast File System)

FFS 2

 

(Fast File System 2)

PFS 3

 

(Professional File System 3)

SFS

 

(Smart File System)

Relaxez-vous - Ambient Desktop, l'environnement MorphOS de remplacement du Workbench se nomme Ambient et faisant partie intégrante de l'A-Box agit comme
l'environnement qu'il émule. Il a la possibilité de tirer avantage des changements et avancées du système graphique, donc contrairement aux Workbenchs Amiga, il supporte les affichages 24 bits et blendings. L'affichage du contenu d'une fenêtre pendant qu'elle est déplacée est une autre caractéristique du système graphique utilisé par Ambient. MUI (Magic User Interface) fait aussi partie d'Ambient, lui conférant un haut degré de personnalisation.

Les Autres Améliorations Graphiques

Contrairement à l'original, le système graphique est maintenant complètement indépendant du matériel, il a aussi été considérablement amélioré avec de nouvelles fonctionnalités telles que la transparence et l'overlay. L'accélération graphique 3D est implémentée grâce à l'API Rave3D et un wrapper pour l'API Warp3D est en développement, la compatibilité OpenGL est aussi prévue.

Le système audio a aussi été amélioré avec l'ajout de AHI qui est une API de redirection pour l'audio de façon à ce que les applications puissent tirer avantage des systèmes avec des périphériques audio meilleurs que l'original (de nos jours, tous le sont).

A sa sortie, l'AOS était un système d'exploitation très en avance, il incluait le multitâche préemptif dès 1985 -une caractéristique que les autres SE (Windows ou MacOS) n'ont eu que bien plus tard. Néanmoins, comparé aux système d'exploitaion modernes, l'Amiga possède pas mal de limitations telles que le manque de protection mémoire ou l'absence de mémoire virtuelle.

Comme il inclut une réimplémentation fidèle des spécifications de l'API de l'AOS 3.1, le design de l'A-Box était en grande partie figé et ne pouvait être complètement modifiée. Par conséquent, l'A-Box possède beaucoup de limitations présentes dans l'original. Certaines ont été contournées grâce à des extensions mais pour certains cas, les limitaions sont soit trop difficiles soit impossibles à retirer sans supprimier complètement la compatibilité avec les applications. Cependant, ce sont des limitations de l'A-Box et pas de MorphOS en général, la Q-Box n'aura pas ces problèmes.


 

Q - Le Futur de MorphOS

La Q-Box

Jusqu'à maintenant, le développement s'est concentré sur l'A-Box. Dans le futur, il devrait se focaliser sur Q.

Q devrait consister en une version améliorée du noyau Quark, un ensemble de serveurs fournissant la fonctionnalité nécessaire et la Q-Box dans laquelle les applications tourneront. Le noyau Quark est vraiement petit, il fournit une couche d'abstraction matériel, des pilotes, la gestion de la mémoire, transmission des messages. La plupart du vrai travail sera fait dans les serveurs (Réseau, Système de Fichiers, GUI, Media, Sécurité, graphismes 2D/3D, etc...)

Les applications devraient tourner dans la Q-Box et faire des appels d'API via un système de transmission de message. L'API ne sera pas fermée par un seul langage de programmation et les dévloppeurs n'auront pas à apprendre un nouveau langage. La transmission de message est extrèmement rapide, au lieu de transférer les données dans le message, la position mémoire du message est remappée vers l'application en attente du message. Les petits messages sont copiés
directement étant donné que cette méthode est plus rapide pour les petits paquets de données.

Modularité et Autres Petites Choses.

Le système de transmission de message utilisé dans MorphOS signifie que le système peut être grandement modulable. Les composants envoyant et recevant les messages puvent tourner sur différentes processeurs ou même sur différents ordinateurs et le message arrivera toujours à destination. Un système de fenêtrage par dessus un réseau (à la X-Window) pourrait être implémenté de cette manière mais les temps de récation en souffriraient. Un wrapper compatible X-Window est prévu de telle sorte que les applications X-Window puissent être portées mais
les résultats en terme de vitesse sur l'environnement seront très différentes de celles utilisant les implémentations actuelles de X-Window.

La capacité de distributions de Q en terme de transmission de message signifie que le clustering sera possible sans avoir à réécrire le SE tout entier. Les applications requerrant un grand nombre de processeurs seront relativement faciles à écrire sous Q. Une des choses requise par les applications à grande échelle est une grande quantité de mémoire, les stations de travail et autres grands serveurs sont en 64 bits depuis plusieurs années déjà mais ils sont encore loin d'avoir le niveau d'utilisation qu'un utilisateur de base attend d'un Système d'Exploitation. Q a été conçu dès le départ avec une optique 64 bits. Les applications auront dès le début accès à une
gamme d'adresses bien plus vaste que ce qui existe dans les Systèmes d'Exploitation actuels.

Microkernel Vs Macro Kernel

Un problème courament rencontré dans le dévelopmment d'un Système d'Exploitation basé sur un micronoyau est la vitesse. Cela est dû au fait qu'il y a énormément de context switches (changements de contexte) faits par le CPU entre le noyau et les processus. Le context switching ralentit énormément la machine. La conséquence de ce problème est que beaucoup de système d'exploitation se sont détachés du micronoyau pour s'approcher plus d'un macronoyau en ajoutant des fonctionnalités au noyau, par exemple Microsoft a déplacé les graphiques dans le noyau de WindowsNT, Be a fait de même avec les capacité réseau de son SE, Linux a commencé comme un macronoyau et tout est inclu dedans. Cette technique apporte un gain de vitesse mais au prix de la stabilité et de la sécurité puisque différentes tâches du noyau peuvent écrire à l'emplacement mémoire déjà occupé par l'une d'entre elles.

Etant donné ce qui est écrit au-dessus, l'on peut se demander pourquoi Q peut être basé sur un micronoyau (pour être plus précis, il s'apparente à un micronoyau) et quand même espérer de bonnes performances. La réponse à cette question vient du fait que MorphOS tourne sur PowerPC et non sur des processeurs x86. C'est un problème de l'architecture x86 qui fait que les context switches sont très gourmands en temps processeur. Les changements de contexte sur PowerPC sont de l'ordre de 10 fois plus rapides, se rapprochant de la vitesse d'appel d'une sous-routine. Cela veut dire qu'un Système d'Exploitaion PowerPC peut utiliser une architecture
micronoyau avec tous les avantages possibles sans la perte de vitesse de changement de contexte. Il n'y a aucun projet pour ce qui est de développer une version x86 de MorphOS, si cela devait arriver, il y aurait sans aucun doute des changements internes à faire pour s'accomoder de cette arhitecture processeur différente.

Transition

Au moment où ces lignes sont écrites, le noyau Quark existe mais est incomplet. Le reste de Q est toujours en phase de prévision, le plus gros a été établi mais les menus détails ne le sont pas encore completement. Les pilotes par exemples sont inclus dans l'A-Box d'où ils peuvent accéder directement au matériel. A l'avenir, les pilotes seront incorporés au noyau Quark où ils seront indépendants de l'A-Box et bien sûr des autres "boxes", ce qui a l'avantage des les rendre utilisables par toutes les autres boxes. Cette direction a été pré-établie, les pilotes ont donc été
écrits avec ceci à l'esprit et le changement devrait être realtivement trivial à opérer.

Vapour Where? (Vapor Où? -Jeu de mots Vaporware).

La grande partie des informations données ici à propos de la Q-Box sont au futur et ceci pourrait donner l'occasion de nous taxer de faire du vapourware (le fait d'annoncer un logiciel longtemps à l'avance et ne rien sortir). Nous décrivons seulement nos buts et comment nous comptons y parvenir. Néanmoins, comme il est normal dans le monde informatique, les choses changent donc tout ceci peut être modifié. Le développement de systèmes complexes prend toujours beaucoup de temps, nous cherchons des solutions pour arriver sur le marché le plus
rapidement possible mais le produit final mettra du temps à être concrétisé.

Le futur améliorera le travail déjà réalisé et apportera aux utilisateurs de MorphOS un Système d'Exploitation résolument moderne, désigné et construit par des développeurs ayant une longue expérience derrière eux, qui connaissent les bénéfices et les avantages du passé mais qui ont aussi le savoir et l'expérience de ce qu'il ne faut pas faire et des chemins à ne pas prendre.

*Mise à jour de Nicholas Blachford:

Quelques changements sont à apporter à la doc: premièrement, l'expression "Compatibilité Amiga" est impropre, ce n'est pas ce que nous voulons affirmer.
Nous sommes compatibles avec les applications Amiga.

Deuxième chose, il y a confusion à propos des pilotes qui seront inclus dans le noyau, il ne seront pas dans le noyau lui-même comme mentionné.

Liste des Caractéristiques:
Nous travaillons dessus, je ne sais pas quand elle sera prête cependant.

Le Futur Plus en Détail

Ecrire un OS comme Q est très prenant et peut très bien prendre plusieurs années pour être achevé. Il n'y a pas à l'heure actuelle de prévision certaine pour le futur, de plus cela évoluerait sûrement au fil du temps. Nous espérons avoir quelque chose bientôt, mais de quelle façon, c'est ce que nous nous demandons.

A la question de savoir si dans 5 ans l'équipe de BPlan sera toujours là, Nicholas répond:

Le gens qui ont fondé cette compagnie développent sur Amiga depuis très longtemps et voient ce projet comme un investissement à long terme. Ils dépensent beaucoup d'argent pour lui et ce serait une attidue absurde d'abandonner après une courte période.


 

Informations Supplémentaires

Pour des nouvelles de MorphOS et des liens: http://www.morphos-news.de
Pour plus de détails sur le Pegasos: http://www.pegasosppc.com

v1.1 Copyright © Thendic-France SARL November 2002

Tous les termes et noms utilisés ici sont des marques déposées et restent propriétés de leurs détenteurs.


www.pegasos-suisse.com

© 2003-2007 RELEC hardware & software, payerne / design tcherno.com
les marques présentées sont la propriété de leur sociétés respectives.
sous réserve de modifications, photos non contractuelles.


Autres publications de la sous-rubrique1