@APC74,
post #4
Zacznijmy od tego, że sandbox to ogólne pojęcie związane z informatyką, natomiast ABox, QBox i Quark to nazwy własne związane ściśle z MorphOS-em.
sandbox - o nim można przeczytać wiele na Wikipedii. Ogólnie rzecz biorąc sandbox to sztuczne środowisko jakie wokół programu stwarza system operacyjny. Najczęściej powodem sandboksowania są względy bezpieczeństwa, często też bywa stosowane do uruchamiania programów ze starszych wersji systemu operacyjnego (np. programy MS-DOS system Windows uruchamia w sandboksie), może być też to po prostu emulacja (WinUAE tworzy sandbox dla uruchamianego systemu Amigi), albo też przenośność programów (sandbox tworzony przez maszynę wirtualną Javy). Cechą charakterystyczną sandboksa jest to, że umieszczone w nim oprogramowanie nie ma bezpośredniego dostępu do sprzętu. Dostęp jest albo tylko poprzez jakieś API, albo system hostujący symuluje wirtualny sprzęt (takie rozwiązanie mamy w przypadku sandboksa tworzonego przez Windows dla aplikacji MS-DOS). Z sandboksami mamy też do czynienia w przypadku wirtualizacji (kilka systemów operacyjnych pracuje jednocześnie na tym samym sprzęcie).
Quark - jest to najniższa warstwa MorphOS-a. Quark jest uruchamiany przez komputer po załadowaniu boot image przez OpenFirmware. Zadaniem Quarka jest inicjalizacja systemu MMU, przerwań, timerów procesora. Quark, jako jedyny pracuje w trybie nadzorcy (supervisor) procesora. Ponieważ cała reszta MorphOS-a pracuje w trybie użytkownika, MorphOS musi odwoływać się do Quarka jeżeli chce mieć dostęp do tego, co wymaga trybu nadzorcy (właśnie przerwania, MMU i timery). Oprócz tego Quark ma szczątkową obsługę procesów, ponieważ w początkowych planach Quark miał być podstawą QBoxa, o którym niżej. Aktualnie jedynym procesem Quarka jest MorphOS.
QBox - w założeniach MorphOS jakiego znamy, miał być formą przejściową. Celem był QBox - nowy system operacyjny, ogólnie tylko oparty o idee AmigaOS-u. System ten miał mieć pełną ochronę pamięci, śledzenie zasobów i tak dalej. Z tego względu system byłby oczywiście niekompatybilny z AmigaOS 3.x (a także z obecnym MorphOS-em). Procesy QBoxa byłyby po prostu procesami Quarka.
ABox - Gdyby QBox stał się faktem, ABox byłby "wirtualną Amigą" dla oprogramowania z AmigaOS 3.x. ABox byłby jednym z procesów Quarka i wtedy QBox tworzyłby dla amigowego oprogramowania sandboksa. Dzięki temu wywalenie się jakiegoś programu 68k nie wpływałoby na pracę QBoxa.
W tej chwili stuacja wygląda tak, że mamy jedynie okrojonego Quarka, ABox i QBox nie istnieją. MorphOS jest procesem Quarka, ale Quark nie tworzy mu sandboksa - wszystkie sterowniki sprzętu w MorphOS-ie mają do niego bezpośredni dostęp, podobnie każda aplikacja ma dostęp do wszystkich zasobów komputera.
Ostatnia modyfikacja: 26.07.2008 13:34:32