IBM 360 et 370

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Un IBM 360/20

L'IBM 360 est un calculateur fabriqué en 1966 par la firme International Business Machines. Cette machine comportait de nombreuses innovations et rencontra un énorme succès pour l'époque. La série 360 a massivement contribué à imposer les ordinateurs dans le monde tant scientifique que des affaires.

Principe[modifier | modifier le code]

La série 360 se proposait d’offrir une architecture de machine unique du plus petit au plus gros ordinateur d’IBM, afin de faciliter les changements de machine d’un modèle plus petit --- la plupart des 360/20 ne lisaient que des cartes perforées --- vers un plus gros, voire (ce qui n’arriva que vers 1980 avec la baisse de coût des mainframes et l’invalidation de la loi de Grosch) d’un gros vers plusieurs plus petits. Le procédé employé consistait à microprogrammer les instructions sur les petites machines afin qu’elles exécutent les programmes des grandes, même si c’était de 3 à 500 fois plus lentement pour certaines instructions. Cela se justifiait d’autant plus facilement que :

  • les machines des centres scientifiques utilisent très peu les instructions de calcul décimal ;
  • les machines des centres de gestion n’ont pour ainsi dire pas recours aux instructions en virgule flottante ;
  • il n’en est pas moins confortable de pouvoir passer ses programmes indifféremment sur l’une ou l’autre, et plus encore d’utiliser le même système d'exploitation sur les deux.

La microprogrammation possédait deux avantages sur l’émulation plus classique par logiciel :

  • exécution dans une circuiterie plus rapide ;
  • possibilité d’opérations simultanées sur des portes logiques différentes.

Les machines devaient également pourvoir se reconfigurer en cas de détection d’éléments défectueux. Limitée à quelques circuits seulement au départ, cette possibilité de reconfiguration se généralisa au fil du temps, et permit d’aboutir vers la fin de la série à des modèles ne connaissant en moyenne que quelques secondes d’indisponibilité par an seulement. La série actuelle nommée Série Z (alias S/390) depuis 2001 a repris, en l’étendant et en multipliant le nombre de processeurs, la même architecture.

Le développement de la gamme initiale coûta 5 milliards de dollars de 1964. Les machines furent copiées (sans autorisation) jusqu’en URSS sous le nom de projet Ryad. L’architecte principal du projet chez IBM, Gene Amdahl, fonda un temps sa propre société concurrente d’IBM. Outre celles de la Amdahl Corporation, des machines compatibles furent proposées aussi par d’autres constructeurs comme Itel (aujourd’hui disparu), Hitachi, et Fujitsu qui racheta plus tard Amdahl.

L’architecture 360/370, étendue depuis, est toujours utilisée sur l’actuelle série Z d’IBM (systèmes zOS et Linux/390).

L’adressage mémoire était initialement sur 20 bits. Des modifications ultérieures le portèrent à 24, puis à 32 bits et au-delà.

La gamme (limitée au départ à 5 modèles) fut annoncée le 7 avril 1964. Elle acceptait 40 modèles de périphériques dont la fameuse imprimante 1403 introduite avec l’ordinateur commercial 1401 (et qui sera utilisée jusqu’aux années 1980). Le 360 comportait en standard un émulateur de 1401.

Le choix du nom 360 manifestait la volonté de couvrir tout l’azimut des applications informatiques. Lorsque la génération suivante, à laquelle il fallait bien donner un nom, fut annoncée sous le nom de 370, il fut souvent demandé aux commerciaux d’IBM si cette nouvelle gamme de machines entendait couvrir tout l’azimut plus dix degrés.

Convention générale de nommage[modifier | modifier le code]

La norme créée pour noter les multiples de 210 est le « kibi », qui veut dire « kilo binaire ». Ainsi, les tailles mémoire des 360 et 370 étaient souvent des puissances de 2, repérées par les lettres suivantes :

B : 4 kibioctets C : 8 kibioctets D : 16 kibioctets E : 32 kibioctets F : 64 kibioctets G : 128 kibioctets H : 256 kibioctets I : 512 kibioctets J : 1024 kibioctets K : 2048 kibioctets L : 4096 kibioctets

Un ordinateur pourvu de 768 kibioctets de mémoire était désigné par les lettres HI (512 + 256), etc.

Systèmes d’exploitation principaux[modifier | modifier le code]

