AmigaOS
est le
systeme d'exploitation
natif des ordinateurs
Amiga
, lance en 1984 et encore developpe aujourd'hui. Il a ete initialement developpe pour les processeurs
680x0
, puis progressivement reecrit pour les processeurs
PowerPC
. Dans un premier temps le systeme fonctionnait sur des machines bi-processeur (un
680x0
et un
PowerPC
). Depuis 2006 il fonctionne sur des machines equipees uniquement de processeur
PowerPC
telles que les
AmigaOne
/
microAone
et les Sam440/Sam460
[
1
]
toutefois, en 2018, la version 3.1 fonctionnant sur les processeurs Motorola est de nouveau mise a jour de facon commerciale par Hyperion Entertainment
(en)
qui en detient la licence
[
2
]
.
Depuis la version 4.0, il est equipe d'un emulateur qui permet de faire fonctionner les anciens programmes ecrits pour les processeurs
680x0
(machines desormais appelees "Amiga classic") sur des machines
PowerPC
.
AmigaOS a en partie inspire le
systeme d'exploitation
experimental
AtheOS
(maintenant
Syllable
) ainsi que
BeOS
parfois surnomme AmigaOS 95. Le systeme
Windows
emprunte aussi certaines idees d'AmigaOS.
[ref. necessaire]
Le developpement d'AmigaOS a commence en 1982. La startup
Amiga Inc
prepare le prototype
Lorraine
, presente au
Consumer Electronic Show
de 1983. Cette startup est rachetee par
Commodore
l'annee suivante et le fruit de ce prototype est commercialise des 1984 - l'
Amiga 1000
.
Des ses debuts, une des qualites les plus mise en avant des Amiga, outre leur materiel hors du commun, etait leur aisance a executer plusieurs applications simultanement. Or cette capacite est apportee par son systeme d'exploitation
[
3
]
.
Dans les annees 80 les systemes d'exploitation pour micro ordinateur etaient un triangle de un: un seul utilisateur execute un seul programme sur un seul ordinateur. AmigaOS, des le debut, apporte une
interface graphique
, et le
multitache preemptif
qui permet d'executer simultanement autant de programmes que la memoire et le processeur permettent
[
3
]
.
Dans les
annees 1980
, les ordinateurs personnels n'avaient souvent comme unique peripherique de stockage un
lecteur de disquette
ou de cassette. Le
Commodore 64
, par exemple, n'avait de base aucun peripherique de stockage
[
3
]
. Si le systeme d'exploitation avait ete place sur une disquette, il aurait pris une place non negligeable et le demarrage de l'ordinateur aurait pris du temps. C'est pour ces raisons que les composants principaux d'AmigaOS sont enregistres dans une puce de
memoire morte
dans l'ordinateur
[
3
]
.
Alors que
Jay Miner
est cite a l'unanimite comme etant le pere du hardware de l'Amiga, il n'existe pas de pere unanimement reconnu du software. Les noms souvent cites sont Bob Pariseau - le team lead, et
Carl Sassenrath
- le developpeur
[
3
]
.
Le systeme d'exploitation de l'Amiga a ete tout d'abord developpe sur un ordinateur
SAGE IV
. Cet ordinateur est equipe d'un processeur Motorola 68000, et d'un systeme d'exploitation Unix - qui a egalement servi de source d'inspiration pour Amiga OS. Le logiciel compile sur le SAGE IV est ensuite copie sur le Lorraine via un cable
[
3
]
.
En 2004,
20 ans
apres sa sortie, des utilisateurs continuent de se servir des Amiga en raison de son elegant systeme d'exploitation
[
3
]
. La version 4.0, lancee en 2004 par Hyperion Entertainment ne supporte plus le chipset initial de l'Amiga, et est prevu pour fonctionner sur des processeurs
PowerPC
[
3
]
.
AROS
et
MorphOS
sont deux systemes d'exploitation clone d'AmigaOS, fonctionnant sur du materiel recent
[
3
]
.
AmigaOS est un des premiers systemes d'exploitation en construction
microkernel
[
3
]
.
Il contient une pile de
bibliotheques logicielles
avec lesquelles les programmes peuvent demander des services au systeme d'exploitation. Sa construction lui donne les caracteristiques d'un
systeme d'exploitation temps reel
et permet aux logiciels applicatifs de mettre en œuvre des fonctionnalites qui incombent au systeme d'exploitation tels que la connexion aux reseaux ou la
memoire virtuelle
.
Entre 1984 et 2011 l'AmigaOS a subi trois re-ecritures majeures, mais sa composition generale n'a pas change
[
3
]
:
- Exec
est le kernel d'AmigaOS, qui apporte les services elementaires de manipulation des processus et de la memoire ;
- graphics.library
offre des fonctions qui permettent d'afficher des images et des animations ;
- au-dessus se trouve
intuition.library
, qui permet de construire des interfaces graphiques et se sert de
graphics.library
;
- AmigaDOS est le composant d'AmigaOS qui s'occupe des disques et des entrees/sorties
[
3
]
;
- Fast File System
(en)
est le
systeme de fichiers
natif. AmigaOS peut aussi lire et ecrire des
memoires de masse
au format
FAT
,
Ext2
ou
HFS
ainsi que des
CD-ROM
;
- au-dessus de ces bibliotheques se trouve
Workbench
, le logiciel qui permet a l'utilisateur de lancer des programmes ou modifier la configuration
[
3
]
. Workbench fait une
metaphore
d'un
etabli
(
workbench
signifie
etabli
) ;
- en plus de Workbench, les utilisateurs peuvent egalement se servir de l'interface en ligne de commande d'AmigaOS: le
CLI
[
3
]
.
Au lieu d'AmigaDOS, le systeme d'exploitation devait contenir un composant nomme
CAOS
, mais a la suite de disputes durant son developpement, le projet a ete abandonne
[
3
]
. Commodore, sous la pression des delais, s'est tourne vers
TripOS
, un systeme d'exploitation developpe par MetaComCo, pour le processeur Motorola 68000 : beaucoup de pieces de TripOS ont ete reutilisees et adaptees pour obtenir AmigaDOS
[
3
]
.
Dans les medias, Workbench ? l'
environnement de bureau
d'AmigaOS ? a souvent ete compare a celui d'Apple, il est cependant inspire principalement par Sun, et se distingue par le fait qu'il s'utilise avec une souris a deux boutons
[
3
]
.
Pour des raisons de commodite, les composants principaux d'AmigaOS sont enregistres dans une puce de memoire morte dans l'ordinateur
[
3
]
? le
Kickstart
, de 256 ou
512 Ko
. Cette puce contient Exec, graphics.library, intuition.library, le cœur de AmigaDOS et du Workbench
[
3
]
.
Le systeme d'exploitation est amorce a l'aide d'une disquette ou d'un
disque dur
. La disquette amorce standard
Workbench disk
lance automatiquement l'environnement graphique : le Workbench. Cette disquette contient des bibliotheques accessoires, telles que
translation.library
, ainsi que des utilitaires
[
3
]
, parmi eux l'interpreteur de commande
CLI
et le
langage de script
ARexx
, une adaptation du langage
REXX
de
IBM
.
Une disquette de demarrage peut ne pas se servir du tout d'AmigaOS et utiliser directement le materiel ? de nombreux jeux video le font. Il peut egalement lancer un autre systeme d'exploitation, comme Linux
[
3
]
.
Jusqu'a la version 3.5, AmigaOS ne contient aucun programme pour la connexion aux
reseaux informatiques
et celle-ci se fait a l'aide de logiciels tiers du commerce.
Sur ordinateurs Amiga Classic, chaque version de Kickstart est liee a une version particuliere du systeme d'exploitation de l'Amiga, ainsi les utilisateurs devraient uniquement utiliser le Workbench 1.3 sur une machine avec une ROM du Kickstart 1.3. Il est possible d'utiliser des versions differentes (Le Workbench 3.1 fonctionnera avec le Kickstart 3.0, mais avec quelques problemes). La seule exception est le Workbench 2.1, qui etait une mise a jour logicielle basee sur le Kickstart 2.04. Aussi, les dernieres versions du Workbench, 3.5 et 3.9, utilisent le Kickstart 3.1, la mise a jour de la ROM se faisant logiciellement au moment ou le systeme demarre.
Sur ordinateurs Amiga dits ≪ nouvelle generation ≫ (AmigaOne, Sam440, Sam460,
etc.
), le kickstart et le workbench ont la meme version.
Exec
est le
kernel
d'AmigaOS, qui apporte les services elementaires de manipulation des processus et de la memoire. D'autres services du systeme d'exploitation sont apportes par des processus et des bibliotheques
[
3
]
.
Dans AmigaOS chaque programme en cours d'execution est une
tache
. Les taches sont executees a tour de role en fonction de priorites ? les taches prioritaires en premier
[
3
]
. Une tache peut etre un logiciel applicatif ou un programme systeme : dans AmigaOS pour chaque disque dur il y a une tache qui s'occupe des lectures et ecritures. Les differentes taches s'echangent des messages, et, en condition ordinaire, la grande majorite des taches sont en attente de message ou d'evenement
[
3
]
. Les priorites sont comprises entre -127 et 127. La priorite usuelle des applications est de zero ; les programmes systeme ont une priorite de 5, 10 ou 15, et une application gourmande en calcul, comme un moteur de rendu 3D, aura une priorite negative
[
3
]
.
Dans la memoire des Amiga, une seule adresse contient toujours la meme information. La memoire est reservee par
Exec
en fonction des besoins du systeme d'exploitation et des applications
[
3
]
. Lorsqu'un programme demarre, Exec reserve la memoire pour le contenir, puis libere cette memoire lorsque le programme a termine. Le programme peut egalement reserver de la memoire pour ses besoins, en le demandant a Exec
[
3
]
. Il est responsable de liberer la memoire avant de s'arreter
[
3
]
.
Kickstart est le nom donne a la ROM qui contient les composants essentiels d'AmigaOS. Sur l'
Amiga 1000
, celle-ci devait etre chargee a partir d'une disquette, alors que plus tard, les Kickstarts furent en ROM dans l'ordinateur.
Le Kickstart contient les parties principales du systeme d'exploitation, telles qu'Intuition (les bibliotheques graphiques de l'interface utilisateur Amiga), Exec (le noyau multitaches), AmigaDOS (les bibliotheques de manipulation de disque).
Les versions ulterieures du Kickstart contenaient les pilotes des controleurs
IDE
et
SCSI
, des ports
PCMCIA
et divers autres materiels qui etaient inclus dans les Amigas.
Grace a des constructeurs de peripheriques, il est possible d'avoir deux versions ou plus de Kickstart dans une machine, selectionnables par un interrupteur ou un raccourci clavier quand vous mettez la machine en marche.
Avec un logiciel tiers, il est possible d'avoir un kickstart different charge dans la RAM, et de l'utiliser au lieu de la ROM, par exemple Kickstart 1.3 peut etre charge afin d'executer de vieux jeux incompatibles avec les Kickstart 2.0 et plus. Ces programmes s'appellent des Softkickers.
Le Workbench est l'
environnement de bureau
d'origine pour l'Amiga.
Le nom utilise la metaphore de l'etabli (
workbench
en anglais). Les repertoires sont depeints comme des tiroirs, les fichiers executables sont depeints comme des outils et les fichiers de donnees sont depeints comme des projets. La plupart des applications Amiga ont des menus deroulants commencant par ≪ Projet editer... ≫ au lieu du ≪ Fichier editer... ≫ typique des autres plateformes.
Une caracteristique unique du Workbench est les ecrans multiples. Ils sont quelque peu semblables aux bureaux virtuels du systeme de fenetre
X Window
, mais sont produits dynamiquement par les applications selon les besoins. Chaque ecran peut avoir une resolution et une profondeur de couleurs differentes. Une icone dans le coin en haut a droite de l'ecran permet de cycler les ecrans - Comme l'OS stocke tous les ecrans simultanement dans la memoire, le rafraichissement est instantane. Ces ecrans peuvent egalement etre deplaces de haut en bas par leurs barres de titre. (la fonctionnalite de deplacer les ecrans est propre au chipset de l'Amiga, et elle n'est plus disponible sur les systemes qui fonctionnent avec une carte graphique recente.)
Certaines applications comme Deluxe Paint proposaient de fermer le Workbench pour recuperer un peu de memoire pour travailler - dans les annees 90 la RAM etait une denree peu abordable, disposer d'une memoire de quelques MegaOctets etait un luxe - toutefois si l'application demarree ne permet pas de revenir vers un shell ou d'ouvrir le Workbench a sa sortie la machine devra alors etre redemarree pour pouvoir faire autre chose. Cependant le fait de ne pas lancer le Workbench ne nuit en rien aux fonctionnalites de l'OS (i.e. il est possible de tout faire depuis le Shell obtenu lorsque l'on boot sans ouvrir le Workbench).
AmigaOS jusqu'a la version 3.1 n'utilise aucune couche logicielle pour utiliser des fonctions graphiques ou audio additionnelles. Les nouvelles versions d'AmigaOS tiennent compte de materiels graphiques autre que le chipset d'origine, mais n'incluent aucun pilote. Il faut utiliser le pilote fourni par le constructeur du materiel additionnel. Les progiciels communs pour une solution graphique sont EGS, Picasso96 et
Cybergraphics
. Pour la couche sonore,
AHI
, un systeme de pilotes gratuits, est largement utilise.
A partir de l'AmigaOS 3.5, certaines de ces solutions sont livrees d'office.
Selon les
Amiga ROM Kernel Reference Manuals
, la reference technique officielle de l'Amiga : la generation actuelle d'Amiga n'a pas de protection de memoire, et donc rien n'interdit a un programme d'acceder a des emplacements de memoire qui ne lui appartiennent pas
[
3
]
. Une tache en deroute peut mettre en panne une autre tache en modifiant accidentellement son code ou ses donnees ; elle peut egalement mettre en panne le systeme d'exploitation et provoquer des messages
guru meditation
(voir plus loin)
[
3
]
.
Les
fuites de memoire
sont des incidents courants sur AmigaOS parce que seule la tache qui reserve de la memoire peut la liberer. Dans les systemes d'exploitation plus recents le kernel libere automatiquement la memoire de la tache lorsqu'elle s'arrete, notamment en cas de plantage
[
3
]
.
Selon le
Amiga Hardware Reference Manual
, le fait qu'un logiciel applicatif exploite directement le materiel de l'Amiga n'est pas interdit, mais fortement deconseille par ces deux phrases
≪ Pour assurer un maximum de compatibilite en avant il est fortement conseille de se servir des commandes et des fonctions d'AmigaOS ≫
et
≪ s'il est necessaire d'exploiter directement le hardware il est de votre responsabilite d'assurer que ca fonctionne sur les differents modeles et les differentes configurations ≫
[
3
]
.
- Guru meditation
Guru Meditation
est le message de plantage systeme d'AmigaOS. Ce message etait initialement destine aux ingenieurs de l'Amiga, et les invite a jouer pour oublier un evenement facheux. Il fait reference au jeu du meme nom qui consiste a rester immobile en position de meditation zen sur une planche equipee de senseurs de mouvements
[
4
]
.
Version
|
Date
|
Machines
|
Developpeur
|
1.1
|
|
Amiga 1000
|
Commodore
|
1.2
|
|
|
Commodore
|
1.3
|
|
Amiga 500 et Amiga 2000
|
Commodore
|
2.0
|
|
Amiga 3000
|
Commodore
|
2.04
|
|
Amiga 3000 Tower
|
Commodore
|
2.04
|
|
Amiga 500+ (Amiga 2000)
|
Commodore
|
2.05
|
|
Amiga 600
|
Commodore
|
3.0
|
|
Amiga 1200 et Amiga 4000
|
Commodore
|
3.1
|
|
Amiga CD32
|
Commodore (derniere version avant la faillite)
|
3.5
|
|
|
Haage And Partner
|
3.9
|
|
|
Haage And Partner
|
3.9 + BOING BAG 2
|
2002
|
|
Haage And Partner
|
3.1.4
|
Juillet 2019
|
Ancien modele et nouveau modele compatible amigaos 3.1 (amiga 1200 / 4000)
|
Hyperion Entertainment
|
3.2
|
Mai 2021
|
Anciens modeles et nouveaux modeles (ordi. vampire) avec ameliorations par rapport a l ancien 3.1 (bugs corriges sur la 3.2.1)
|
Hyperion Entertainment
|
4.0
|
Novembre 2007
|
Amiga NG : moderne (nouvelle generation)
|
Hyperion Entertainment
|
4.1 FINAL EDITION
|
Mai 2015
|
AmigaOne/MicroA1,Sam440,
Sam460, Pegasos2
|
Hyperion Entertainment
|
Les versions 1.x sont les premieres implementation d'AmigaOS. Elles sont par defaut colorees en bleu et orange (couleurs qui pouvaient etre facilement changees par l'utilisateur). Les versions 1.2 et 1.3 etaient les premieres versions disponibles en ROM (permettant leur utilisation sur des modeles ayant le kickstart dans la ROM) mais etaient encore disponibles sur des disquettes pour l'Amiga 1000. Ces versions sont celle de la ROM de l'
A500
, l'A1500, le
CDTV
(1.3 seulement) et l'
A2000
.
La version 1.1 etait principalement une correction de bogues. Les versions 1.0, sortie en
1985
et 1.1 ont ete distribuees seulement sur disquettes pour l'
Amiga 1000
.
La version 1.2 du Kickstart a corrige beaucoup de bogues, ameliorant considerablement la stabilite du systeme, et ajoutait le support d'AutoConfig qui pouvait configurer automatiquement les cartes d'extension.
La version 1.3 eut peu de changements dans le Kickstart (fixant principalement un bogue pour laisser demarrer sur des disques durs) mais eu beaucoup plus de changements dans le Workbench, comprenant un systeme de fichiers beaucoup plus rapide pour les disques durs, un CLI ameliore, et des pilotes supplementaire.
Kickstart/Workbench 1.4 etait une version beta de la toute prochaine mise a jour de la version 2.0, mais elle a ete livree en tres petite quantite avec les premiers Amiga 3000.
AmigaOS 2.0, sorti en
1990
, fut une avancee principale au systeme d'exploitation Amiga. Fini le bleu et orange dur, remplace par des couleurs plus agreables a l'œil, le gris et bleu-clair. Le Workbench n'etait plus lie aux modes d'affichage 640x256 (
PAL
) ou 640x200 (
NTSC
), et une grande partie du systeme a ete ameliore pour faciliter de futures extensions.
Malheureusement, 2.x presenta quelques incompatibilites avec de vieux logiciels mal ecrits, et bon nombre de gens furent deranges par cette mise a jour.
[ref. necessaire]
2.x etait livre avec les
A500+
(2.04),
A600
(2.05),
A3000
et
A3000T
.
Le Workbench 2.1 etait le dernier de cette serie, et fut seulement livre comme mise a jour sur disquette. Il incluait des programmes utiles tels que CrossDOS, pour travailler avec des disquettes au format
FAT
. En d'autres termes, il n'y avait aucune ROM Kickstart 2.1.
3.x etait une autre mise a jour importante.
Cette mise a jour inclut :
- un systeme de donnees universel, connu sous le nom de datatypes, qui permet a des programmes de charger des images, sons et textes dans des formats qu'ils ne comprennent pas directement, grace a l'utilisation d'entrees standards ;
- support des cartes
PCMCIA
;
- rearrangement des couleurs pour des modes d'affichage en faibles couleurs ;
- aspect visuel ameliore ;
- amelioration des images de fond.
3.x etait livre avec le
CD32
, l'
A1200
, l'
A4000
et l'
A4000T
.
Apres la cession de
Commodore International
, les proprietaires de la marque deposee Amiga ont accorde un permis a une compagnie allemande appelee Haage & Partner pour mettre a jour le systeme d'exploitation de l'Amiga. Avec cette mise a jour (3.5) est venu un changement dans la maniere de se referer au systeme d'exploitation. Plutot que d'indiquer le ≪ Kickstart ≫, ou ≪ Workbench, ≫, les mises a jour furent le plus souvent designees sous le nom de ≪ AmigaOS. ≫
Mises a jour incluses :
- utilisation de CD filesystem comme standard ;
- distribution sur CD au lieu de disquettes ;
- fourni avec une pile TCP/IP, un navigateur web, et un
client de messagerie
;
- interface graphique amelioree, appelee le ≪ ReAction ≫ ;
- lecteur de films
AVI
/
MPEG
;
- support des disques durs de plus de
4 Go
(une limitation du 1.x) ;
- documentation en
HTML
;
- lecteur audio de
MP3
et de CD (OS3.9) ;
- programme de dock ;
- workbench ameliore.
Une nouvelle version d'AmigaOS est developpee par Hyperion Entertainment
[
5
]
sous licence d'
Amiga
, Inc. La version 4.1 est une mise a jour importante dix ans apres la derniere mise a jour officielle : ce saut est comparable a celui fait par
Microsoft
, lors du passage de
Windows
3.1 a Windows 95. Elle a ete annoncee disponible le
sur le site de Hyperion Entertainment.
Cette nouvelle version du systeme est entierement (99 % ?) en code PowerPC. Elle contient un emulateur permettant d'executer du code
68 k
. Cela permet d'utiliser de nombreux logiciels developpes pour les versions anterieures du systeme.