Projet IBM Future Systems - IBM Future Systems project

Le projet Future Systems (FS) était un projet de recherche et développement entrepris par IBM au début des années 1970, visant à développer une gamme révolutionnaire de produits informatiques, y compris de nouveaux modèles logiciels qui simplifieraient le développement de logiciels en exploitant du matériel puissant et moderne .

Contexte et objectifs

Jusqu'à la fin des années 1960, IBM réalisait l'essentiel de ses bénéfices sur le matériel, en regroupant des logiciels et des services de support avec ses systèmes. Seul le matériel portait une étiquette de prix, mais ces prix comprenaient une allocation pour les logiciels et les services.

D'autres fabricants avaient commencé à commercialiser du matériel compatible, principalement des périphériques tels que des lecteurs de bandes et de disques , à un prix nettement inférieur à celui d'IBM, réduisant ainsi la base possible pour récupérer le coût des logiciels et des services. Au début de 1971, après que Gene Amdahl eut quitté IBM pour créer sa propre entreprise proposant des mainframes compatibles IBM , un groupe de travail interne d'IBM (projet Counterpoint) a conclu que l'activité mainframe compatible était effectivement une activité viable, et que la base de la facturation des logiciels et services compris dans le prix du matériel disparaîtraient rapidement.

Un autre problème stratégique était que le coût de l'informatique diminuait régulièrement tandis que les coûts de programmation et d'exploitation, constitués de frais de personnel, augmentaient régulièrement. Par conséquent, la part du budget informatique du client disponible pour les fournisseurs de matériel serait considérablement réduite dans les années à venir, et avec elle la base des revenus d'IBM. Il était impératif qu'IBM, en s'attaquant au coût de développement et d'exploitation des applications dans ses futurs produits, réduise en même temps le coût total de l'informatique pour les clients et capture une plus grande partie de ce coût.

Dans le même temps, IBM faisait l'objet d'attaques judiciaires pour sa position dominante et sa politique de regroupement des logiciels et des services dans le prix du matériel, de sorte que toute tentative de « regroupage » d'une partie de ses offres devait être fermement justifiée sur une base purement technique. base, de manière à résister à toute contestation judiciaire.

En mai-juin 1971, un groupe de travail international s'est réuni à Armonk sous la direction de John Opel , alors vice-président d'IBM. Sa mission était d'étudier la faisabilité d'une nouvelle gamme d'ordinateurs qui profiterait des avantages technologiques d'IBM afin de rendre obsolètes tous les ordinateurs précédents - les offres compatibles mais aussi les propres produits d'IBM. Le groupe de travail a conclu que le projet valait la peine d'être poursuivi, mais que la clé de son acceptation sur le marché était une réduction d'un ordre de grandeur des coûts de développement, d'exploitation et de maintenance des logiciels d'application.

Les objectifs majeurs du projet FS ont donc été énoncés comme suit :

  • rendre obsolète tous les équipements informatiques existants, y compris ceux d'IBM, en exploitant pleinement les dernières technologies,
  • diminuer considérablement les coûts et les efforts impliqués dans le développement et l'exploitation des applications,
  • fournir une base techniquement solide pour regrouper autant que possible les offres d'IBM (matériel, logiciels et services)

On espérait qu'une nouvelle architecture utilisant davantage les ressources matérielles, dont le coût était en baisse, pourrait considérablement simplifier le développement logiciel et réduire les coûts à la fois pour IBM et pour les clients.

La technologie

Accès aux données

L'un des principes de conception de FS était un " magasin à un niveau " qui a étendu l'idée de mémoire virtuelle pour couvrir les données persistantes. La mémoire de travail, les fichiers et les bases de données étaient tous accédés de manière uniforme par une abstraction de la notion d'adresse.

Par conséquent, les programmeurs n'auraient pas à se demander si l'objet auquel ils tentaient d'accéder était en mémoire ou sur le disque.

Ceci et d'autres améliorations prévues devaient rendre la programmation plus facile et ainsi réduire le coût de développement du logiciel.

La mise en œuvre de ce principe nécessitait que le mécanisme d'adressage au cœur de la machine intègre un système complet de gestion de la hiérarchie de stockage et des parties majeures d'un système de gestion de base de données, qui jusqu'alors étaient implémentés en tant que logiciel complémentaire.

Processeur

