Control Program/Monitor
CP/M, sigle de Control Program/Monitor ou /Microcomputer, est un système d'exploitation créé en 1974 par Gary Kildall, fondateur de Digital Research. Il est utilisé notamment sur les Amstrad CPC et Amstrad PCW, Commodore 128, TRS-80, l'Osborne 1, BBC Micro, le ZX Spectrum. Il fut utilisé sur PC, notamment livré en standard avec les Amstrad PC-1512 en plus du MS-DOS et de GEM. Pour l'Apple II, Microsoft a créé en 1980 la carte d'extension Z-80 SoftCard qui permettait l'usage du système d'exploitation de Digital Research. CP/M est largement inspiré de TOPS-10 des systèmes PDP-10[1], alors utilisé par Kildall comme environnement de développement, et qui outre CP/M inspirera également les système OS-8 des PDP/8, RT11 des PDP/11, ainsi que les premières versions de MS-DOS. Les principales commandes telles que DIR ou TYPE, ou encore les extensions telles que .EXE ou .TXT, sont une illustration de la paternité commune de ces systèmes. Organisation de la mémoireLa mémoire d'un ordinateur sous CP/M est divisée en quatre parties :
PériphériquesSous CP/M, les périphériques sont gérés par le BIOS (adaptable par l'utilisateur), sous le contrôle du BDOS. Comme le BIOS peut s'adapter aux différentes besoins, il est possible d'utiliser des lecteurs de disquettes et/ou des disques durs. Les disques sont désignés par une lettre majuscule (A B C ...) avec un maximum de 15. Comme, de nos jours, la capacité des mémoires RAM ou PROM est considérable, il est possible aussi de disposer de disques virtuels en RAM et/ou en PROM. Les fichiers en PROM ne risquent pas d'être modifiés ou détruits par des virus. L'utilitaire STAT permet d'assigner différents périphériques physiques, par exemple l'imprimante, aux périphériques logiques. Les différents types de fichiersCe système d'exploitation, enregistre les fichiers sur disquettes suivant une organisation logique spécifique (qui n'a pas été reprise par MS-DOS), et peut remplir les disquettes jusqu'à ce qu'elles soient complètement remplies. CP/M peut aussi gérer des disques durs (en réalité, comme le BIOS est « ouvert » et décrit clairement dans la documentation que Digital Research fournissait avec certains de ses logiciels, il est donc possible d'adapter tout système particulier CP/M à toute mémoire de masse disponible - et aux périphériques dont on dispose). Certains ordinateurs tournant sous CP/M étaient vendus, à l'origine, avec des disques durs (l'Altos 8000 en est un exemple). Il existe des implémentations pour le micro-processeur Z80 qui ont un systeme de disques formé de carte SD ou de clés USB (au format FAT16). Chaque fichier a un nom et une extension (plus précisément, la syntaxe est : <nom du fichier (8 caractères maximum)>.<extension (3 caractères maximum)>). Parmi les extensions les plus habituelles, on trouve :
Exemples de noms de fichiers : STAT.COM ; dans le cas de « nomdufichier.ASM », le nom du fichier est trop long, puisqu'il y a un maximum de 8 caractères utilisables à cet effet ; donc il faudrait, par exemple, nommer ce fichier « fichier.ASM » ou « fichier1.ASM ». « READ.ME » est un nom de fichier que beaucoup d'éditeurs utilisent (et pas uniquement "dans le monde" CP/M) pour attirer l'attention de l'utilisateur sur des aspects très importants de leurs logiciels... ce sont donc des fichiers à lire avant d'utiliser le logiciel en question. Pour lire le contenu d'un tel fichier on peut, en général utiliser la commande : TYPE READ.ME Les invites de commandes des disquettes sont A> pour le lecteur A et B> pour le lecteur B. Si un fichier ne se trouve pas sur le disque par défaut, il faut taper la lettre du disque auquel on veut accéder, suivie de deux points. Cette convention a été reprise par MS-DOS. Différentes commandes de CP/MLes commandes de CP/M peuvent être « internes » ou « externes » (comme ce fut, par la suite, le cas avec MS-DOS). Sous CP/M, pour l'utilisateur, il n'y a pas de différence entre lancer une commande « interne » (par exemple DIR as*.*), « externe » (par exemple STAT as*.*) ou un programme (par exemple LINK). Sous CP/M, le programme « correct » le plus court n'a besoin que d'un octet (C9 en hexadécimal - l'instruction RETurn) qui fait un retour au Système (ce qui est une sortie « normale » pour un programme CP/M). Par contre, il doit être sauvegardé dans un fichier « exécutable » (donc un « .com ») dont la taille minimum est un secteur (donc 128 octets minimum). Les commandes externes du CP/M ou MP/M appelaient des programmes du même nom qui portaient l'extension .COM ou .PRL (uniquement dans le cas de MP/M). Le MP/M était relativement semblable au CP/M mais était multi-utilisateurs.
Sous CP/M, l'utilisateur peut programmer en utilisant directement le code machine, un assembleur ou un langage de programmation comme le BASIC. Les sources des logiciels écrits par DRI (c'est-à-dire Digital Research) peuvent se trouver sur Internet (voir, par exemple, DRIPAK.zip). LogithèqueCP/M supporte de nombreux traitements de texte comme WordStar, avec, le cas échéant, leurs systèmes de vérification orthographique, des tableurs comme SuperCalc ou des logiciels combinant ces deux fonctionnalités. Parmi les autres logiciels disponibles (que l'on peut toujours trouver dans des sites dédiés et télécharger gratuitement via Internet), il y a aussi dBase II, une base de données relationnelle, très interactive. Par ailleurs, des compilateurs CP/M ont été écrits pour de nombreux langages, par exemple :
Des langages orientés vers l'« intelligence artificielle », comme muMATH (qui est capable de résoudre des équations formelles) ou muSIMP (voir muMATH) peuvent aussi « tourner » sous CP/M. Le cas du langage PL/M est un peu particulier, puisqu'une partie du logiciel correspondant au système d'exploitation CP/M — et à ses utilitaires — a été écrite en PL/M, pour un compilateur qui tournait sous ISIS II. Il est possible, toutefois, d'émuler ISIS II sous CP/M. A son tour, CP/M peut être émulé sous MS-DOS. Le logiciel KERMIT développé par l'Université Columbia, de New York, permet d'échanger des fichiers entre machines tournant sous des systèmes d'exploitation différents (VMS, Unix, Multics, MS-DOS et successeurs). Il en existe de multiples versions (gratuites) pour des machines CP/M et, en particulier, une version générique que l'on peut adapter à sa propre machine. Il en résulte qu'il est possible de transférer puis de stocker dans une machine CP/M (peu exposée à des virus) des fichiers importants. Bibliographie
Références
Lien externe |
Portal di Ensiklopedia Dunia