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).[1] Többfeladatos rendszer is készült a CP/M alapján, az volt MP/M.
Két változata is létezett a CP/M rövidítés kifejtésére: Control Program/Monitor vagy a Control 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 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,[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 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.[4] A joker karakter illesztő algoritmus, amelyet a Windows parancssor is használ, CP/M-en alapult,[5] továbbá szintén ilyenek a fenntartott fájlnevek a kimenet átirányítására a nyomtatóra ("PRN"), ill. a konzolra ("CON").[6] 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.[7]