CP/M(Control Program for Microcomputers、シーピーエム)は1970年代にデジタルリサーチ (Digital Research Inc.) の創業者ゲイリー・キルドールによって開発、1976年[1]に発売された、パソコン用のシングルユーザー・シングルタスクのオペレーティングシステム (OS) である。
最初は8ビットのCPUであるインテルの8080プロセッサ用に作られ、8ビットのパソコン用OSとしては最も代表的な存在だった。初期に普及したバージョンはCP/M 1.4で、そののち改訂されたCP/M 2.2が広く普及した。さらに、より洗練されたCP/M 3.0 (CP/M Plus) が登場したが、既に16ビットマシンへの移行が始まっていた時期でもあり普及することはなかった。
他のプロセッサに移植されたバージョンも存在するが、単にCP/Mといえば8080プロセッサ用のもの(中でもバージョン2.2)を指す。なおマイクロソフトによってOEMされたIBMのPC DOS(及び、のちにマイクロソフト自らが直販したMS-DOS)は、CP/Mをモデルに開発されたシアトル・コンピュータ・プロダクツの86-DOSを前身としている。目次 CP/Mは8080マイクロプロセッサ(およびその上位互換CPU)、0番地から配置されたRAM(最小はCP/M 1.4で16KB)、最低1台の8インチフロッピーディスク装置、シリアル端末(CRTディスプレイとキーボード、あるいはASR-33のようなテレタイプ端末)があれば動作した。オプションとして、プリンタ、紙テープ読取装置・紙テープ穿孔装置、ハードディスク装置をサポートした。一般的には32KB以上、可能なら56KBくらいのRAMがあると、当時としては大規模なコンパイラなどが実行できた。 CP/Mは、シェルであるCCP (Console Command Processor)、OSの本体であるBDOS(ビードス、Basic Disk Operating System)、入出力を処理する下位プログラムの集合体であるBIOS(バイオス、Basic Input and Output System)で構成される[2]。ハードウェア依存部分はBIOSに集中させてあるので、BIOSだけを変更することで大抵のハードウェアに移植可能となっていた。BIOSの機能はシステムの初期化、CCPのリブート(アプリケーション実行の終了とシェルの再起動)、コンソールなどのキャラクタデバイスのリダイレクト付入出力、フロッピーディスク/ハードディスク等の1セクタ単位の入出力だけである。 なお、BIOSという用語は一般化して普通名詞となり、PC/AT互換機の普及以降はROMに記録された低レベル入出力プログラムを指すことが多くなったが、CP/MにおけるBIOSは殆どの場合はディスクからメモリにロードされるものである。 CCPに内蔵されているコマンドをビルトインコマンド (built-in command) といい、次のようなものがある。 これ以外はトランジェントコマンドに委ねている。 フロッピーディスクに実行ファイルとして記録されているコマンドをトランジェントコマンド (transient command)という。次のようなものがある。
1 動作環境
2 構成
3 コマンド
3.1 ビルトインコマンド
3.2 トランジェントコマンド
4 リブートについて
5 歴史
5.1 始まりとCP/Mの全盛期
5.1.1 名称
5.1.2 互換性
5.1.3 アプリケーション
5.1.4 ディスクフォーマット
5.1.5 グラフィック
5.2 マルチユーザー
5.3 CP/M Plus
5.4 16ビット版
5.5 MS-DOSとの競争
5.6 ZCPR
5.7 旧東ヨーロッパの派生版CP/M
6 日本での状況
7 MS-DOSとの比較
8 CP/MとDOSのソースコード比較
9 現状
10 脚注
11 出典
12 参考文献
13 関連項目
14 外部リンク
動作環境
構成
コマンド
ビルトインコマンド
DIR
REN
TYPE
それぞれ、MS-DOSの同名コマンドと同様。
ERA
MS-DOSのDEL (ERASE)に相当。
SAVE
アドレス0100hから、256バイトを1ページとして指定のページ数のメモリイメージをディスクに記録する。
USER
ユーザ切り替え。主に、MP/Mでユーザごとに記録されたファイルを扱うために存在する。CP/M単独ではあまり意味がない。
トランジェントコマンド
STAT
ディスクやファイルのサイズを表示する、ファイルの保護属性を表示・変更する、デバイスのリダイレクト状況を表示・変更する、など様々なシステムの状態を表示・操作する。
Size:90 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)』
担当:undef