SymbOS | |
---|---|
Fejlesztő | Szimbiózis |
legújabb verzió | 3.1 ( 2021. december 30. ) |
Kernel típusa | mikrokernel |
Állapot | a fejlesztő karbantartja |
Weboldal | symbos.de |
Médiafájlok a Wikimedia Commons oldalon |
A SymbOS egy Z80 mikroprocesszoron alapuló, szabadon terjesztett többfeladatos operációs rendszer 8 bites fogyasztói számítógépekhez . Jelenleg a rendszernek vannak verziói az Amstrad CPC , Amstrad PCW családokhoz és az MSX2 szabványú számítógépekhez . A rendszer ezen számítógépek eredeti, nem módosított modelljein is futhat. A korai 8 bites operációs rendszerekkel ellentétben ez egy mikrokernelen alapszik, amely preemptív multitaskingot és akár 1024 KB RAM -ot tesz lehetővé . A SymbOS Windows - szerű grafikus felhasználói felülettel rendelkezik, támogatja a merevlemezeket 128 GB -ig .
Bár a Z80 egy 8 bites processzor, képes egy operációs rendszer futtatására megelőző többfeladatos kezeléssel. A Z80 olyan funkcióinak hiánya, mint a hardveres memóriavédelem, lényegtelen egy ilyen típusú operációs rendszer esetében. Például az AmigaOS -ből sem hiányzik a memóriavédelem. A többfeladatos rendszer megvalósításának képességét a Z80 processzorhoz korábban az MP / M OS bizonyította , de ez nem volt elérhető fogyasztói számítógépeken.
Ellentétben a MOS Technology 6502 mikroprocesszorral , amelynek verem mindig egy bizonyos memóriaterületen található, és nem mozgatható, a Z80 lehetővé teszi a verem pozíciójának szabad megváltoztatását a memóriában, amely többé-kevésbé szükséges a megelőző használathoz. többfeladatos. Egy alternatív regiszterkészlet jelenléte jelentősen megnövelheti a feladatok közötti kontextusváltás sebességét. A Z80 címtartomány 64 KB-os korlátja bankváltási technikákkal áthidalható . Így az olyan számítógépek, mint az Amstrad CPC és PCW , MSX , Enterprise vagy SAM Coupé több száz vagy több ezer kilobájt memóriát képesek kezelni.
A SymbOS egy mikrokernellel rendelkezik, amely megvalósítja az operációs rendszer alapvető funkcióit. Ezek a funkciók feladatkezelésre, memóriakezelésre, memóriabank-kezelésre és üzenetrendszerre oszthatók.
A feladatkezeléshez a preemptív és kooperatív multitasking kombinációját választották, amely lehetővé teszi a különböző feladatok prioritási rendszerének megvalósítását. A megelőző multitasking azt jelenti, hogy a feladatokat az operációs rendszer megszakíthatja egy bizonyos idő elteltével, hogy a CPU-időt más feladatokhoz rendelje. A kooperatív multitasking azt jelenti, hogy egy feladat önmagában leállítja a CPU használatát. Ez akkor fordul elő, ha a feladat befejezte az aktuális munkát, vagy üzenetre vár. Ez a kombináció lehetővé teszi a rangsorolást. Az alacsony prioritású feladatok csak akkor kapnak processzoridőt, amikor minden magasabb prioritású feladat tétlen.
A memóriakezelő a RAM teljes mennyiségét kis, 256 bájtos blokkokra osztja, amelyek dinamikusan hozzárendelhetők. Az alkalmazások mindig a 64 KB RAM második bankjában futnak, amelyet maga az operációs rendszer vagy a videomemória nem használ. Ez lehetővé teszi akár 63 KB méretű, egymás melletti memóriablokkok lefoglalását.
A bankfelügyeleti rendszer lehetővé teszi az operációs rendszer számára a fél megabájtnál nagyobb memória kezelését, annak ellenére, hogy a Z80 processzor címtere 16 bites címbuszra korlátozódik. A bankok átlátható hozzáférést biztosítanak a többi lehetséges 64 kilobájtos bankban található memóriához és funkciókhoz.
A különféle feladatok és az operációs rendszer közötti kommunikáció általában "üzenetekkel" történik, nem pedig közvetlen függvényhívásokkal. Többfeladatos környezetben ez azért szükséges, hogy elkerüljük a veremmel, a globális változókkal és a megosztott rendszererőforrásokkal kapcsolatos szervezeti problémákat.
A SymbOS grafikus felhasználói felülete teljesen objektum-orientált. Úgy néz ki és úgy érzi, mint a Microsoft Windows. A jól ismert tálcával, órával és "START" menüvel rendelkezik. Legfeljebb 32 ablak nyitható egyszerre, és mozgatható és átméretezhető. Minden ablak legfeljebb 1000 vezérlőt tartalmazhat. Mivel az egész rendszert teljes egészében assembly nyelven írták, a felület viszonylag gyors, még az olyan modern rendszerekhez képest is, mint az Amiga 's Intuition .
Az ablakok tartalmát vezérlőelemek határozzák meg, amelyek olyan alapvető felületelemek, mint a görgetősávok, választógombok, szövegsorok, gombok vagy grafikák. Az ablakok hátterét vagy láthatatlan területeit nem kell speciális pufferbe menteni. Ha egy területet újra kell rajzolni, akkor annak tartalma teljesen újra lesz rajzolva. Emiatt a SymbOS GUI kevésbé memóriaigényes, mint a legtöbb más 8 bites grafikus felhasználói felület.
A SymbOS minden platformon támogatja a CP/M , AMSDOS , FAT12 , FAT16 és FAT32 fájlrendszereket . FAT32 esetén a rendszer 128 GB-ig képes megcímezni a tárolóeszközöket. Ugyanakkor akár 2 GB méretű fájlokkal is lehet dolgozni, ami szokatlan a 8 bites rendszereknél. A FAT támogatásnak köszönhetően nagyon egyszerű a kommunikáció más számítógépekkel, mivel a legtöbb 32 és 64 bites operációs rendszer támogatja mindhárom felsorolt FAT fájlrendszert.
A SymbOS rendszerhez számos szabványos alkalmazás létezik, amelyek többnyire hasonlítanak a jól ismert Windows és MacOS megfelelőire. Például a SymCommander ( Norton Commander ), a SymPlay ( QuickTime ), a SymAmp ( Winamp ) vagy a Minesweeper játék .
A SymbOS-t eredetileg az Amstrad CPC-hez fejlesztették ki. De a moduláris felépítésnek köszönhetően, az alapvető és a platform-specifikus komponensek egyértelmű elválasztásával a rendszer más Z80-alapú számítógépekre történő portolása nagyon egyszerűen elvégezhető.
Az MSX számítógépek támogatása (az MSX2-vel kezdődően) 2006 nyarán bővült. Lehetőség van Enterprise 128 , Amstrad PCW és SAM Coupe számítógépekre, valamint ZX-Spectrum klónokra, például ATM-turbo 2+ és ZX-Evolution , mivel képességeik megfelelnek a SymbOS követelményeinek.
Az operációs rendszerre vonatkozó alapvető konvenciók szerint a hardver és az alkalmazások világos elkülönítése egy középső rétegen keresztül lehetővé teszi a SymbOS alkalmazások futtatását a számítógép típusától és konfigurációjától függetlenül, és nincs szükség arra, hogy ezeket az alkalmazásokat egy adott hardverplatformhoz igazítsák. . Kivételt képeznek azok az alkalmazások, amelyek közvetlenül hozzáférnek a számítógép hardveréhez.
A SymbOS fejlesztése eredetileg egy kísérlet volt, hogy egy 1985-ös 8 bites számítógépen megvalósítható-e egy grafikus felhasználói felülettel rendelkező multitasking operációs rendszer. A GEOS operációs rendszer létezése is hatással volt, azonban a SymbOS felépítése és képességei nem hasonlítanak ehhez a rendszerhez. A 2006-os kiadás megmutatta, hogy egy ilyen „Windows in miniature” rendszer csak mennyiségi korlátokkal létezhet egy 20 éves otthoni számítógépen. A SymbOS az elmúlt évek egyik legnagyobb retroszámítógépes szoftverprojektje. A projekt egyik célja az volt, hogy (különböző hardverbővítések segítségével) lehetőséget biztosítson a rendszerrel való munkavégzés folyamatának megszervezésére, a modern PC-khez hasonlóan.