2. Meetup #2 – Histoire d’O(S) du CP/M àaujourd’hui
Septembre 2018
Frédéric Sagez Vincent Rivière
3. Petite histoire de l'ATARI ST
Jack Tramiel - fondateur évincé de Commodore - a obtenu des fonds pour acheter la division grand
public d'Atari à Warner et l'a acquise en juillet 1984 dans le but de produire un nouvel ordinateur.
De nombreux ingénieurs et cadres de Commodore ont suivi Tramiel dans la nouvelle société Atari.
En 1985, Atari présente son nouveau système informatique 16 bits appelé 520ST, le successeur des
ordinateurs de la famille Atari 8 bits, au Consumer Electronics Show en janvier 1985.
"ST" signifie Seize/Trente-deux, en raison du processeur MC68000 de
Motorola qui est équipé d’un bus de données 16 bits, alors qu’il
fonctionne en 32 bits en interne. Atari achète la licence GEM de Digital
Research, également utilisé sur certains PC à l’époque, et l'Atari ST
devient le premier ordinateur personnel équipé d’une interface
graphique couleur.
Les ordinateurs Atari ST exécutent le GEM directement via le TOS, contrairement aux premières
versions de Windows qui s'exécutaient sur MS-DOS. Atari a développé le TOS comme un
environnement rapide de type DOS avec son système de fichiers hiérarchisé.
4. Spécifications Techniques
PROCESSEUR Motorola 68000 16/32 bits @ 8 MHz. Bus de données 16 bits / 32 bits en interne / bus d’adresses 24 bits
COPROCESSEURS MFP 68901 pour la gestion des interruptions, Shifter pour la vidéo, GLUE et MMU pour la mémoire, YM-2149
pour le son
RAM 512 Ko (1 Mo pour les modèles 1040ST)
SON Yamaha YM2149F avec 3 voies à signal carré, plus 1 voie de bruit blanc, en mono.
SUPPORT Lecteur de disquettes 3"½ simple face avec une capacité de 360 Ko.
Le 1040ST avait un lecteur double face, d’une capacité de 720 Ko.
AFFICHAGE NTSC 60 Hz, PAL 50 Hz, monochrome 71.2 Hz
RESOLUTION Basse résolution - 320×200 (16 couleurs) avec une palette de 512 couleurs
Moyenne résolution - 640×200 (4 couleurs)
Haute résolution - 640×400 (monochrome)
PORTS Sortie TV (sur les modèles ST-M et ST-FM, avec modulateur NTSC ou PAL)
Port série RS-232, parallèle Centronics (imprimante)
Moniteur (RVB ou vidéo composite, couleur et monochrome, prise DIN 13 broches)
Port pour lecteur de disquettes externe supplémentaire (DIN 15 broches)
Port DMA (port ACSI, Atari Computer System Interface) pour disque dur et imprimante laser Atari
Ports joystick et souris (standard Atari)
MIDI "IN" et "OUT/THRU"
5. Le Système
d'Exploitation
Le TOS est stocké dans des ROM
intégrées à la machine, bien que
les premières versions de l'Atari ST
aient été fournies avec des
versions du TOS contenues sur des
disquettes de capacité 360 Ko
6. A propos du système d’exploitation
Le système d’exploitation de l’Atari ST s’appelle TOS, ce qui signifie
tout simplement «Le système d’exploitation» et non pas «Tramiel
système d’exploitation»
L’Atari ST possède un système d’exploitation extrêmement complexe
composé de plusieurs groupes de routines qui comprennent plusieurs
niveaux d'interaction avec la machine
Il combine l'interface graphique GEM et le GEMDOS, un système
d'exploitation de type DOS développé par Digital Research qui utilise le
GEM en tant que couche graphique au-dessus de MS-DOS
Comme il est stocké en ROM, il démarre instantanément !
7. TOS - Le système d'exploitation
Le système d'exploitation du ST peut être divisé en trois grands groupes de routines :
• Bibliothèques BIOS, XBIOS et Line-A. Ces bibliothèques contrôlent les
fonctions dépendantes de la machine (comme le contrôle des périphériques)
et les Entrées/Sorties de base.
• GEM (Graphics Environment Manager) contient deux bibliothèques : les
routines AES et VDI. GEM est responsable de l'environnement de fenêtrage
et du bureau qui rend l'utilisation du ST plus intuitive. L'AES concerne
principalement les fenêtres et les boîtes de dialogue, avec lesquelles
l'utilisateur interagit. Les routines VDI gèrent l'affichage de texte complexe et
les manipulations graphiques de haut niveau.
• GEMDOS (GEM Disk Operating System) sont les routines indépendantes de la
machine pour la gestion des fichiers et des tâches (programmes) et pour les
Entrées/Sorties de niveau "élevé".
TOS et GEM sont tous deux entièrement stockés dans la ROM du système
8. TOS - Le système d'exploitation
AES: Application Environment Services
VDI: Virtual Device Interface
GEM: Graphics Environment
Manager
BIOS: Basic Input/Output System
XBIOS: Extended BIOS (gestion des périphériques) LINE-A: Fonctions graphiques de bas niveau, très rapides
EXTENSIONS
GDOS: Graphics Device
Operating System
MetaDos: périphériques
de type « bloc »
GEMDOS: GEM
Disk Operating
System
Devices
10. GEM - Graphics Environment Manager
Graphics Environment Manager est indépendant du matériel avec un
ensemble de routines qui permettent au programmeur d'utiliser les
fenêtres, les boîtes de dialogue, la souris, les boutons et les curseurs pour
s'interfacer avec un utilisateur final.
GEM permet également de présenter
des graphiques complexes et de les
afficher sur différents périphériques. Il
est conçu pour que ces fonctionnalités
puissent être définies, accédées et
utilisées avec un nombre relativement
restreint de routines. Il permet
également un multitâche limité grâce
aux accessoires de bureau.
GEMView
11. GEM - Graphics Environment Manager
Le bureau utilise des icônes pour représenter les périphériques, les fichiers
et dispose de fenêtres et de boîtes de dialogue. Le bureau standard dispose
d'une corbeille et de deux icônes de disquettes. Dans la partie supérieure se
trouve un menu déroulant. Son contenu change en fonction de l'application
(un peu comme sur Macintosh) bien que les applications ne soient pas
obligées d'utiliser le menu, auquel cas il n’est pas affiché.
TOS peut exécuter différents types de fichiers identifiés par les extensions
suivantes :
o .ACC - Accessoire de bureau (chargé automatiquement au démarrage)
o .PRG et .APP - Programme de type exécutable (souvent des programmes GEM)
o .TOS - Programmes qui utilisent uniquement GEMDOS et non le système GEM pour fonctionner
o .TTP -TOS avec paramètres. Ouvre une boîte de dialogue dans laquelle on peut ajouter des
arguments pour exécuter le programme
Si une disquette est insérée dans le lecteur lorsque l'ordinateur démarre, il
contournera le bureau GEM et démarrera le programme contenu dans le dossier
AUTO. Ceci est utilisé par de nombreuses démos et la plupart des jeux.
13. MAC
Logiciel : Aladin
Matériel : Spectre GCR
Atari STF surnommé « Jackintosh »
Le GEMDOS facilite la transition du PC vers le ST et il est compatible avec les appels
DOS du PC (int 21h).
IBM PC
Logiciel : PC DITTO
Matériel : SuperCharger
Compatibilité du système et émulation
14. Evolution de l'OS de l'Atari ST
Version Nom Date Support GEMDOS AES Modèle
1.00 Mushroom 20.06.1985 RAM 0.13 1.01 ST
1.00 Old TOS 06.02.1986 ROM 0.13 1.20 ST/STF
1.02 Blitter 22.04.1987 ROM 0.13 1.40 MEGA/STF
1.04 Rainbow TOS 22.02.1989 ROM 0.15 1.40 MEGA/STF/STACY
1.06 STE TOS 19.06.1989 ROM 0.15 1.40 STE
1.62 STE TOS 11.01.1990 ROM 0.17 1.40 STE
1985 1990
MUSHROOM
BLITTER
RAINBOW TOS
STE TOS
OLD TOS
KAOSROM TOS
MEGA TOS
15. Quizz : De quelle version ai-je vraiment besoin ?
16. • Stable et peu gourmand en mémoire
• Le système réside dans la ROM et n'utilise pas la mémoire vive du système
• Il ne prend pas en charge le multitâche
• La mémoire peut être extensible jusqu’à 12 Mo
• Le système peut interagir avec le GEM (architecture parallèle)
• Le système et le clavier prennent en charge 12 langues
• Il ne prend pas en charge les lecteurs logiques de grande taille (nécessité de créer
plusieurs partitions)
• Atari TOS est basé sur GEMDOS qui utilise une FAT12 modifiée pour les disquettes
(capacité de 360 Ko à 900 Ko) ou FAT16 avec les systèmes de fichiers des disques durs (la
partition est d'environ 512 Mo)
• Les systèmes de fichiers des disques GEMDOS peuvent être lus sur PC en utilisant le DOS
ou Windows
TOS - Avantages et inconvénients
18. Les versions du TOS Atari
TOS officiels pour les ordinateurs Atari :
• 1985-1990 : TOS 1.x (ST / STf / Mega ST / STe)
• 1990-1991 : TOS 2.x (Mega STe)
• 1990-1991 : TOS 3.x (TT)
• 1992-1993 : TOS 4.x (Falcon)
Toujours entièrement contenu dans la ROM
Les nouvelles versions ajoutent principalement le
support des nouveaux matériels
Quelques évolutions mineures (XBIOS, AES, bureau)
19. Atari TT (1990), TOS 3.06
•Jusqu'à 1280x960 en
monochrome
•Supporte aussi :
640x480 16 couleurs
320x480 256 couleurs
20. Atari Falcon 030 (1992), TOS 4.04
• 640x480, VGA
• 2, 4, 16 ou 256 couleurs
• Supporte également
le mode High-Color
16 bits en 320x240
21. TOS pour clones Atari
• Medusa Computer Systems
T40 (1995), Hades 040/060 (1996)
TOS 3.06 modifié
• MILAN-Computersystems GbR
Milan 040/060 (1998)
TOS 4.04 modifié (4.05 – 4.08)
Ces sociétés ont établi des contrats avec
Atari pour redistribuer les TOS modifiés
22. Binaires du TOS patchés
• TOS CT60 par Didier Méquignon (2001-2011)
TOS 4.04 du Falcon, patché pour supporter les cartes accélératrices CT60 /
CT63 / CTPCI : CPU 68060, FastRAM, port d'extension.
Modifié encore plus en tant que FireTOS pour le FireBee et son processeur
ColdFire
• Mises à jour du TOS 1.04 & 1.62 par PP (2018)
Corrections de bugs, prise en charge améliorée de la FAT
pour des partitions plus grandes, prise en charge de
disquettes virtuelles, et beaucoup plus encore.
23. OS alternatif : Geneva (1993) par Gribnif Software
•Multitâche
coopératif
•A utiliser de
préférence
avec le bureau
NeoDesk
•Open-sourcé en
2018
24. OS Alternatif : MagiC (1992) par A. Kromke, S. & W.Behne
•Multitâche
préemptif
•Nouveau bureau :
MAGXDESK
•Disponible
également sur
Mac, PC
•Open-sourcé
en 2018
26. • Prise en charge des pilotes de périphériques
• Noyau multitâche préemptif
• Fonctionne par-dessus le TOS
• Inclut une pile TCP/IP
• Support des systèmes de fichiers alternatifs (MINIX,
ext2, FAT32)
• Prise en charge des noms de fichiers longs (VFAT)
• Etend l'API TOS (GEMDOS) avec des fonctionnalités de
type UNIX
MiNT: MiNT is Not TOS (1990) par Eric R. Smith
27. MiNT: Vu depuis le bureau de la ROM
•Lecteur virtuel
unifié U: comme
racine unique
•contient des
liens vers les
partitions
•Répertoires de
type UNIX :
pipe, proc, shm
28. • Prise en charge des principaux compilateurs : Pure C, C68,GCC...
• Fournit une API POSIX au dessus de TOS/MiNT
• Convertit les appels POSIX à l'exécution :
vers les appels système MiNT, si disponibles
sinon, vers les appels système TOS
• Les fichiers binaires peuvent automatiquement tirer parti des
fonctionnalités de MiNT à l'exécution, si elles sont disponibles.
• La plupart des logiciels GNU/Linux peuvent être compilés tels
quels
MiNTLib : librairie standard C
29. MiNT + MiNTLib : Environnement POSIX
•Conversion
des chemins
entre DOS et
UNIX
•Exemple :
/tmp = u:tmp
Ancienne configuration MiNT sur ST (1995)
30. Atari MultiTOS (1992)
•Atari embauche Eric R. Smith
•MultiTOS = Noyau MiNT
+ AES multitâche (interface utilisateur)
+ bureau multitâche
•Correctmaisunpeulent,abesoindeRAM
•Principalement pour les TT / Falcon haut de gamme,
ou les clones
•Le noyau MINT a été renommé en “MiNT is Now TOS”
32. FreeMiNT (2000…)
•Reprise du noyau MiNT, en tant que logiciel libre
•Mis dans CVS en 2000, puis dans Git en 2017
•Activement maintenu par la communauté
basée sur la MiNT Mailing List
•Builds automatiques avec
GitHub, Travis CI et Bintray
•Fourni avec l’interface graphique XaAES
33. XaAES : AES multitâche pour FreeMiNT
•Noyau FreeMiNT
•Environnement
fenêtré XaAES
•Tera Desktop
•Que des logiciels
libres !
34. Distribution SpareMiNT (2000~2010)
•Noyau FreeMiNT
•GCC + MiNTLib
•Packages RPM (Red Hat)
•Enormes efforts pour fournir un environnement
UNIX complet : de nombreux paquets libres,
provenant principalement de GNU/Linux.
•Peut être installé avec l’installateur EasyMiNT
36. EmuTOS (2001…)
• Nouveau système d'exploitation compatible avec le TOS d’Atari
• Implémenté comme logiciel libre, sous licence GPLv2
• Basé sur les vieux sources du GEM open-sourcés par Digital Research
• Ne contient aucun code de la société Atari (toujours sous copyright)
• Les parties manquantes ont été comblées par l’équipe de développement
d’EmuTOS
• Réimplementation de toutes les couches :
BIOS, GEMDOS (BDOS), VDI, AES, bureau
• Disponible sous plusieurs formes : ROM, PRG, disquette, cartouche…
• Prend en charge tous les ordinateurs Atari, tous les processeurs 680x0, les
processeurs ColdFire, et même du matériel non Atari
39. Histoire du GEM sur PC
• 1984 : Digital Research Inc.
• 1991 : Novell (a acheté Digital Research Inc.)
• 1996 : Caldera, Inc. (a acheté DR-DOS à Novell)
• 1998 : Caldera Thin Clients, Inc. (filiale de Caldera)
• 1999 : Lineo (nouveau nom de Caldera Thin Clients, Inc.)
• 1999 : GPL (par Caldera/Lineo)
Histoire complète : Wikipedia
Archive (avec téléchargements) : GEM Contents
et aussi: John Elliott’s GEM pages, FreeGEM, OpenGEM
41. Emulateurs + EmuTOS + FreeMiNT
• Platforme moderne, compatible TOS + UNIX-like
• 100% logiciel libre
• Emulateurs standard : Hatari et Steem SSE
• Emulateur étendu : ARAnyM
Accès au système de fichiers hôte
Modes vidéo étendus
Pont réseau
Amélioration de la prise en charge des périphériques de type bloc
Pris en charge par le système d'exploitation via des pilotes dans
EmuTOS, fVDI et FreeMiNT