Un autre principe était l'utilisation d'instructions complexes de très haut niveau à implémenter en microcode . Par exemple, l'une des instructions, CreateEncapsulatedModule, était un éditeur de liens complet . D'autres instructions ont été conçues pour prendre en charge les structures de données internes et les opérations des langages de programmation tels que FORTRAN , COBOL et PL/I . En effet, FS a été conçu pour être l'ordinateur à jeu d'instructions complexes ( CISC ) ultime .

Une autre façon de présenter le même concept était que l'ensemble des fonctions précédemment implémentées en tant que matériel, logiciel de système d'exploitation, logiciel de base de données et plus serait désormais considéré comme constituant un système intégré, avec chaque fonction élémentaire implémentée dans l'un des nombreux couches comprenant les circuits, le microcode et les logiciels conventionnels . Plus d'une couche de microcode et de code ont été envisagées, parfois appelées picocode ou millicode . Selon les interlocuteurs, la notion même de « machine » s'échelonnait donc entre les fonctions mises en œuvre sous forme de circuits (pour les spécialistes du matériel) à l'ensemble complet des fonctions proposées aux utilisateurs, quelle que soit leur mise en œuvre (pour les architectes systèmes).

La conception globale nécessitait également un "contrôleur universel" pour gérer principalement les opérations d'entrée-sortie en dehors du processeur principal. Ce contrôleur universel aurait un jeu d'instructions très limité, limité aux opérations requises pour les E/S, pionnier du concept d'un ordinateur à jeu d'instructions réduit (RISC).

Pendant ce temps, John Cocke , l'un des principaux concepteurs des premiers ordinateurs IBM, a commencé un projet de recherche pour concevoir le premier ordinateur à jeu d'instructions réduit ( RISC ). À long terme, l'architecture RISC, qui a finalement évolué vers l'architecture Power et PowerPC d' IBM , s'est avérée beaucoup moins chère à mettre en œuvre et capable d'atteindre une fréquence d'horloge beaucoup plus élevée.

Histoire

Début du projet

À la fin des années 1960 et au début des années 1970, IBM a envisagé une refonte radicale de l'ensemble de sa gamme de produits pour tirer parti du coût beaucoup plus bas des circuits informatiques attendu dans les années 1980.

Le projet IBM Future Systems (FS) a été officiellement lancé en septembre 1971, suite aux recommandations d'un groupe de travail spécial réuni au deuxième trimestre de 1971. Au fil du temps, plusieurs autres projets de recherche dans divers sites IBM ont fusionné dans le projet FS ou s'y est associé.

Gestion de projet

Pendant toute sa durée de vie, le projet FS a été mené dans le cadre de dispositions de sécurité strictes. Le projet a été décomposé en plusieurs sous-projets assignés à différentes équipes. De la même manière, la documentation était divisée en plusieurs parties, et l'accès à chaque document était soumis à la vérification du besoin d'en connaître par le bureau de projet. Les documents étaient suivis et pouvaient être rappelés à tout moment.

Dans la note de Sowa (voir Liens externes, ci-dessous), il a noté que le but avoué de toute cette paperasserie est d'empêcher quiconque de comprendre l'ensemble du système ; cet objectif a certainement été atteint.

En conséquence, la plupart des personnes travaillant sur le projet en avaient une vision extrêmement limitée, limitée à ce qu'elles avaient besoin de savoir pour produire la contribution attendue. Certaines équipes travaillaient même sur FS sans le savoir. Ceci explique pourquoi, lorsqu'on leur demande de définir FS, la plupart des gens donnent une réponse très partielle, limitée à l'intersection de FS avec leur domaine de compétence.

Lignes de produits prévues

Trois implémentations de l'architecture FS étaient prévues : le modèle haut de gamme était en cours de conception à Poughkeepsie, NY , où les ordinateurs les plus gros et les plus rapides d'IBM ont été construits ; le modèle intermédiaire était conçu à Endicott, NY , qui était responsable des ordinateurs de milieu de gamme ; et le plus petit modèle était en cours de conception à Rochester, MN , qui était responsable des ordinateurs des petites entreprises d'IBM.

Une gamme continue de performances pourrait être offerte en faisant varier le nombre de processeurs dans un système à chacun des trois niveaux de mise en œuvre.