Systèmes proprement dits[modifier | modifier le code]

  • DOS/360 (en) puis DOS/VS implémenté en 1972, devenu en 1979 le DOS/VSE.
  • OS (Operating System), lui-même décliné en deux versions :
    • OS/MFT (Multiprogramming, Fixed number of Tasks) qui deviendra vers 1973 l’OS/VS1, puis disparaîtra,
    • OS/MVT (Multiprogramming, Variable number of Tasks), qui deviendra OS/VS2, puis MVS et enfin z/OS.
  • TSS (Time-Sharing System) Système d'exploitation du 360/67.
  • RTOS (Real Time Operating System) 360/75. Utilisé par la NASA dans le cadre du programme Apollo.
  • CP/CMS (Control Program/Conversational Monitoring System), qui deviendra VM/CMS, puis VM/370 et enfin z/VM. CP était un hyperviseur gérant des machines virtuelles sous lequel on pouvait faire tourner indifféremment des CMS, des DOS et des OS. Proposé à des clients le temps d’effectuer des migrations des DOS vers OS, il sera souvent conservé pour la très grande convivialité de CMS utilisé comme système de temps partagé.
  • UTS (Universal Time-sharing System) Première mise en place d'UNIX pour architecture 360/370, ce système d'exploitation fut créé par Amdahl Corporation.
  • AIX/370 quelque temps à partir de 1989, conjointement à des AIX PS/2.
  • Linux à partir de la fin des années 1990 (sous z/VM).

Moniteurs transactionnels[modifier | modifier le code]

  • CICS (Customer Information Control System). Un 3033 avec 16 Mo pouvait gérer de front 17 500 terminaux CICS ! Cela étant, les unités de contrôle (3274, puis 3174) des terminaux 3270 géraient le traitement local de la frappe et du curseur en full-screen, ce qui allégeait d'autant le processeur central : une sollicitation par page d'écran (en général 24x80 caractères) et non par caractère frappé.
  • IMS (Information Management System).

Sous-systèmes de temps partagé[modifier | modifier le code]

  • ITF (Interactive Terminal Facility)
  • TSO (Time Sharing Option, plus tard intégrée directement à MVS)
  • ICCF (petit temps partagé ayant existé un temps sur les systèmes DOS/VSE)

Série IBM 360[modifier | modifier le code]

IBM 360 modèle 20
Dérouleurs de bande de l'IBM 360

Cette série était munie de mémoires à tores de ferrite. Son numéro faisait référence aux 360° du cercle pour signifier qu'une gamme unique de machines pouvait maintenant couvrir tout l'azimut des besoins informatiques, scientifique comme gestion.

Le 360 vit l'ordinateur empiéter timidement sur le domaine des machines mécanographiques pour les applications de paie et de suivi. Il n'y eut que dans le domaine des tris que les interclasseuses et tabulatrices, traitant des bacs de taille quelconque à typiquement 1100 cartes/minute, résistèrent jusqu'au tout début des années 70 : la lenteur des bandes magnétiques, le prix de leur dérouleurs et leur taille, et les capacités de mémoire faibles et onéreuses, en furent une raison; néanmoins, la carte perforée assura une transition progressive entre les deux modes de traitement, non sans conflits de pouvoir dans les entreprises.

  • 360/20 - Le plus petit des 360, pas totalement compatible avec le reste de la famille (deux fois moins de registres) et sans compatibilité binaire non plus. Il disposait en option d’un émulateur 1401. 4 à 16 Kio.
  • 360/25 - Remplaçant plus tardif du 360/20, avec cette fois-ci une compatibilité complète. 4 à 32 Kio.
  • 360/30 - La « 2CV » des 360, fonctionnant soit sous DOS, soit sous TOS (Tape Operating System). 8 à 64 Kio.
  • 360/40 - La « R8 » de la gamme. À connu un très grand succès. Tournait sous DOS, OS/MFT ou même OS/MVT. 16 à 256 Kio.
  • 360/44 - Le modèle « orienté scientifique ». Similaire au 40, mais avec un flottant câblé et non microprogrammé, ainsi qu’une mémoire plus rapide. Possibilité de travailler sur 4 à 8 octets de mantisse. Deux précisions de calcul flottant étaient sélectionnables par interrupteur de pupitre. Ne possédant que des instructions sur demi-mot (16 bits) et mot (32 bits), il n’était pas pénalisé par les questions d’alignements de double-mots. Possédait un système d’exploitation en propre, le PS/44. 32 à 256 Kio.
  • 360/50 - Un modèle considéré comme puissant pour son époque, et réservé déjà aux grandes entreprises. 64 à 2 048 Kio.
  • 360/65 - Modèle de transition en attendant le 360/67.
  • 360/67 - Premier et unique IBM 360 à mémoire virtuelle, et préfigurant donc le 370. Muni de registres associatifs, et pouvant être équipé en biprocesseur. Logiciel TSS largement développé à Grenoble, ainsi que son système CP/CMS. 256 à 2 048 Kio.
  • 360/75 - Le plus rapide des 360. Entièrement câblé, tandis que les modèles inférieurs étaient partiellement microcodés. Crédité pour son époque de la vitesse alors effarante d’un million d’instructions par seconde (MIPS). Ne fut cependant jamais l’ordinateur le plus rapide du monde, Control Data Corporation l’ayant devancé avec son modèle scientifique 6600.
  • 360/85 (1968) - machine équipée d’un cache, alias antémémoire, afin de ne pas être ralenti par les accès à la mémoire à ferrite 12 fois plus lente lors de l’exécution de boucles en calcul scientifique. Disponibilité d’une précision flottante étendue, de 16 octets.
  • 360/91 - Premier ordinateur IBM comportant un mode pipeline. Entièrement câblé, sauf les instructions décimales (gestion), d’usage rare sur une machine scientifique et donc restant simulées par logiciel. Exécutant plusieurs instructions parallèlement[1], il introduit la notion d'« interruption imprécise », qui n’est plus signalée comme rencontrée à une adresse du programme, mais au voisinage de celle-ci, ce qui se révélera un cauchemar pour les programmeurs. Coût typique : 4 millions de marks (de 1970) pour celui du Max-Planck Institut de Garching, près de Munich (circa 1970).
  • 360/95 - Un 91 équipé de mémoires bipolaires plus rapides au lieu de ferrites.
  • 360/195 - Successeur plus rapide du 91, lui aussi entièrement câblé. Exista en version 360 puis en version 370, comportant les instructions du 370, mais pas la mémoire virtuelle de celui-ci.

