Caractéristiques
From MorphOS Library
Le noyau de MorphOS est compressé et stocké à l'intérieur du fichier boot.img qui doit résider sur un support de stockage accessible par l'Open Firmware (OF). Ce fichier est chargé par HAL/OF et démarre le micronoyau Quark, ainsi qu'un certain nombre d'autres composants bas niveau nécessaire à l'OS. Le reste de l'OS est composé de fichiers, se trouvant sur le disque dur, qui sont lancés à partir de cette couche logicielle.
L'Amiga était caractérisé par les possibilités bas niveau que fournissait son micronoyau, Exec, comme le traitement multitâche préemptif, la communication inter-processus, etc... qui étaient absents sur tous les autres micro-ordinateurs populaires des années 80 (début des Mac, PC, Atari, etc...). Naturellement dans MorphOS, toutes ces caractéristiques et bien plus encore sont également fournis dans MorphOS par sa propre réimplentation de l' exec.library. En théorie, Quark est également en mesure de fournir un certain nombre de "boxes" (systèmes d'exploitation virtuels) qui peuvent être lancés indépendamment. Actuellement, deux "boxes" sont implémentés : la QBox, qui pour le moment est uniquement employée pour des processus bas niveau, et l'ABox, qui fournit une API spéciale pour les programmes et les applications. En effet, cette API est entièrement compatible avec AmigaOS 3.1 (le dernier système d'exploitation créé et distribué par Commodore pour ses ordinateurs Amiga Classiques). Elle fournit également Trance (un puissant compilateur temps réel pour les exécutables Amiga), ce qui garantit un degré élevé de compatibilité pour un grand nombre d'applications Amiga. Les opérations complexes exécutées par Trance sont instantanées et transparentes pour l'utilisateur : Trance détecte automatiquement n'importe quel exécutable Amiga, le convertit en exécutable PowerPC, et le lance dans
la foulée.
Avec la libération de MorphOS 2.0, une nouvelle gestion de la mémoire (décrit dans l'article de fond: In-depth: The New MorphOS Memory System) a été introduite. En fait, le système d'exploitation fournit maintenant une interface mémoire dynamique permettant à l'utilisateur de choisir entre le nouveau système d'allocation TLSF (Two-Level Segregate Fit) ou l'ancien Fit (utilisée par AmigaOS et les anciennes versions de MorphOS). Par rapport au système de mémoire précédent, TLSF maintient de bonnes performances indépendamment de la fragmentation mémoire, qui en outre est également maintenant réduite.
Notez cependant que la quasi-totalité du nombre énorme d'excellents jeux qui ont rendu célèbre l'Amiga vers la fin des années 80 et au début des années 90, ne fonctionnent pas directement dans l'environnement MorphOS. Les micro-ordinateurs Amiga étaient équipés de circuits intégrés graphiques et sonores propriétaires. Leurs fonctionnement sont totalement incompatibles avec un système moderne comme MorphOS, qui est en mesure de gérer les cartes graphiques 2D/3D actuelles (AGP et PCI) et les cartes sons PCI ou le système audio présent sur la carte mère. Si vous voulez jouer à de vieux jeux, c'est bien sûr possible, mais pour cela, il vous faudra utiliser UAE (Universal Amiga Emulator : l'émulateur universel Amiga), qui est également disponible pour MorphOS et qui fournit la compatibilité nécessaire. Thanks to Ambient 's configurability with regard to file recognition and the handling of executables, UAE integration into MorphOS is easily achieved, though, allowing to directly launch Amiga disk images from the desktop.
La compatibilité native de MorphOS avec les anciens logiciels Amiga à une cible différente. Les utilisateurs peuvent lancer presque toutes les applications Amiga les plus récentes et les plus avancées (celles qui sont en mesure de gérer les cartes graphiques et audios additionnelles créées pour les derniers ordinateurs Amiga Classiques). Les couches logiciels appropriées, connues connu sous le nom de CGX (CyberGraphX) et AHI (Audio Hardware Interface : interface matérielle audio) sont parfaitement intégrées dans MorphOS, ce qui permet une gestion transparente de ces cartes additionnelles.
Comme AmigaOS, MorphOS possède deux interfaces compactes, efficaces et entièrement intégrées (une Interface de Commande en Ligne "CLI" et une Interface Graphique Utilisateur "GUI") pour le shell et les applications. Pour ces dernières, MorphOS a adopté MUI (Magic User Interface), une GUI plus orientée vers la programmation objet. MUI fournit non seulement au programmeur des interactions plus sophistiquées sur la représentation d'une GUI, mais permet également aux utilisateurs de personnaliser entièrement leur interface graphique selon leurs besoins et leurs goûts personnels. En fait, MUI est l'un des composants de MorphOS les plus distinctifs, en termes de fonctionnalités et d'esthétique.
Le shell de MorphOS est un shell comparable à celui d'Unix, doté de toutes les caractéristiques que l'on peut attendre d'un tel composant : commandes AmigaDOS (la plupart semblable à Unix), variables locales et globales, substitution de commande, redirection de commande, pipes nommés et anonymes, historique, menus programmables, shells multiples dans une fenêtre, compatibilité avec la norme ANSI, sélection des couleurs, etc.... Naturellement l'ensemble des commandes incluses permet la réalisation de scripts. En conclusion : les adeptes de la ligne de commande ne seront pas déçus.
"Ambient" est basé sur "MUI", totalement asynchrone et multi-thread, c'est le bureau natif de MorphOS. Bien qu'Open Source, dans la pratique "Ambient" est un composant disponible exclusivement pour MorphOS, parce qu'il est tellement lié à "MUI" et au reste de l'OS que sa conversion sur un autre environnement serait très difficile. "Ambient" fournit un programme de gestion des icônes, un explorateur de répertoires, un utilitaire pour lancer les programmes, pour manipuler les fichiers, et tout ce qui est nécessaire pour contrôler le système. "Ambient" s'adapte aux goûts de l'utilisateur : la gestion des fichiers peut être réalisée selon un mode classique (spatial) ou en mode navigateur, en utilisant une vue par icônes ou par liste. La reconnaissance des types de fichiers est réalisée au moyen d'analyse directe des fichiers et /ou des mimetypes, mais les utilisateurs ont un contrôle total et des possibilités d'édition sur les mimetypes pour obtenir une configuration personnalisée des actions liées à ces derniers. "Ambient" permet à l'utilisateur d'exécuter facilement tout type d'activité avec les outils intégrés : utilitaire de recherche de fichiers, visualiseur de texte, visualiseur d'images, lecteur audio, moniteur système, utilitaire de formatage de disque, utilitaire de gestion des commodités, et bien plus encore... A partir des menus d'"Ambient", les utilisateurs peuvent contrôler tous les paramètres de leur environnement MorphOS, incluant les paramètres de "MUI" et du bureau lui-même.
Laissez-moi mentionner en passant que les utilisateurs ne sont pas obligés d'utiliser "Ambient". D'autres environnements de bureau communs à l'univers Amiga peuvent être lancés en même temps ou peuvent se substituer complètement à "Ambient", comme par exemple : "Directory Opus" (également disponible pour les utilisateurs PC comme un substitut à Windows Explorer), "Scalos" et même le "Workbench" des Amiga Classiques (mais ceci est réservé aux utilisateurs passionnés de "bidouilles").
Les composants de l'OS que nous venons d'aborder sont ceux que l'utilisateur voit et utilise tout le temps : leur impact visuel et leur manipulation simple ont une grande influence sur l'opinion que s'en font les utilisateurs. Les utilisateurs d'"Ambient", par exemple, peuvent choisir des thèmes graphiques différents, changeant à la volée l'aspect général de toutes les fenêtres, gadgets, et autres éléments graphiques du bureau (différents thèmes graphiques sont visibles sur les images accompagnant ce texte). De plus, d'autres logiciels systèmes se lancent de façon invisible et silencieuse, ce qui ne les empêchent pas d'être également importants puisque sans eux l'ordinateur serait inutilisable. Parmi les exemples que l'on peut citer, il y a les systèmes de fichiers (filesystems), la gestion de l'USB, les logiciels d'impression, les systèmes de scripts avancés, etc... Bien sûr tous ces composants sont présents dans MorphOS, mais seules de courtes descriptions sont données ici, la plupart du temps concernant des caractéristiques spéciales s'ajoutant à celles que les utilisateurs emploient automatiquement dans ces logiciels.
Les systèmes de fichiers pour les disques durs sont des composants très importants qui doivent prendre le plus grand soin de données précieuses. MorphOS est fourni avec une implémentation de "FFS", le système de fichiers standard et rapide de l'Amiga, présent le plus souvent pour des raisons de compatibilités. "SFS" (Smart File System) est un système de fichiers beaucoup plus rapide et plus fiable, il conserve la trace des dernières actions de copie/déplacement/effacement avant que celles-ci soient appliquées. En d'autres termes, c'est un système de fichiers journalisé garantissant l'intégrité des données même en cas de plantage de l'ordinateur durant des opérations d'écriture sur le disque dur. "SFS" est le système de fichiers par défaut de MorphOS, mais MorphOS supporte également d'autres systèmes de fichiers comme "PFS" (Professional File System) disponible commercialement pour les ordinateurs Amiga, et même l'omniprésent "FAT" (File Allocation Table) issu des environnements MS-DOS, "NTFS" issu de Windows (lecture seulement), "EXT2FS" et "EXT3FS" issu de Linux, "SGIXFS" issu de Silicon Graphics (lecture seulement), "Mac HFS+" (lecture seulement) et, depuis la sortie de MorphOS 2.4 pour le Mac mini G4 d'Apple, "Mac HFS". Des utilitaires de récupération sont disponibles pour "PFS" et "SFS" (SFSDoctor, inclus avec MorphOS) et "PFS" (disponible dans le commerce) . Ils effectuent des opérations comme la récupération de données effacées, la réparation de la structure des systèmes de fichiers, et même la réorganisation des données pour diminuer la fragmentation (ou défragmentation). Les vieux outils de récupération pour "FFS" peuvent encore être utilisés, mais ils ne prendront pas en charge les partitions de plus de 4 Go.
La pile USB de MorphOS, nommée "Poseidon", est probablement la pile USB la plus efficace que l'on puisse trouver sur une plateforme informatique. La meilleure description de ces caractéristiques est certainement donnée par son auteur, dont les paroles sont rapportés dans les lignes suivantes : "Poseidon est une solution logicielle qui démontre les possibilités de l'Universal Serial Bus (USB) et des appareils dotés d'une interface USB, allant des souris, claviers, tablettes graphiques, joysticks, imprimantes, scanners, webcams, digicams, lecteurs de cartes flash, lecteurs zip, lecteurs de disquettes, disques durs, cartes mémoires, adaptateurs Ethernet, adaptateurs scanners et audio aux choses moins communes comme les boîtiers d'alimentations, les GPS ou les lecteurs d'empreintes digitales. Poseidon a une conception modulaire s'adaptant parfaitement à l'environnement AmigaOS/MorphOS. Ce n'est pas la conversion d'un système existant (comme la pile USB Linux), Poseidon a été créé en gardant à l'esprit les caractéristiques uniques des AmigaOS/MorphOS et c'est ce qui rend ces systèmes d'exploitations si efficaces". Laissez moi ajouter que "Poseidon" essaie toujours de faire son travail d'une manière complètement automatique. Mais, si l'utilisateur a besoin de le personnaliser pour un dispositif USB spécifique, "Poseidon" révèle alors ses incroyables possibilités de configuration permettant à l'utilisateur de résoudre presque n'importe quel problème.
Le système d'impression adoptée par MorphOS est "TurboPrint", un logiciel commercial également distribué dans le monde Linux. Il permet le contrôle total de l'imprimante et de ses couleurs (s'il y en a), et fonctionne de manière transparente pour toutes les applications. La version de "TurboPrint" intégrée dans MorphOS requiert une mise à jour si l'utilisateur a besoin de pilotes pour des imprimantes récentes. Mais le package logiciel de mise à jour est aussi intéressant grâce à la présence de quelques utilitaires d'impression absents dans MorphOS.
Le système de scripts avancés qui caractérise AmigaOS depuis la version 2.0 est "ARexx", une implémentation de "REXX", un langage de programmation interprété, structuré, de haut niveau introduit par IBM. Sur Amiga la plupart des applications importantes ont un port "ARexx" qui permet le contrôle externe au moyen de scripts "ARexx", ou même au moyen de commandes "ARexx" provenant d'autres programmes. Dans certains cas, les utilisateurs avancés peuvent générer et contrôler des opérations interactives parmi un nombre de programmes indépendants, mais aussi des activités totalement automatisées par un seul programme, au moyen de procédures "ARexx" simples (dont l'utilisation et la structure ont été entièrement exploré durant des années d'utilisation dans l'environnement Amiga). MorphOS possède une implémentation native de ce langage (excepté une bibliothèque, "rexxsyslib.library", qui pour l'instant doit encore être récupérée par l'utilisateur à partir d'AmigaOS).