Début 1973, la gestion globale du projet et les équipes responsables des couches plus « extérieures » communes à toutes les implémentations sont consolidées dans le laboratoire Mohansic ASDD (à mi-chemin entre le siège d'Armonk/White Plains et Poughkeepsie).

Fin du projet

Le projet FS a été tué en 1975. Les raisons invoquées pour arrêter le projet dépendent de la personne interrogée, qui met en avant les enjeux liés au domaine qui lui est familier. En réalité, le succès du projet dépendait d'un grand nombre de percées dans tous les domaines, de la conception et de la fabrication de circuits à la commercialisation et à la maintenance. Bien que chaque problème pris isolément ait pu être résolu, la probabilité qu'ils puissent tous être résolus à temps et de manières mutuellement compatibles était pratiquement nul.

L'un des symptômes était la piètre performance de sa plus grande implémentation, mais le projet a également été entaché par des arguments internes prolongés sur divers aspects techniques, y compris des débats internes à IBM sur les mérites des conceptions RISC vs. CISC. La complexité du jeu d'instructions était un autre obstacle; il a été considéré comme "incompréhensible" par les propres ingénieurs d'IBM et il y avait de fortes indications que le magasin à un niveau à l'échelle du système ne pouvait pas être sauvegardé en partie, prédisant le partitionnement par IBM AS/400 du magasin à un niveau du System/38. De plus, les simulations ont montré que l'exécution des instructions FS natives sur la machine haut de gamme était plus lente que l' émulateur System/370 sur la même machine.

Le projet FS a finalement pris fin lorsqu'IBM a réalisé que l'acceptation par les clients serait beaucoup plus limitée que prévu à l'origine car il n'y avait pas de chemin de migration d'application raisonnable pour les clients de l'architecture 360. Afin de laisser une liberté maximale pour concevoir un système vraiment révolutionnaire, la facilité de migration des applications n'était pas l'un des principaux objectifs de conception du projet FS, mais devait être abordée par des aides à la migration logicielle prenant la nouvelle architecture pour acquise. En fin de compte, il est apparu que le coût de la migration de la masse des investissements des utilisateurs dans le COBOL et les applications basées sur le langage assembleur vers FS était dans de nombreux cas susceptible d'être supérieur au coût d'acquisition d'un nouveau système.

Résultats

Bien que le projet FS dans son ensemble ait été tué, une version simplifiée de l'architecture pour la plus petite des trois machines a continué à être développée à Rochester. Il a finalement été publié sous le nom d'IBM System/38 , qui s'est avéré être une bonne conception pour faciliter la programmation, mais il était terriblement sous-alimenté. L' AS/400 a hérité de la même architecture, mais avec des améliorations de performances. Dans les deux machines, le jeu d'instructions de haut niveau généré par les compilateurs n'est pas interprété, mais traduit en un jeu d'instructions machine de niveau inférieur et exécuté ; le jeu d'instructions de niveau inférieur d'origine était un jeu d'instructions CISC avec quelques similitudes avec le jeu d'instructions System/360 . Dans les machines ultérieures, le jeu d'instructions de niveau inférieur était une version étendue du jeu d'instructions PowerPC , qui a évolué à partir de la machine RISC de John Cocke. La plate-forme matérielle dédiée a été remplacée en 2008 par la plate-forme IBM Power Systems exécutant le système d'exploitation IBM i .

Outre le System/38 et l'AS/400, qui ont hérité d'une grande partie de l'architecture FS, des éléments de la technologie Future Systems ont été incorporés dans les parties suivantes de la gamme de produits IBM :

  • l' ordinateur central IBM 3081 , qui était essentiellement l'émulateur System/370 conçu à Poughkeepsie, mais avec le microcode FS supprimé
  • l' imprimante laser 3800 , et quelques machines qui conduiraient au terminal IBM 3279 et au GDDM
  • la bibliothèque automatique de bandes magnétiques IBM 3850
  • l' ordinateur de milieu de gamme IBM 8100 , qui était basé sur un processeur appelé Universal Controller , qui avait été conçu pour le traitement d'entrée/sortie FS
  • améliorations du réseau concernant VTAM et NCP

Sources

  • Pugh, Emerson W. (1995). Construire IBM : façonner une industrie et sa technologie . Presse MIT. ISBN 0-262-16147-8.
  • Pugh, Emerson W. ; et al. (1991). Systèmes 360 et premiers 370 d'IBM . Presse MIT. ISBN 0-262-16123-0.

Les références

Liens externes