Série IBM 370[modifier | modifier le code]

Architecture de machine virtuelle des systèmes 370

Les 370 étaient équipés de mémoires à semiconducteurs (bipolaires), et certains modèles munis d’origine de contrôleurs de communications pour le support de terminaux à écran 3270. En 1973, la mémoire virtuelle fut généralisée sur toute la gamme.

  • 370/115 - Entrée de gamme, un peu moins puissant que le 360/25.
  • 370/115 modèle II - 115 plus tardif, ayant les performances d’un 370/125.
  • 370/125 - Remplaçant du modèle 360/20, et qui sera lui-même remplacé plus tard par le 115 modèle II.
  • 370/135 - Voisin en puissance du 360/40. Sera vite remplacé par le 370/138 à mémoire virtuelle.
  • 370/138 -
  • 370/145 - Premier ordinateur doté d’une mémoire monolithique totalement intégrée (une seule plaque de silicium) et de processeurs bipolaires 128 bits. Plus de 1 400 éléments rassemblés sur des puces d’à peine plus d'1 cm2.
  • 370/148 -
  • 370/158 - Possédait un VU-mètre en façade indiquant la charge du système.
  • 370/165 - Temps de cycle 25 ns. Ordinateur général le plus rapide du début des années 1970. 2,1 cycles par instruction.
  • 370/168 - Identique au 360/165, avec la mémoire virtuelle en plus. Performance poussée à 1,6 cycle par instruction. Le 168-3 était crédité de 3,5 MIPS. Cela correspondra plus tard à la puissance d’un 38 625 MHz avec cache externe de 2x32 Kio dans la gamme Intel, mais le 168-3 n’en a pas moins un thoughput largement supérieur en raison notamment de ses canaux, ou processeurs auxiliaires dédiés aux seules entrées sorties et dont il dispose en standard comme le reste de la gamme : on n'aurait pu gérer 40 terminaux de développement ou 200 terminaux transactionnels sur un 386/25.

IBM pensa quelque temps à remplacer sa ligne 360/370 par le projet FS, mais y renonça pour des raisons de coût, performances, efficacité, continuité (difficulté de reprendre l’existant) et marketing (le marché aurait mal admis un brutal changement de cap après avoir investi dans une technologie annoncée comme destinée à durer). FS fut abandonné et une partie de ses techniques reprises dans le simple cadre classique, sans la grande refonte imaginée au départ : imprimante à laser 3800, bibliothèque automatique 3850, écrans mixtes textes et graphiques 3278/3279, logiciel GDDM, migration de fichiers HFS, réseau SNA, bases de données relationnelles DB2, etc.

Séries ultérieures dans cette architecture[modifier | modifier le code]

Amdahl ayant pris de vitesse IBM en nommant sa série 470, le plan de nommage d’IBM change et devient moins clair. Au début, le haut de gamme occupe les numéros 3031, 3032 et 3033, mais rapidement sont introduits des 4331 et 4341 de puissance inférieure, puis un 3081 et un 3083 difficiles à situer. L’image claire et nette de la série 360/370 se brouille totalement pendant cette période, ce qui coïncide avec un début de déclin de la position dominante d’IBM vers 1987.

Série IBM 3090[modifier | modifier le code]

Peu de nouveautés spectaculaires, hormis :

  • 1995 : technologie CMOS plus économique ;
  • 1999 :
    • technologie de processeurs à substrat de cuivre (mieux refroidis et donc plus rapides),
    • disponibilité et prise en charge officielle de Linux,
    • capacity upgrade on demand (CUOD) ou possibilité de moduler dynamiquement le nombre de processeurs en fonction des besoins, pour écluser par exemple les pointes de charge venant d’Internet.

La notion de mainframe tend à s’effacer derrière celle de serveur, boîte noire dont l’architecture importe peu dès lors qu’elle répond dans les délais voulus aux transactions demandées.

Notes et références[modifier | modifier le code]

Articles connexes[modifier | modifier le code]