CP/M

02-06-2023

Перейти к: навигация, поиск
CP/M

Скриншот CP/M, Apple II
Разработчик

Гэри Килдалл

Семейство ОС

CP/M

Последняя версия

3.1 (1983)

Тип ядра

Монолитное

Лицензия

BSD-like

Состояние

Историческое

Веб-сайт

digitalresearch.biz/CPM.…

Викискладе

CP/M (Control Program/Monitor либо Control Programs for Microcomputers) — операционная система, первоначально предназначенная для 8-разрядных микрокомпьютеров. Написана в 1973 году программистом Гэри Килдаллом (Gary Kildall) на языке программирования PL/M (Programming Language for Microcomputers).

Реализации

CP/M — это первая «универсальная» операционная система для микрокомпьютеров, в которой были предусмотрены операции с дисковыми магнитными накопителями. Поначалу эта операционная система применялась только в компьютерах, которые использовали микропроцессоры Intel 8080. Позднее она была адаптирована под микропроцессор Zilog Z80. Позже появились версии CP/M для новых более совершенных микропроцессоров Motorola 68000 (CP/M-68k), а также Intel 8088, Intel 8086 (CP/M-86). В компьютерах семейства Apple II, построенных на базе процессора MOS Technology 6502, пошли по противоположному пути адаптации и разработали специальную плату расширения «Softcard» с дополнительным процессором Z80 для запуска системы CP/M и программ для неё.

Аппаратная модель

Минимальная конфигурация 8-разрядной системы, для которой подходила CP/M, содержит следующие компоненты:

  • Процессор Intel 8080 или отечественный КР580ВМ80А и совместимые с ним (например, Intel 8085 или Zilog Z80)
  • Терминал, использующий кодировку ASCII
  • ОЗУ объёмом от 16 Кб
  • Минимальный загрузчик в ПЗУ
  • Один или больше приводов гибких дисков

История

CP/M и MS-DOS

К середине 1970-х годов CP/M была наиболее популярной системой для компьютеров на базе Intel 8080 и Zilog Z80.

В 1980 году компания IBM начала поиск подходящей операционной системы для персонального компьютера IBM PC. Первоначально планировалось использовать для него именно CP/M. Проводились переговоры с компанией Digital Research, принадлежавшей Г. Килдаллу и его жене. Однако сделка не состоялась, и IBM заключила договор с небольшой фирмой Microsoft (мать владельца которой — Билла Гейтса — была председателем исполнительного комитета в United Way International, вместе сразу с двумя очень влиятельными руководителями IBM Джоном Опелем и Джоном Эйкерсом (Джон Опель, президент с 1981 г., затем Джон Эйкерс, президент с 1985 г.). Microsoft не имела собственной ОС для процессоров Intel 8086, поэтому лицензировала у компании Seattle Computer Products систему 86-DOS, которая являлась 16-битным клоном CP/M.

CP/M с реализованной многозадачностью получила название MP/M.

Права на CP/M

В 1988 году Digital Research на основе CP/M выпустила для x86 MS-DOS-совместимую ОС DR-DOS; в 1990 и 1991 были выпущены две последующие версии.

В 1991 Novell купила Digital Research вместе с правами на интеллектуальную собственность после чего вышла перелицованная Novell DOS. В 1996 году Novell продала права на DR-DOS компании Caldera, которая планировала использовать систему DR-DOS (модифицированную версию CP/M) в собственном программном обеспечении. Примерно в то же время создатель неофициального сайта поклонников CP/M Тим Олстед получил разрешение Caldera на использование исходного кода системы в некоммерческих целях.

11 сентября 2001 года Тим Олстед скончался от рака. Согласно его завещанию сайт поклонников CP/M (cpm.z80.de) был закрыт. Дело в том, что Олстед заключил личное соглашение с Caldera, и оставалось неясным, насколько легально будет опубликовать исходный код CP/M после его смерти. Тем временем, на базе подразделения по разработке «тонких клиентов» компании Caldera была создана компания Lineo, которая унаследовала все права на CP/M и DR-DOS.

Сайт активистов ОС CP/M не работал несколько недель. 19 октября 2001 года компания Lineo отменила личную лицензию Олстеда, отправив владельцу сайта любителей ОС Гэби Чодри уведомление о том, что владельцы и посетители сайта получают право на распространение и изменение исходного кода CP/M в некоммерческих целях. Таким образом, CP/M теперь отвечает стандартам открытого программного обеспечения, так как каждый может изменять и распространять систему согласно собственным интересам (но не отвечает стандартам свободного программного обеспечения).

Советские клоны

В СССР была произведена неофициальная адаптация (и русификация) системы CP/M для работы на советских компьютерах. Полученная ОС получила названия МикроДОС и М86 которые использовались на различных советских компьютерных системах. Эта система была несколько расширена по сравнению с оригиналом (API содержало большее количество системных процедур).

Архитектура ОС

Основная часть CP/M хранится на диске. Операционная система позволяет пользоваться экраном, принтером и дисками. Небольшая часть операционной системы (загрузчик) должна содержаться в ПЗУ (или на диске или дискете) и осуществляет загрузку остальной части с диска.

Загружаемая в память часть ОС состоит из трёх частей:

  • базовая система ввода-вывода (BIOS)
  • базовая дисковая операционная система (BDOS)
  • процессор командной строки (CCP)

Первая часть представляет собой набор низкоуровневых процедур, реализующих аппаратно-зависимый API системы. Фактически свой BIOS писался под каждое устройство, на которое портировалась CP/M.

BDOS является аппаратно-независимым кодом, который легко переносился между компьютерами построенными на совместимых процессорах (i8080, Z80). Эта часть системы обеспечивала API для использования программами, работавшими в рамках CP/M, а также интерактивное взаимодействие с пользователем. Обычно общий объём системы для версий 2.2 и ниже составлял десятки килобайт кода.

CCP представлял собой интерпретатор командной строки и осуществлял зaпуск пользовательских приложений. При работе приложение могло использовать область памяти CCP, CP/M перезапускала CCP по выходу из приложения.

Примечания

Литература

  • Уэйт М., Ангермейер Дж. Операционная система CP/M = CP/M bible: the authorative reference guide to CP/M. — Радио и связь, 1986. — 312 с.

Ссылки

  • Сайт поклонников CP/M (англ.)
  • CP/M Main Page (англ.)
  • От CP/M до MS-DOS

CP/M.

© 2011–2023 stamp-i-k.ru, Россия, Барнаул, ул. Анатолия 32, +7 (3852) 15-49-47