Cytat:
|
... zarządzanie pamięcią raczej robi kernel bo to jest QNX, nie znam jego dobrze, ale tak mi się wydaje ...
|
Zwrot "mi się wydaje" jest tu kluczowy...
Goście nie mogą oglądać obrazków w postach. Zarejestruj się klikając tutaj aby uzyskać pełen dostęp do forum.
Pakiet CIP (381) to KOMPLETNY system operacyjny Sync3. Po zainstalowaniu ZASTĘPUJĄCY CAŁKOWICIE system jaki był poprzednio. Zawiera wszytko - bootloader (z procedurą identyfikacji hardware), swój kernel i całość narzędzi systemu. Wszytko w jednym pakiecie.
Po to Sync3 ma 2 partycje systemowe po 1GB, że przy instalacji pakietu 381 ogrywany jest on na partycji nieaktywnej. Na koniec aktualizacji zmieniana jest flaga partycji aktywnej na tę nowo ograną i przy następnym reboocie system "wstaje" z tego co zostało przed chwilą zainstalowane.
Wszystkie inne pakiety (langpack 391, gracenote 423, mapa 421, langpack mapy 422) przechowywywane są jako obrazy dysków wirtualnych na dużej partycji - trzeciej, zrealizowanej jako partycja logiczna na partycji extended - przeznaczonej do przechowywania "pakietów funkcjonalnych" Sync3.
Jest jeszcze czwarta partycja - mała, 1GB, także zrealizowana jako partycja logiczna na partycji extended) przeznaczona do przechowywania logów systemu i informacji "dynamicznych". Ta ostatnia partycja jest jedyną partycją RW. Wszytkie inne nie są zmieniane przez Sync3 (poza procesem aktualizacji, który wykorzystuje partycję IMG jako bufor do kopiowania aktualizacji z USB i dalszego jej przetworzenia).
Obraz partycjonowania flash Sync3 dopełnia jeszcze ok. 20MB obszar RAW w partycji extended poza granicą partycji logów. W tym obszarze RAW przechowywane są informacje konfiguracyjne (m.in. ESN Sync3). Tak to dziwnie zostało zaprojektowane.
W ramach różnych wersji Sync3 (8GB, 16GB, 32GB, 64GB) jedynie partycja IMG na "pakiety funkcjonalne" ma różny rozmiar. Pozostałe 3 partycje i obszar RAW mają zawsze taki sam rozmiar.