| CP/M | |
| Egy képernyőmentés a CP/M-86-ról. | |
| Fejlesztő | Digital Research, Inc. / Gary Kildall |
| Forráskód | nyílt |
| Programozási nyelv | PL/M |
| Stabil verzió | 3.1 (1982) |
| Kernel | monolitikus |
| Felhasználói felület | Parancssoros felhasználói felület |
| Elérhető | Assembler, BASIC, Modula-2, Pascal etc. |
| Licenc | Eredetileg zárt forráskódú, jelenleg a BSD operációs rendszerre hasonlít |
| Státusz | történelmi /elavult/ |
| Weboldal | http://www.cpm.z80.de/ |
A CP/M egy operációs rendszer, melyet az Intel 8080 mikroprocesszorokra alapozott mikroszámítógépekhez dolgozott ki Gary Kildall a Digital Research Inc.-ben. Kezdetben 8 bites Intel 8080 processzorokon futott az egy feladatos rendszer (nincs párhuzamos programfutás), és max. 64 kilobyte memóriát használt, később készíttek 16 bites 8086/8088 processzorokon futó verziót is (CP/M-86). A CP/M alapján többfeladatos rendszer is készült, az MP/M.
Két változat is létezett a CP/M rövidítés kifejtésére: Control Program/Monitor vagy a Control Program for Microcomputers.
Minimális 8 bites CP/M rendszer a következő komponenseket tartalmazta:
Az egyetlen hardverrendszer, amelyet a Digital Research kereskedelmi forgalomba hozott a CP/M volt, amely támogatást nyújtott az Intel 8080 fejlesztői rendszerhez is. A CP/M operációs rendszerrel kompatibilis rendszerek gyártói a saját maguk által összeszerelt gépeket forgalmaztak. Ezek tartalmazták a memóriát, lemezmeghajtókat és egyéb bővítő eszközöket.
A CP/M-80 képes futni a Zilog Z80 processzoron alapuló rendszereken is, mivel a Z80 felülről kompatibilis a 8080-nal, azonban nem minden CP/M használja ki a Z80-as processzornál rendelkezésre álló speciális utasításokat.
A 8 bites változatban futás közben a memóriában betöltődött CP/M operációs rendszernek három komponense van:
A BIOS és a BDOS memóriarezidensek, míg a CCP-t az alkalmazások felülírhatják, ebben az esetben a BDOS ismételten betölti a CCP-t az alkalmazás lefutása után. Ezek a komponensek a memória 'tetején' (magas címein) helyezkezdnek el, a felhasználói program pedig a 0100H címre töltődik. (Az első 256 byte adatterületeknek és belépési pontoknak van fenntartva, a BDOS szolgáltatásait például a CALL 5 utasítással érhetjük el.)
Továbbá nagyszámú tranziens parancsot biztosítottak a szabványos feladatokhoz. A tranziens (külső) parancsok fájlban helyezkednek el a lemezen .COM fájlkiterjesztéssel.
Kimutathatóan számos viselkedését örököltek a Microsoft Windows modern verziói a CP/M-től, mivel visszafelé kompatibilisek voltak az MS-DOS-sal, amely megpróbált némi visszafelé kompatibilitást nyújtani a CP/M-mel. A 8.3-as fájlnév, amely sztenderd az MS-DOS-ban és Windows 3.x-ban, eredetileg a CP/M sajátja volt. A joker karakter illesztő algoritmus, amelyet a Windows parancssor is használ, CP/M-en alapult, továbbá szintén ilyenek a fenntartott fájlnevek a kimenet átirányítására a nyomtatóra ("PRN"), ill. a konzolra ("CON"). Továbbá a szövegfájl végét jelző "^Z" karakter és a copy parancs működése szintén visszavezethető a CP/M-re.