Incompatible Timesharing System

Incompatible Timesharing System
Page d'aide sur l'homonymie Pour les articles homonymes, voir ITS.

Incompatible Timesharing System (en français, « Système n'utilisant pas le temps partagé »), abrégé ITS et nommé par opposition à CTSS (« Compatible Time Sharing System »), est un des premiers système d'exploitation à temps partagé.

Il a été développé pendant les années 1960, en grande partie dans le laboratoire d'intelligence artificielle du MIT (en) avec l’aide du Project MAC (en), par une communauté hacker alors naissante[1], qui désapprouvait l’orientation trop restrictive prise par CTSS ; le nom est un détournement de celui de CTSS, comme plus tard celui d’Unix sera un détournement de Multics.

Écrit en assembleur pour des machines PDP-6, puis PDP-10, son développement s’estompa largement à partir de 1982 quand les efforts de développement se portèrent vers d’autres machines.

La dernière machine utilisant ITS fut arrêtée en mai 1990 au laboratoire du MIT.

Sommaire

Historique

Le développement de ITS débute à la fin des années 1960 quand la majorité des membres du MIT AI Lab (le laboratoire d’intelligence artificiel du MIT) se trouve en désaccord avec l’orientation prise par le Multics du projet MAC, initié depuis 1964, et notamment concernant l’inclusion d’un système de sécurité des données. Le nom, choisi par Tom Knight (en), est un hack de CTSS, développé au MIT au début des années 1960.

ITS est d’abord écrit en assembleur pour DEC PDP-6. Il sera plus tard porté sur PDP-10 où il sera très utilisé et amélioré. l’activité autour de ITS se réduit considérablement après 1982. Le MIT utilisera ITS jusqu’en 1990. Le Stacken Computer Club, en Suède, sera le dernier à l’utiliser en 1995. Il existe encore quelques ITS fonctionnels pour des raisons historiques mais fonctionnant sur des PDP-10 virtualisés.[réf. nécessaire]

Fonctionnalités

ITS introduisit de nouvelles fonctionnalités, qui seront reprises par d’autres OS plus tard, dont :

  • l’affichage sur le terminal est indépendant du matériel : les programmes génèrent des commandes de contrôle d’écran que le système traduit automatiquement en séquence de caractère que le terminal utilisé sait afficher.
  • Un mécanisme de périphérique virtuel (en) pour les processus utilisateurs (appelé « jobs » sur ITS).
    • Ces périphériques virtuels fonctionnent aussi pour éditer des fichiers en réseaux comme s’il étaient locaux (comme dans un système de fichiers distribué). Les machine sur lesquels était développé ITS étaient connectés à l’ARPANET.
  • Une gestion avancée de processus : les processus utilisateurs sont classés dans un arbre géré par un processus superviseur. Les processus inférieurs peuvent être gelés (« frozen ») à n’importe quel moment et en préservant son état (y compris l’état des registres) ; le processus peut ainsi être relancé plus tard comme si de rien n’était.
  • Des mécanismes d’interruptions permettant une gestion asynchrone des processus.
    • PCLSRing (en), un mécanisme, qui sera repris dans Unix, d’atomicité rendant les appels systèmes interruptibles. Un processus peut ainsi observer n’importe quel autre processus (y compris lui-même) même plein milieu d’un appel système.
  • Pour pouvoir être utilisable par le département de robotique du AI Lab, ITS supporte aussi bien le temps réel et le temps partagé.

Environnement de l'utilisateur

L’interface utilisateur est très différente de celle proposée par les autres systèmes de la même époque :

  • À l’origine, il n’y avait pas de mot de passe, et l’on n’est pas obligé de se loguer. L’identification est considéré comme un acte courtois qui permet de savoir qui est connecté à la machine.
  • Pour se prémunir des manipulations cherchant à faire crasher le système, une commande exécutable par tous permet de crasher la machine, rendant le défi beaucoup moins drôle. De plus, cette commande envoie à toutes les personnes connectées le nom de la personne qui l’a exécutée.
  • Tous les fichiers sont modifiables par tous.
  • Les utilisateurs peuvent discuter, grâce un système de messagerie instantanée, avec les autres terminaux. La commande « SHOUT » permet de demander de l’aide aux utilisateurs connectés.
  • N’importe quel utilisateur peut voir l’affichage d’autre terminal grâce à la commande « OS » (pour « Output Spy »). La personne ainsi espionnée peut détecter celle qui l’espionne grâce à la commande « JEDGAR » (prononcé « JED-GAR »), en référence au directeur du FBI J. Edgar Hoover. Il peut aussi tuer le processus sur la machine luser (contraction de « user » et « looser ») espion ; mais cette fonctionnalité fut « désactivée » par la suite : JEDGAR confirmait avoir tué le processus bien que ce n’était pas le cas[2].
  • Les « touristes » (les personnes invités dans le laboratoire d’IA du MIT ou sur le réseau ARPAnet) sont autorisées. Plus tard, une politique sur l’accès des touristes fut publiée[3]. L’appellation « TURIST » provient d’une limitation du système de fichier à six caractères, lui même une conséquence de l’encodage sixbit d’un mot de 36-bit, standard du PDP-10.

Par défaut, le langage de plus haut niveau de l'interface en ligne de commande est le langage de débogage du PDP-10, le Dynamic debugging technique (en) (DDT).

L'éditeur de texte le plus courant était TECO (« Text Editor and Corrector ») avant d'être supplanté par Emacs, lui-même issu de TECO.

DDT et TECO utilisaient une table de distribution (en) basé sur des commandes d'une seule lettre ; ils n'avaient pas réellement de syntaxe (en) propre.

Le Jargon File est née d'un travail commun entre les utilisateurs de ITS au MIT et au Stanford Artificial Intelligence Laboratory.

Applications développées pour ITS

Emacs (« Editor MACroS ») était à l’origine une collection de programmes TECO, appelés « macros » ; il fut ensuite ré-écrit pour d’autres systèmes : en C pour Unix, en ZetaLisp pour système d’exploitation en lisp développé au MIT (« Lisp Machine operating system »).

La commande d’aide système info fit d’abord parti de Emacs avant d’être ré-écrite sous la forme d’un programme à part entière pour les Unix-like.

Macsyma (en) (précurseur de Mathematica et Maple) introduit une modélisation des langages algébriques.

SHRDLU a été développé sur ITS.

Plusieurs langages de programmation ont été créés sur ITS : MacLisp (le précurseur de ZetaLisp et Common Lisp), Microplanner (en) (implémenté dans MacLisp), MDL programming language (en) (qui sera la base de l’environnement de programmation de la société Infocom), Scheme.

Développeurs

Notes et références

  1. «Richard Stallman et la révolution du logiciel libre - Une biographie autorisée, 2010».
  2. (en) The Jargon File, « OS and JEDGAR », 4.4.7, 29 décembre 2003. Consulté le 22 février 2010
  3. (en) MIT AI Lab Tourist Policy, 15 janvier 1997. Consulté le 22 février 2010

(en) Cet article est partiellement ou en totalité issu de l’article en anglais intitulé « Incompatible Timesharing System » (voir la liste des auteurs)

Bibliographie

  • (en) Donald E. Eastlake, ITS Reference Manual, Version 1.5, MIT AI Laboratory, juillet 1969 (1re éd. 1968), [PDF], 180 p. [lire en ligne (page consultée le 15 mars 2010)]
    la première documentation disponible
     
  • (en) Donald E. Eastlake, ITS Status Report, MIT AI Laboratory, avril 1972, [PDF], 68 p. [lire en ligne (page consultée le 15 mars 2010)]
    une documentation sur une version un peu plus tardive
     
  • (en) Alan Bawden, « PCLSRing: Keeping Process State Modular », dans Technical report, MIT, 1989 [texte intégral (page consultée le 15 mars 2010)] 
  • (en) Yuwei Lin, « Epistemologically Multiple Actor-Centered Systems: or, EMACS At Work: History shows how communal sharing and problem-solving strengthen software functionality and innovation. », dans Ubiquity, Association for Computing Machinery, vol. 5, no 1, 24 février 2004 [texte intégral (page consultée le 15 mars 2010)] 
  • (en) Stefanie Chiou, Craig Music, Kara Sprague et Rebekah Wahba, « A Marriage of Convenience: The Founding of the MIT Artificial Intelligence Laboratory », dans AI Lab, MIT, vol. 5, no 1, 16 décembre 2001 [texte intégral [PDF] (page consultée le 15 mars 2010)] 
  • (en) Sam Williams, Free as in Freedom: Richard Stallman's Crusade for Free Software, Petaluma, CA, O'Reilly, mars 2002, 240 p. (ISBN 978-0596002879) (OCLC 49044520) [lire en ligne (page consultée le 15 mars 2010)] 

Annexes

Liens externes



Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Incompatible Timesharing System de Wikipédia en français (auteurs)

Игры ⚽ Нужно решить контрольную?

Regardez d'autres dictionnaires:

  • Incompatible Timesharing System — Infobox OS name = Incompatible Timesharing System caption = developer = MIT Artificial Intelligence Laboratory and Project MAC source model = kernel type = supported platforms = PDP 6, PDP 10 ui = family = released = latest release version =… …   Wikipedia

  • Incompatible Timesharing System — Existen desacuerdos sobre la neutralidad en el punto de vista de la versión actual de este artículo o sección. En la página de discusión puedes consultar el debate al respecto. Incompatible Timesharing System o ITS (en español sistema de tiempo… …   Wikipedia Español

  • Incompatible Timesharing System — ITS, Incompatible Timesharing System (Sistema de Tiempo compartido Incompatible), fue uno de los primeros, revolucionario, e influyente sistema operativo de tiempo compartido desarrollado en el MIT; se desarrolló de principalmente en el… …   Enciclopedia Universal

  • Incompatible Timesharing System — Das Incompatible Timesharing System (ITS) ist ein von den Hackern am Labor für Künstliche Intelligenz des MIT geschriebenes freies Betriebssystem für die Rechner der PDP 10 Serie von DEC. Der Name ist ein Wortspiel auf CTSS. ITS wurde auf dem… …   Deutsch Wikipedia

  • Compatible Time-Sharing System — Para otros usos de este término, véase Compatible Time Sharing System (desambiguación). Este artículo se refierel al proyecto del MIT MAC operating system. CTSS También puede referirse a Cray Time Sharing System, un sistema diferente desarrollado …   Wikipedia Español

  • Compatible Time-Sharing System — This article is about the MIT Computation Center operating system. CTSS may also stand for the Cray Time Sharing System, a separate system developed for Cray supercomputers. Compatible Time Sharing System Company / developer MIT s… …   Wikipedia

  • Compatible Time Sharing System — Cet article concerne le système d exploitation du Projet MAC au MIT. Pour un système distinct développé pour les superordinateurs Cray, voir Cray Time Sharing System. Pour celui développé pour les ordinateurs centraux IBM, voir Cambridge Time… …   Wikipédia en Français

  • ITS — Incompatible Timesharing System …   Enciclopedia Universal

  • List of programmers — This list is incomplete; you can help by expanding it. This is a list of programmers notable for their contributions to software, either as original author or architect, or for later additions. Contents: A B C D E F G H I J K L M N …   Wikipedia

  • Liste der Betriebssysteme — Inhaltsverzeichnis 1 DOS und Windows 1.1 DOS auf x86 Basis (DOS für IBM PC Kompatible) 1.1.1 Netzwerkserversysteme für DOS Programme 1.2 Windows Systeme von Microsoft 1.2.1 …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”