[#13]
Re: Jak startuje AmigaOS?
@rjack,
post #12
rjack napisał(a):
> Który schemat jest bliższy, jak go byś zmodyfikował dla
> nietypowego amigowego microkernela?
W zasadzie żaden. Idea mikrokerlena aż ciśnie się na usta (rom to zbiór niezależnych od siebie modułów, inicjalizowanych w trakcie systemu jeden za drugim), jednak AmigaOS nie spełnia wszystkich warunków.
Definicja egzokernela nie pasuje do AmigaOS w pełni choćby z tego powodu, że narodziła się dużo później niż sam amigowy system.
>
http://en.wikipedia.org/wiki/Exokernel (o ile ten
> miałeś na myśli)
tak, ten miałem na myśli.
Amigowy kernel (innymi słowy fragment exec.library) nie zapewnia żadnej abstrakcji ani zarządzania zasobami sprzętowymi. Brak jest ochrony pamięci, a wszystkie procesy pracują na tych samych prawach we wspólnej przestrzeni adresowej (z tego powodu można by je raczej nazwac wątkami). Jeśli jakikolwiek program chce się odwołać bezpośrednio do sprzętu, nie musi o nic prosić kernela. exec.library zapewnia tylko podstawową funkcjonalność (zarządzanie pamięcią, przerwania, multitasking, dostęp do dodatkowych modułów, IPC). Dostęp do urządzeń i dodatkowa funkcjonalność zapewnione są nie przez serwisy (odrębne procesy każdy we własnej przestrzeni adresowej, jak ma to miejsce w przypadku mikrokernela), tylko przez biblioteki (*.library, *.device, *.resource) zachowujące się jak naturalne przedłużenie programu z nich korzystającego.
Którą z definicji (exokernel, microkernel) ty bys uznał za bliższą AmigaOS?