L’IBM 360 est un ordinateur fabriqué en 1965 par la firme International Business Machines -IBM). Cet ordinateur central comportait de nombreuses innovations, dont la compatibilité très grande entre machines par la microprogrammation, 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

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 ordinateurs centraux 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.

Par ailleurs la distinction tranchée entre machines « scientifiques » et « de gestion » devenait de moins en moins pertinente, la gestion demandant de plus en plus de calculs scientifiques (par exemple l'optimisation combinatoire pour la gestion prévisionnelle des stocks) et les calculs scientifiques portant sur des volumes de plus en plus importants de données structurées (économétrie, simulations complexes…).

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 pouvoir 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 génération suivante, 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, créera six ans plus tard 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 la série Z d’IBM (systèmes zOS et Linux/390).

L’adressage mémoire était initialement sur adressant donc au maximum un mégaoctet. Des modifications ultérieures le portèrent à 24 (16 Mo), puis à (2 Go) et au-delà.

La gamme (limitée au départ à cinq modèles) fut annoncée le . Elle acceptait de périphériques dont l’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 tous les azimuts 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 tous les azimuts plus dix degrés.

Convention générale de nommage

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 de mémoire était désigné par les lettres HI (512 + 256), etc.

Systèmes d’exploitation principaux Systèmes proprement dits 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 CICS (Customer Information Control System). Un 3033 avec pouvait gérer de front CICSSource : IBM Selected Product Line Offering (guide de configuration rapide à l'usage des ingénieurs commerciaux et technico-commerciaux d'IBM dans le monde entier), 1980. 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 : il n'est sollicité que pour traiter une page d'écran (en général 24x80, puis 32x80 caractères) ou - mieux encore - uniquement le nom et le contenu des seuls champs modifiés, et non à chaque caractère frappé. IMS (Information Management System).

Sous-systèmes de temps partagé 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 thumb|IBM 360 modèle 20 thumb|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 par minute, résistèrent jusqu'au tout début des années 70 : la lenteur des bandes magnétiques, leur nature séquentielle (alors qu'une interclasseuse possédait souvent 12 bacs de sortie, permettant des tris en N log10N), 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.

Les modèles

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. . 360/25 - Remplaçant plus tardif du 360/20, avec cette fois-ci une compatibilité complète. . 360/30 - La « 2CV » des 360, fonctionnant soit sous DOS, soit sous TOS (Tape Operating System). 8 à . 360/40 - La « R8 » de la gamme. A connu un très grand succès. Tournait sous DOS, OS/MFT ou même OS/MVT. 16 à . 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 à 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 à . 360/50 - Un modèle considéré comme puissant pour son époque, et réservé déjà aux grandes entreprises. 64 à . 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 à . 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. Il équipe le premier centre de calcul du CNRS, nommé CIRCÉ. 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 douze fois plus lente lors de l’exécution de boucles en calcul scientifique. Disponibilité d’une précision flottante étendue, de . 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èlementCaractéristiques du 360/91, 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).

Son cycle mineur (processeur) était de 60 nanosecondes (16,66 MHz). Son temps d'accès mémoire (8 octets de mémoires accédés en une seule fois s'ils étaient alignés sur une frontière de double-mot)) était de 780 nanosecondes (1,28 MHz). Le modèle 91 pouvait monter à de mémoire principale, taille alors considérée comme gigantesque et, à presque un dollar l'octet de ferrite, onéreuse.

Cela lui donnait environ 50 fois la puissance du précédent fer de lance scientifique d'IBM, le 7090, sans pour autant lui permettre de rivaliser en calcul scientifique pur avec le Control Data 6600. 360/95 - Un 91 équipé de mémoires à transistors bipolaires plus rapides que les mémoires à tores de ferrite. 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 thumb|200px|right|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 par une annonce unique sur toute la gamme.