ACP/M egyoperációs rendszer, melyet azIntel 8080mikroprocesszorokra alapozott mikroszámítógépekhez dolgozott kiGary Kildall aDigital Research Inc.-ben. Kezdetben 8 bitesIntel 8080processzorokon futott az egy feladatos rendszer (nincs párhuzamos programfutás), és max. 64kilobyte memóriát használt, később készíttek 16 bites 8086/8088 processzorokon futó verziót is (CP/M-86).[1] Többfeladatos rendszer is készült a CP/M alapján, az voltMP/M.
Két változata is létezett aCP/M rövidítés kifejtésére:Control Program/Monitor vagy aControl Program for Microcomputers.[2]
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 aZilog 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:
- Basic Input/Output System vagyBIOS,
- Basic Disk Operating System vagy BDOS,
- Console Command Processor vagy CCP.
A BIOS és a BDOS memóriarezidensek,[3] 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 aCALL 5
utasítással érhetjük el.)
Továbbá nagyszámú tranziens parancsot biztosítottak a szabványos feladatokhoz. A tranziens (külső) parancsokfájlban helyezkednek el a lemezen .COMfájlkiterjesztéssel.
Kimutathatóan számos viselkedését örököltek aMicrosoft Windows modern verziói a CP/M-től, mivel visszafelé kompatibilisek voltak azMS-DOS-sal, amely megpróbált némi visszafelé kompatibilitást nyújtani a CP/M-mel. A8.3-as fájlnév, amely sztenderd azMS-DOS-ban ésWindows 3.x-ban, eredetileg a CP/M sajátja volt.[4] Ajoker karakter illesztőalgoritmus, amelyet a Windowsparancssor is használ, CP/M-en alapult,[5] továbbá szintén ilyenek a fenntartott fájlnevek a kimenetátirányítására anyomtatóra ("PRN"), ill. akonzolra ("CON").[6] Továbbá aszövegfájl végét jelző "^Z" karakter és acopy parancs működése szintén visszavezethető a CP/M-re.[7]