CP/M

Z Multimediaexpo.cz

< CP

CP/M je operační systém, který se používal v době osmibitových počítačů. V této době byly nejrozšířenější počítače s procesory I8080 a Z80, které byly mezi sebou kompatibilní (Z80 byl v podstatě rozšířený I8080, takže jejich instrukční soubor byl přibližně stejný). Existovalo několik nekompatibilních architektur počítačů (Sinclair ZX Spectrum, Sharp, Atari, Amstrad-Schneider), kdy každá architektura měla jinak ovládaný hardware (klávesnice, joysticky, videopaměť), jinou organizaci paměti (umístění pamětí RAM a ROM v adresovatelném rozsahu procesoru, připojování paměti většího rozsahu než je adresovatelný rozsah procesoru a podobně) a nekompatibilní periférie. Nekompatibilita periférií nebyla jenom mezi různými architekturami, ale i v rámci jedné architektury. Např. pro počítač Sinclair ZX Spectrum existuje několik různých disketových systému (Betadisk, Disciple, +D, Opus Discovery, Wafadrive, systém použitý v počítačích ZX Spectrum +3, Didaktik 40/80, Dataputer, Timex, Kempston disk interface, Byte Drive 500, …). Operační systém CP/M pak umožňoval psát programy použitelné na různých architekturách a ve spojení s různými perifériemi. Samozřejmě existovaly i jiné procesory např. MOS Technology 6510 použitý v Commodore C64. Pro tyto procesory operační systém CP/M neexistoval, proto Commodore C128 obsahoval 2 procesory: MOS Technology 8502 (novější verze procesoru 6510, pro režimy C64 a C128) a Z80 (pro režim CP/M). Pro počítače Apple II, který byl založen na procesoru MOS Technology 6502, existovala speciální karta pro provoz operačního systému CP/M s procesorem Z80.

Obsah

Požadavky operačního systému

Operační systém CP/M požaduje paměť RAM už od adresy 0000. Počítače, které nebyly navrženy pro spouštění operačního systému CP/M měly většinou v těchto místech paměť ROM a tak byly nutné úpravy. Pro textový výstup bylo požadováno 80 znaků na řádku. U počítačů, které měly standardně jenom 40 znaků na řádku, se toto řešilo vlastními ovladači umožňující zobrazovat písmo s poloviční šířkou znaků. Zvláštní řešení bylo použito u CP/M pro Sinclair ZX Spectrum +3. Jelikož počítače ZX Spectrum měly pouze 32 znaků na řádek, bylo u ZX Spectra +3 možné využít jeho obou videoram. Pomocí první videoram se zobrazovaly znaky 1 - 64, pomocí druhé videoram se zobrazovaly znaky 16 - 80. Protože takovéto řešení omezovalo čtení souvislého textu, nebylo aktivováno automaticky, ale pomocí příkazu. Klávesami pak bylo možné přepínat mezi částmi obrazovky.

Struktura operačního systému

Paměťová média

Operační systém CP/M umí obsloužit až 16 připojených externích paměťových jednotek (disketové jednotky, pevné disky, RAM disky). Jednotky byly označeny písmeny A: až P:. Média měla pouze kořenový adresář. Aby byla možná jistá strukturovanost uložených dat, bylo možné data ukládat pod čísly uživatelů 0 - 15 (jako by na jednom médiu existovalo 16 kořenových adresářů a v každém byly uloženy jiné soubory). Bylo možné používat média až do velikosti 32 MB, přičemž velikost souboru mohla být až 16 MB (verze CP/M pro Sinclair ZX Spectrum +3 mohla používat média až do velikosti 16 MB, přičemž velikost souboru mohla být až 8 MB), což v té době znamenalo ještě dostatečnou rezervu, neboť kapacita disket byla obvykle 360 nebo 720 kB (dvojitá hustota, double density, DD), resp. 1,2 nebo 1,4 MB při použití záznamu o vysoké hustotě (High Density - HD). Existovala i verze CP/M pracující se ZX Microdrive.

Programy