Caractéristiques

From MorphOS Library

Revision as of 08:38, 22 February 2016 by Thebucheron (talk | contribs)

Retour sur la page principale


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.

The native compatibility of MorphOS with Amiga legacy software, instead, has a different target. Users can run almost all the most recent and advanced Amiga applications, which are able to manage additional GFX and audio boards created for the latest Amiga computers. The relevant software layers that were initially developed by third parties for the AmigaOS, known as CGX (CyberGraphX) and AHI (Audio Hardware Interface), mask and manage the retargetable hardware and are fully integrated into MorphOS.

MorphOS makes two very compact, efficient, and fully integrated interfaces available (Command Line Interface and Graphic User Interface) for shells and applications. For the latter MorphOS has adopted an object-oriented software GUI layer called Magic User Interface (MUI), which originated as a third-party AmigaOS product as well. MUI not only provides the programmer with more sophisticated GUI interactions and layouts, but also allows users to more fully customise these GUIs to their individual tastes. Actually MUI is one of the most distinctive components of MorphOS, both in terms of features and aesthetics.

MorphOS shell is a Unix-like shell provided with all the features you expect from such a component: AmigaDOS commands, local and global variables, command substitution, command redirection, named and unnamed pipes, history, programmable menus, multiple shells in a window, ANSI compatibility, colour selection, and so on. Of course the set of commands includes all the necessary commands for scripting. In conclusion: Command Line Interface users will not be disappointed...

Ambient is the MUI based, fully asynchronous, multi-threaded, default native desktop of MorphOS. Although open sourced, in practice Ambient is an exclusive component of MorphOS, because it is so strictly related to MUI and the OS that its porting to any other environment would be quite difficult. Ambient provides program icon management, directory navigation, program launching, file handling, and everything that is needed for managing the system. Ambient is highly adaptable to user's taste: file management can be done in classic (spatial) mode or browser mode, using icon view or list view. Filetype recognition is done by means of direct file probing and/or mimetypes, and users have full control and editing capabilities on mimetypes for a fine-tuning of the related actions. Ambient allows the user to easily perform any type of activity with the inbuilt tools: file search utility, text viewer, picture viewer, sound player, system monitor, disk formatting utility, management of commodity utilities, and much more. From Ambient menus, users can control all the settings in their MorphOS environment, including MUI settings and the desktop itself.

It may be mentioned in passing that users are not necessarily forced to use Ambient. Other common desktop environments of the Amiga world can be run at the same time, or even as complete substitutes for Ambient, e.g. Directory Opus Magellan (also available for PC users as a substitute for Windows Explorer), Scalos, and even the classic Amiga Workbench (but this is reserved for crazy users which like some hacking).

The previous components of the OS are those that the user always sees and manipulates: their visual impact and easy handling have a high influence on user appreciation. Ambient users, for instance, can select distinct skins, changing on the fly the general aspect of all the windows, gadgets, and other graphic elements of the desktop (some distinct skins are shown in the pictures). On the other hand, other system software runs invisibly and silently, but is equally important, because without it the computer will be unusable. A few examples are filesystems, USB management, printing software, advanced scripting systems, etc. Of course all these components are present in MorphOS, but only short descriptions are given here, mostly concerning special features that add to those that users automatically expect from this hidden software.

Filesystems for hard disks are very important components that must take care of precious data. MorphOS is provided with an implementation of FFS, the standard Fast File System of the Amiga, that is present mostly for compatibility reasons. SFS (Smart File System) is a much faster and more reliable filesystem, that keeps track of the last transactions before they are applied. In other terms it is a journaling-like filesystem that guarantees the integrity of the data even in the case of computer crashes during write operations. SFS has been adopted by MorphOS as its default filesystem, but MorphOS also supports other filesystems including PFS (Professional File System) available commercially for Amiga computers, the ubiquitous FAT (File Allocation Table) of MS-DOS environments, NTFS from Windows (read-only), EXT2FS and EXT3FS from Linux, SGIXFS from Silicon Graphics (read-only), Mac HFS+ (read-only) and, since the release of MorphOS 2.4 for Apple's Mac mini G4, Mac HFS. Salvage utilities are available both for SFS (SFSDoctor, included with MorphOS) and PFS (commercially available) and handle operations like retrieving deleted data, file system structure repair, and even reorganisation to decrease fragmentation. Old salvage tools for FFS can still be used as well, but they support partitions upto 4 GB in size only.

The USB stack of MorphOS is called Poseidon, and is probably the most efficient USB stack existing on every computer platform. The best description of its features is certainly given by its author, whose words are reported in the following lines: "Poseidon is a software solution that unleashes the possibilities of the Universal Serial Bus (USB) and the devices with USB interface, ranging from mice, keyboards, tablets, joysticks, printers, scanners, webcams, digicams, flash card readers, zip drives, floppy disk drives, harddisks, memory sticks, ethernet adapters, scanners and audio adapters to less common things like power supplies, GPS location devices or finger print readers. Poseidon has a modular design that fits into the AmigaOS/MorphOS environment very neatly. It is no port of an existing system (like the Linux USB stack), but has been created with the unique features of AmigaOS/MorphOS in mind, that make these operating systems so efficient." It should be added that Poseidon always tries to do its job in a completely automatic way, but in case the user needs customisation for a specific USB device, Poseidon reveals incredible configuration capabilities that allow the user to solve almost any problem.

The printing system adopted by MorphOS is TurboPrint, a licensed commercial software package also distributed in the Linux world. It allows full control of the printer and its colours (if any), and of course runs transparently for any application. TurboPrint requires an update if the user needs printer drivers for recent printers, but the upgrading package is also convenient for the presence of some useful printing utilities that are absent in MorphOS.

The advanced scripting system that characterised AmigaOS since version 2.0 is ARexx, an implementation of REXX, an interpreted, structured, high-level programming language introduced by IBM. On the Amiga almost every important application has an ARexx port that allows its (possibly full) external control by means of ARexx scripts, or even by means of ARexx commands coming from other programs. In such a way advanced users can generate and manage interactive operations among any number of independent programs, as well as totally automatic activities of each single program, by means of simple ARexx procedures (whose use and structure were fully explored during years of use in the Amiga environment). MorphOS has a native implementation of this language (except for a library that for now still has to be extracted from AmigaOS, rexxsyslib.library).