Część sprzętowa
Obsługiwane napędy
Przez słowo napęd rozumiem CD, DVD, dyski twarde i wszystkie odmiany – dalej dla wygody nazywane w skrócie „dyski”
Obsługiwane są dyski SCSI, PATA i SATA. Przy czym układ kontrolera musi mieć sterownik pod AmigaOS
Kontrolery
Karty kontrolerów mogą być różnych producentów, podano producenta układu i jego oznaczenie
- PATA: VIA 686B (na płycie A1), Silicon Image SiI0680, ITE Tech IT8212
- SATA: Silicon Image SiI3112, Silicon Image SiI3114, Silicon Image Sil3512
- SCSI: LSI lsi53c8xx
Master i slave
Czyli „pan” i „niewolnik”. Przeważnie napęd master to ten na końcu taśmy sygnałowej, a slave – między kontrolerem a napędem master. Tak naprawdę zależy to od ustawienia zworek, ale podana wskazówka zazwyczaj sprawdza się.
Kontroler IDE obsługuje 4 urządzenia na dwu kanałach (po 2 na kanał). Tak więc pierwszy kanał to primary, drugi to secondary; pierwszy dysk to master, drugi slave. Stąd nazwy dysków typu primary master (pierwszy dysk na pierwszym kanale).
Opisy standardów IDE, ATA, PATA itp daruję sobie – to jest wiedza informatyczna ogólnie dostępna.
.
Część programowa
Dysk dzieli się na mniejsze części zwane partycjami. Każda partycja musi być po utworzeniu sformatowana (czyli „uformowana”), wiąże się to z utratą danych. Można wybrać system zapisu plików o czym niżej.
Tabela z systemami plików
(za boga chińskiego w wordpressie nie dałem rady wyedytować tej tabelki, trzeba kliknąć aby powiększyć obrazek)
Oprócz wyżej wymienionych systemów plików AmigaOS obsługuje także inne – ale nie pozwala utworzyć partycji w tych innych formatach.
Może dziwić że podane są „widełki” czyli maksymalna wielkość partycji zawiera się w zakresie „od – do”. Z czego to się bierze? To zależy od wielkości bloku.
.
Tryby DMA i PIO
Napędy (dyski twarde, DVD) mogą pracować w tych dwu trybach, które dzielą się jeszcze na odmiany, przy czym nowsza zawsze równa się szybsza.
Tryb DMA jest lepszy – szybszy i mniej obciąża procesor. Tryb PIO powinien być używany tylko wtedy gdy jest jakiś problem z obsługą DMA.
Jak określić tryby dla posiadanego przez ciebie napędu -najlepiej programem DevInfos. Ściągniesz go stąd link
Pod IdeTool TransferData masz podane:
Actual Values – aktualną ustawioną wartość
Max.Values – najlepsze możliwe ustawienie dla tego napędu w trybach PIO i DMA
Napędy wybierasz z listwy wyboru na górze po lewej – tam gdzie na obrazku widoczne jest teraz DH1:
Jeżeli nie chcesz ściągać programu możesz użyć narzędzia w systemie o nazwie idetools – jak to zrobić wspominałem o tym tutaj AmigaShell
.
Ustawianie parametrów dysku z poziomu Workbencha
Jeśli twój model AmigaOne ma dostęp do U-boota z poziomu Workbencha to super. Oszczędzi to komplikacji. Odpowiednią ikonkę powinieneś znaleźć w Prefs.
Więcej o U-boocie, w tym pokazany panel U-boota z poziomu Workbencha tutaj => Uboot i start systemu (koniec artykułu)
.
Ustawianie parametrów dysku z poziomu U-boota
Jeśli masz AmigaOne 500 to nie posiada ona (podobnie jak wszystkie konstrukcje oparte na płycie SAM) możliwości wprowadzania ustawień dla U-boot z poziomu Workbencha, i chyba sam U-boot też nie jest rozbudowany.
Pokażę jak to zrobić na przykładzie AmigaOne XE (bo taki komputer mam). W AmigaOne 500 może być inna nazwa sterownika, no i będziesz mieć inne parametry napędów, ale zasady będą takie same.
Musisz dostać się do wiersza poleceń U-boota. Jak już będziesz wpisz 3 linijki potwierdzając każdą klawiszem Enter
U mnie to było:
setenv a1ide_xfer F0E0
setenv a1ide_irq 1010
saveenv
.
Wytłumaczenie składni polecenia:
setenv – to polecenie ustawia zmienna środowiskową
a1ide – to nazwa sterownika bez rozszerzenia .device
xfr – ustawia maksymalny transfer
irq – włącza i wyłącza obsługę IRQ (przerwań) dla danego napędu
saveenv – zapisuje ustawienia
Gdzie to jest zapisywane? AmigaOne XE ma 4 MB NVRAM – tam oprócz U-boota są przechowywane ustawienia właśnie
Oba te parametry – xfr i irq – mają 4 znaki tak jak jest możliwość obsługi przez kontroler dysków dla 4 napędów. Napędy są według kolejności: pierwszy master, pierwszy slave, drugi master, drugi slave.
W przykładzie wyżej
F0E0 – pierwszy master tryb F, pierwszy slave brak, drugi master tryb E, drugi slave brak; czyli UDMA 5 dla dysku i UDMA 4 dla DVD
1010- pierwszy master obsługa irq włączona, pierwszy slave brak, drugi master obsługa irq włączona, drugi slave brak
Skąd brać te literki:
0= Automatyczny | będzie wybrany najlepszy tryb PIO czyli przeważnie PIO 4 |
a = PIO 0 | (3 MB/s, modeid 8) |
b = PIO 1 | (5 MB/s, modeid 9) |
c = PIO 2 | (8 MB/s, modeid 10) |
d = PIO 3 | (11 MB/s, modeid 11) |
e = PIO 4 | (16 MB/s, modeid 12) |
A = UDMA 0 | (16 MB/s, modeid 64) |
B = UDMA 1 | (25 MB/s, modeid 65) |
C = UDMA 2 | (33 MB/s, modeid 66) |
D = UDMA 3 | (44 MB/s, modeid 67) |
E = UDMA 4 | (66 MB/s, modeid 68) |
F = UDMA 5 | (100 MB/s, modeid 69) |
.
Co zrobić gdy po zmianie ustawień jest gorzej?
Jest bardzo niewielka szansa że taki problem wystąpi, bo po to określa się maksymalne transfery żeby ustawić prawidłowe wartości.
Było tak u mnie (ustawiłem UDMA na AmigaOne XE bez fixa IDE). Występowały błędy odczytu i zapisu, a nawet problem z uruchomieniem systemu.
Musiałem przywrócić ustawienia fabryczne U-boota – wtedy transfery ustawione zostaną na Automatyczny czyli PIO 4.
.
Zwiększanie wydajności dysków ze starszymi systemami plików
Służy do tego wtyczka o nazwie fs_plugin_cache i jest dopalaczem dla systemów FFS. Programik znajduje się na dysku systemowym w katalogu C.
Żeby zadziałał trzeba go dodać do skryptu startowego. Ja dopisałem w User-startup linijkę:
run >NIL: SYS:C/fs_plugin_cache DH1: S=8192
co powinno dać cache (pamięć podręczną) dla dysku systemowego (u mnie to DH1:) o wielkości 8192 KB (czyli 8 MB).
Możesz ustawić cache dla każdej partycji dopisując kolejne linijki i stosując inne rozmiary cache, ale weź pod uwagę ze cache jest odejmowany z pamięci RAM. Jeśli masz np. 512 MB RAM i dużo partycji to nie szalej.
W dokumentacji jest opisane jak to ustawić w RDB ale mnie to przerosło.
.
Narzędzia dyskowe
Oprócz wspomnianego wyżej idetool i DevsInfo które są właściwie narzędziami pomocniczymi, musisz poznać dwa programy: Media ToolBox i PartitionWizard.
Media ToolBox służy do podziału dysku na partycje oraz zmiany ich systemów plików i formatowania.
Program znajduje się w katalogu System.
Opisałem go w Instalacja cz.2
PartitionWizard służy do naprawy partycji i odzyskiwania danych
Program znajduje się w katalogu Utilities.
Menu jest po polsku, ale gdy coś się stanie i np. nie będziesz mógł uruchomić systemu – będziesz musiał komputer uruchomić awaryjnie z płyty CD z systemem. A tam program jest w wersji angielskiej – jeśli angielski nie jest twoja mocną stroną warto zapoznać się z programem zanim coś się stanie.
.
Przykładowy przebieg naprawy dysku
Uruchamiasz system z CD i uruchamiasz Partition Wizard (jest w Utilities)
Dysk sprawdzasz pod kątem błędów. Do szukania jest pierwsza ikonka czyli lupa.
.
Wyżej widoczna informacja że znaleziono błąd i system na dysku DH1: jest uszkodzony.
.
Otrzymałem informację o błędzie na dysku i o konieczności walidacji (naprawy). Klikam Cancel.
Do naprawy służy ikonka śrubokręta.
.
Na wstępie otrzymuję informację że dane na partycji zostaną zmodyfikowane (czyli nie ma gwarancji 100%)
.
Naprawa zakończyła się sukcesem. Jak widać przyczyną było wyłączenie komputera w trakcie zapisywania pliku – widoczna w komunikacie informacja że nieprawidłowy zapis na dysku w folderze Incoming zostanie usunięty. Incoming to folder poczty w programie Simpe Mail – usunięcie fragmentu źle zapisanej wiadomości nie jest problemem, bo mogę ściągnąć ja powtórnie.
Naprawianie walidacji jest charakterystyczne dla systemów plików FFS – bywa to upierdliwe. Np. zawiesił mi się program podczas ściągania poczty – mogę czekać godzinę i nic, system nie reaguje (wskaźnik myszy nie drgnie). Wciskając reset na obudowie wiem czym to grozi – dlatego większość osób decyduje się na nowsze systemy plików. A te z kolei nie mają możliwości naprawy i odzyskiwania danych – jak się nie obrócić to plecy z tyłu…
Jeśli musisz użyć przycisku RESET rób to gdy nie świeci się dioda od pracy twardego dysku.
.
Podsumowanie
– przedstawiłem różne systemy plików
– nakreśliłem różnicę między PIO a DMA, pokazałem jak sprawdzić obsługiwane transfery u siebie oraz jak ustawić optymalne za pomocą u-boota
– przedstawiłem narzędzia dyskowe