MILO HOWTO
Autor: David A. Rusling
[email protected]
v0.84, 6 Grudnia 1996
WWeerrssjjaa ppoollsskkaa:: LLeesszzeekk UUrrbbaa��sskkii ttyyggrryyss@@ffiiddoonneett..oorrgg..ppll
v1.0, 24 Lipca 1998
Ten dokument opisuje Miniloader (Mini�adowacz), program dla komputer�w
opartych na procesorze Alpha, kt�ry mo�e by� u�ywany do inicjalizacji
maszyny i �adowania Linuxa. Alpha Linux Miniloader (jest to jego pe�na
nazwa) jest te� znany jako MILO. Dokument ten zosta� napisany w stan�
dardzie ISO-8859-2. Orygina� tego dokumentu znajduje si� pod adresem
ftp://gatekeeper.dec.com/pub/Digital/Linux-Alpha/Miniloader/docs.
______________________________________________________________________
Table of Contents:
1. Wprowadzenie
1.1. Prawa autorskie
1.2. Nowe wersje tego dokumentu
2. Co to jest MILO?
3. Standardowe, pre-kompilowane obrazy MILO
4. Kompilacja MILO
5. �adowanie MILO
5.1. �adowanie MILO z firmware'u Windows NT ARC
5.2. �adowanie MILO z ,,Evaluation Board Debug Monitor''
5.3. �adowanie MILO z ,,bezpiecznej dyskietki startowej''
5.4. �adowanie MILO z pami�ci Flash
5.5. �adowanie MILO z konsoli SRM
5.6. Informacje o p�ytach g��wnych
5.6.1. AXPPCI33 (NoName)
5.6.2. AlphaPC64 (Cabriolet)
5.6.3. EB66+
5.6.4. EB64+/Aspen Alpine
5.6.5. Universal Desktop Box (Multia)
5.6.6. EB164
5.6.7. PC164
5.6.8. XL266
5.6.9. Platform2000
6. Interfejs u�ytkownika MILO
6.1. Komenda ,,help''
6.2. �adowanie Linuxa
6.3. Resetowanie Linuxa
6.4. Komenda ,,bootopt''
7. U�ywanie programu zarz�dzaj�cego pami�ci� flash
7.1. Komenda ,,help''
7.2. Komenda ,,list''
7.3. Komenda ,,program''
7.4. Komenda ,,environment''
7.5. Komenda ,,bootopt''
7.6. Komenda ,,quit''
8. Ograniczenia
9. Rozwi�zywanie problem�w
10. Podzi�kowania
11. Od t�umacza
______________________________________________________________________
11.. WWpprroowwaaddzzeenniiee
Ten dokument opisuje Mini�adowacz (Miniloader) dla Linuxa na Alph� AXP
(MILO). To firmware jest u�ywane do inicjalizacji system�w Alpha AXP,
za�adowania oraz startowania Linuxa i w ko�cu do zapewnienia kodu PAL
(PALcode) dla Linuxa.
11..11.. PPrraawwaa aauuttoorrsskkiiee
Prawa autorskie Alpha Miniloader (MILO) HOWTO: Copyright (C) 1995,
1996 David A. Rusling.
PPrraawwaa aauuttoorrsskkiiee. Jak wszystkie Linuxowe dokumenty HOWTO, mo�e by�
powielane i rozpowszechniane w ca�o�ci lub w cz�ci, za pomoc� ka�dego
�rodka przekazu, fizycznego lub elektronicznego, je�eli uwaga o
prawach autorskich zosta�a zachowana na wszystkich kopiach. Komercyjna
redystrybucja jest dozwolona i zalecana; jednak�e autor _c_h_c_i_a_�_b_y by�
powiadomiony o takich dystrybucjach. Mo�esz te� przet�umaczy� to HOWTO
na dowolny j�zyk, je�eli zostawisz wypowied� o prawach autorskich oraz
o�wiadczenie niezmienione, oraz dodasz notatk� o t�umaczu.
OO��wwiiaaddcczzeenniiee. Pr�bowa�em umie�ci� tu najpoprawniejsze i najnowsze
informacje, kt�re s� mi dost�pne, nie mog� jednak zagwarantowa�, �e
ich u�ycie nie spowoduje utraty danych lub sprz�tu. NIE ZAPEWNIAM
�ADNEJ GWARANCJI dotycz�cej informacji w tym HOWTO, nie mog� by� wi�c
odpowiedzialny za jakiekolwiek skutki u�ycia danych z niego.
11..22.. NNoowwee wweerrssjjee tteeggoo ddookkuummeennttuu
Naj�wie�sza wersja tego dokumentu znajduje si� pod adresem
ftp://gatekeeper.dec.com/pub/Digital/Linux-Alpha/Miniloader/docs, a
David Mosberger-Tang by� uprzejmy umie�ci� go w formacie HTML na jego
znakomitej stronie o Linux-Alpha
http://www.azstarnet.com/~axplinux/.
22.. CCoo ttoo jjeesstt MMIILLOO??
Na systemach PC opartych na procesorach Intel, firmware zwane BIOSem
uruchamia komputer i �aduje obraz (image) do uruchomienia z bloku
startowego systemu plik�w DOSu. Jest to mniej wi�cej to samo, co
wykonuje MILO na systemach Alpha, jednak�e istnieje kilka
interesuj�cych r�nic pomi�dzy BIOSem a MILO, jedn� z nich jest
u�ywanie przez MILO niezmodyfikowanych standardowych sterownik�w
urz�dze� Linuxa. MILO jest firmware'em, inaczej ni� LILO, kt�ry jest
�adowany przez BIOS. G��wne funkcjonalne cz�ci MILO to:
1. PALcode,
2. Kod uruchamiania pami�ci (buduje tablice stronicowania i w��cza
adresowanie wirtualne),
3. Kod grafiki (emulacja BIOSu i TGA (21030)),
4. Kod j�dra Linuxa. Na niego sk�ada si� prawdziwy kod (np. obs�uga
przerwa�) i pseudo-j�dro,
5. Sterowniki urz�dze� blokowych Linuxa (np. sterownik stacji dysk�w),
6. Obs�uga systemu plik�w (ext2, MS-DOS i ISO9660),
7. Kod interfejsu u�ytkownika (MILO)
8. Kod interfejsu j�dra (uruchamia HWRPB i map� pami�ci dla Linuxa),
9. Kod NVRAM do zarz�dzania zmiennymi �rodowiskowymi
Dalsze akapity dok�adnie opisuj� funkcjonalne cz�ci MILO.
PALcode jest cienk� warstw� oprogramowania dostosowuj�c� procesor do
konkretnego systemu operacyjnego. Dzia�a w specjalnym trybie
(PALmode), kt�ry posiada kilka ogranicze�, ale u�ywa standardowego
zestawu instrukcji Alphy i tylko pi�ciu dodatkowych instrukcji. W ten
spos�b, na procesorze Alpha mog� by� uruchamiane systemy tak r�ne,
jak np. Windows NT, OpenVMS, Digital UNIX i oczywi�cie Linux.
PALcode, kt�rego u�ywa MILO (i przez to sam Linux) jest, jak reszta
MILO, darmowa. Pochodzi z przyk�adu ewaluacyjnych p�yt g��wnych
(Evaluation Boards, EB) dla Digital UNIXa. R�nice pomi�dzy kodami PAL
wynikaj� z r�nic w sposobach obs�ugi przerwa� w procesorach Alpha
(p�yty g��wne do 21066 maj� inn� map� I/O ni� systemy 21064+2107x
(2107x to APECS, chipset do 21064 - przyp. t�um.)), oraz z liczby
dost�pnych p�yt g��wnych.
�eby MILO dzia�a� poprawnie, musi zna� ilo�� dost�pnej pami�ci i
miejsce, w kt�rym Linux b�dzie dzia�a�, musi te� by� w stanie
przydzieli� tymczasow� pami�� dla sterownik�w urz�dze� Linuxa. Kod
utrzymuje map� pami�ci, kt�ra posiada rekordy dla permanentnie i
tymczasowo przydzielonych stron. W czasie uruchamiania MILO
dekompresuje si� w poprawne miejsce pami�ci fizycznej. Kiedy
przekazuje kontrol� j�dru Linuxa, zarezerwowywuje pami�� dla
skompresowanej wersji samego siebie, kodu PAL (kt�ry jest potrzebny
j�dru) i troch� struktur danych. To zostawia _w_i_�_k_s_z_o_�_� pami�ci w
systemie dla samego Linuxa.
Ostatnia cz�� kodu pami�ci to ustawienie i w��czenie adresowania
wirtualnego w celu zapewnienia poprawnego miejsca w wirtualnej pami�ci
dla struktur danych, kt�re Linux spodziewa si� tam zobaczy�.
MILO zawiera kod grafiki, kt�ry inicjalizuje i u�ywa urz�dzenia
graficznego dla systemu. Wykryje i b�dzie u�ywa� urz�dzenie VGA, je�li
takie istnieje, je�eli nie, b�dzie pr�bowa� u�y� urz�dzenia TGA
(21030). Gdy i to si� nie powiedzie, przyjmie, �e nie istnieje
urz�dzenie graficzne (tylko np. terminale szeregowe - przyp. t�um.).
Emulacja BIOSu, kt�r� posiadaj� standardowe, skompilowane obrazy MILO,
to emulacja Digitala, kt�ra obs�uguje wi�kszo��, je�eli nie wszystkie
dost�pne standardowe urz�dzenia graficzne.
Sterowniki urz�dze� Linuxa ,,�yj�'' wewn�trz j�dra i spodziewaj� si�
od niego konkretnych us�ug. Niekt�re z nich s� zapewniane bezpo�rednio
przez kod Linuxa, np. obs�uga przerwa�, a inne dzia�aj� dzi�ki
specjalnym procedurom wygl�daj�cym dla sterownik�w jak procedury
j�dra.
Najsilniejsza cecha MILO, to mo�liwo�� osadzenia w nim niezmienionych
sterownik�w urz�dze� Linuxa. Daje to potencja� obs�ugi ka�dego
urz�dzenia, kt�re obs�uguje Linux. MILO zawiera wszystkie urz�dzenia
blokowe wkompilowane w jadro, kt�re zostaje przy nim zbudowane, a
tak�e du�o kodu urz�dze� (np. ll_rw_blk()).
MILO �aduje j�dro Linuxa z prawdziwych system�w plik�w, a nie z blok�w
startowych i innych dziwnych miejsc. Potrafi czyta� systemy plik�w
MSDOS, EXT2 i ISO9660. Pliki spakowane gzipem s� obs�ugiwane i
rekomendowane, zw�aszcza je�eli �adujesz system z dyskietki, co jest
dosy� wolne. MILO rozpoznaje je po rozszerzeniu
W MILO zawiera prosty sterownik klawiatury, kt�ry razem z r�wnie
prostym sterownikiem grafiki pozwala posiada� mu sparta�ski interfejs
u�ytkownika. Interfejs ten pozwala pozna� systemy plik�w na
skonfigurowanych urz�dzeniach, �adowa� Linuxa, uruchamia� programy do
uaktualniania pami�ci flash, oraz ustawia� zmienne �rodowiskowe
kontroluj�ce �adowanie systemu. Tak jak w LILO, mo�esz przekazywa�
parametry do j�dra.
MILO musi powiedzie� j�dru Linuxa na jakim dzia�a systemie, ile
pami�ci posiada i ile z tej pami�ci jest wolne. Robi to u�ywaj�c
struktury danych HWRPB (blok parametr�w restartowania sprz�tu) i
skojarzonych z ni� opis�w cz�ci pami�ci. S� one umiejscawiane w
odpowiednim miejscu pami�ci wirtualnej zaraz przed przekazaniem
kontroli j�dru Linuxa.
33.. SSttaannddaarrddoowwee,, pprree--kkoommppiilloowwaannee oobbrraazzyy MMIILLOO
Je�eli b�dziesz chcia� uruchamia� Linuxa na standardowych p�ytach
g��wnych Alphy, mo�esz u�y� pre-kompilowanych, ,,standardowych''
obraz�w (images) MILO. (notka od t�umacza: radz� zabootowa� Alph� ze
standardowych obraz�w, a potem zbudowa� w�asny, gdy Linux b�dzie ju�
dzia�a�) Obrazy te (razem ze �r�d�ami i innymi ciekawymi rzeczami)
znajduj� si� na
ftp://gatekeeper.dec.com/pub/Digital/Linux-
Alpha/Miniloader
Podkatalog images zawiera po jednym podkatalogu na ka�dy system (np.
AlphaPC64), a obrazy MILO s� nazywane w nast�puj�cy spos�b:
1. MILO - wykonywalny obraz MILO, mo�e on by� �adowany na wiele
sposob�w,
2. fmu.gz - Program zarz�dzania pami�ci� flash,
3. MILO.dd - Obraz dla dyskietki startowej. Powinien by� zapisany
programem rawrite.exe lub dd pod Linuxem.
Katalog test-images zawiera, tak jak images po jednym katalogu na
standardowy system. Obrazy znajduj�ce si� w tym katalogu s� raczej
eksperymentalne, ale zawieraj� najnowsze opcje.
44.. KKoommppiillaaccjjaa MMIILLOO
(Uwaga: pami�taj, �e nie mo�esz zbudowa� MILO i j�dra dla Alphy na
Intel'u! Musisz dysponowa� drug� Alph�, albo zbudowa� j�dro po
uruchomieniu Linuxa ze standardowych obraz�w MILO. Na Intelu j�dro
nawet si� nie zacznie kompilowa� - spr�buj zbudowa� j�dro na Alph� na
pececie - w pliku Makefile zamie� ARCH=i386 na ARCH=alpha... - przyp.
t�um.)
MILO kompiluje si� oddzielnie, nie razem z j�drem. Poniewa� MILO
potrzebuje cz�ci j�dra do poprawnego funkcjonowania (np. obs�ugi
przerwa�), musisz najpierw skonfigurowa� i skompilowa� j�dro,
odpowiadaj�ce MILO, kt�ry chcesz skompilowa�. Zazwyczaj znaczy to, �e
powiniene� kompilowa� j�dro z t� sam� wersj� co MILO. A wi�c
MILO-2.0.25.tar.gz b�dzie kompilowa� si� z linux-2.0.25.tar.gz. MILO
_m_o_�_e skompilowa� si� z nowsz� wersj� j�dra, ale nie musi. Dodatkowo
teraz, kiedy biblioteki dzielone ELF s� w pe�ni obs�ugiwane, istniej�
dwie wersje �r�de� MILO. �eby zbudowa� je w systemie ELF, musisz
najpierw rozpakowa� standardowe �r�d�a, a potem na�o�y� �at� (patch)
ELF na te �r�d�a (musi mie� ten sam numer wersji). Przyjm� teraz, �e
�r�d�a j�dra oraz skompilowane obiekty (.o) znajduj� si� w katalogu
/usr/src/linux, a j�dro zosta�o w pe�ni skompilowane komend� make
boot. (pami�taj o ustawieniu ARCH=alpha w pliku Makefile j�dra _P_R_Z_E_D
wydaniem polecenia make (menu)(x)config!!! - przyp. t�um.)
�eby skompilowa� MILO, zmie� katalog na zawieraj�cy �r�d�a MILO i
przywo�aj make komend�:
$ make KSRC=/usr/src/linux config
Tak jak podczas kompilacji j�dra, zadane zostanie kilka pyta�.
Echo output to the serial port (MINI_SERIAL_ECHO) [y]
Przesy�a� wyj�cie do portu szeregowego (MINI_SERIAL_ECHO) [y]
Dobrym pomys�em jest w��czenie przesy�ania wiadomo�ci printk j�dra do
/dev/ttyS0, je�eli mo�na to zrobi�. Je�eli mo�esz (i chcesz), napisz
,,y'', je�eli nie, ,,n''. Wszystkie standardowe, pre-kompilowane
obrazy MILO posiadaj� wej�cie/wyj�cie na port szeregowy COM1.
Use Digital's BIOS emulation code (not free) (MINI_DIGITAL_BIOS_EMU) [y]
U�y� kodu emulacji BIOSu Digitala (nie jest darmowy) (MINI_DIGITAL_BIOS_EMU) [y]
Ten kod jest za��czony jako biblioteka, kt�ra jest darmowa dop�ki
u�ywa si� jej w systemie opartym na procesorze Alpha. �rod�a nie s�
dost�pne. Je�eli odpowiesz n, zbudowana zostanie alternatywna darmowa
emulacja BIOSu. Jej �r�d�a s� do��czone do MILO. Pami�taj, �e obecnie
nie mo�esz wybra� emulacji Digitala w systemach ELF (biblioteka nie
jest jeszcze gotowa), musisz wi�c odpowiedzie� ,,nie'' na to pytanie.
Build PALcode from sources (Warning this is dangerous) (MINI_BUILD_PALCODE_FROM_SOURCES) [n]
Zbudowa� PALcode ze �r�de� (Uwaga to jest niebezpieczne) (MINI_BUILD_PALCODE_FROM_SOURCES) [n]
Powiniene� zrobi� to tylko je�eli modyfikowa�e� �r�d�a kodu PAL,
je�eli nie, u�yj standardowego, pre-kompilowanego kodu PAL do��czonego
do MILO.
Teraz jeste� gotowy do zbudowania obrazu MILO:
$ make KSRC=/usr/src/linux
Kiedy kompilacja zostanie zako�czona, obraz MILO znajduje si� w pliku
o nazwie milo. B�dzie si� tam te� znajdowa� wiele obraz�w o nazwach
milo.*, kt�re powinny by� zignorowane.
55.. ��aaddoowwaanniiee MMIILLOO
Najlepiej obs�ugiwany spos�b �adowania MILO to �adowanie z firmware'u
Windows NT ARC, poniewa� wi�kszo�� system�w zawiera t� metod�.
Jednak�e istnieje wiele r�nych sposob�w �adowania MILO. Mo�e on by�
za�adowany z:
� dyskietki startowej (failsafe boot block floppy),
� firmware'u Windows NT ARC
� konsoli SRM Digitala
� ,,Alpha Evaluation Board Debug Monitor'' - programu monitoruj�cego
p�yt ewaluacyjnych,
� pami�ci flash ROM
55..11.. ��aaddoowwaanniiee MMIILLOO zz ffiirrmmwwaarree''uu WWiinnddoowwss NNTT AARRCC
Wi�kszo��, je�eli nie wszystkie systemy oparte na Alfie AXP posiadaj�
Windows NT ARC firmware i jest to preferowana metoda inicjalizowania
MILO i Linuxa. Kiedy firmware Windows NT dzia�a i posiadasz poprawny
dla twojego systemu obraz MILO, metoda ta jest bardzo �atwa do
u�ywania.
Windows NT ARC firmware jest �rodowiskiem, w kt�rym mog� dzia�a�
programy, wykonuj�c odwo�ania do firmware'u w celu wykonywania r�nych
akcji. Windows NT OSloader jest programem, kt�ry spe�nia t� funkcj�.
Linload.exe jest znacznie prostszym programem, kt�ry jedynie wczytuje
i uruchamia MILO. �aduje on poprawny plik z obrazem do pami�ci pod
adres 0x00000000 i wtedy wykonuje odwo�anie PAL ,,swap-PAL'' (zamie�
PAL) do niego. MILO, tak jak Linux, u�ywa innego kodu PAL ni� Windows
NT i dlatego musi przeprowadzi� zamian�. Nast�pnie MILO przenosi si�
do 0x200000 i kontynuuje resetowanie kodu PAL.
Zanim dodasz opcj� �adowania Linuxa, b�dziesz musia� skopiowa�
linload.exe oraz MILO, kt�rego chcesz za�adowa� w miejsce, z kt�rego
Windows NT ARC b�dzie m�g� go odczyta�. W poni�szym przyk�adzie
przyjmuj�, �e �adujesz MILO z dyskietki w formacie DOS'a:
1. W menu �adowania (boot menu) wybierz ,,Supplementary menu...''
(menu dodatkowe)
2. W menu ,,Supplementary menu'' wybierz opcj� ,,Set up the
system...'' (ustaw system)
3. W Setup menu wybierz ,,Manage boot selection menu...'' (menu
zarz�dzania opcjami �adowania)
4. W ,,Boot selections menu'' wybierz ,,Add a boot selection'' (dodaj
opcj� �adowania)
5. Wybierz ,,Floppy Disk 0''
6. Wprowad� ,,linload.exe'' jako katalog i nazw� pliku �adowacza
systemu (osloader)
7. Odpowiedz ,,tak'' na pytanie czy system operacyjny znajduje si� na
tej samej partycji co �adowacz systemu
8. Wprowad� ,,\fR'' jako katalog g��wny systemu operacyjnego
9. Zazwyczaj wpisuj� ,,Linux'' jako nazw� tej opcji �adowania
10.
Odpowiedz ,,nie'' na pytanie o inicjalizacj� debuggera podczas
�adowania
11.
Powiniene� wr�ci� do ,,Boot selections menu'', wybierz w nim opcj�
,,Change a boot selection option'', a w niej opcj�, kt�r� w�a�nie
stworzy�e�
12.
U�yj strza�ki w d�, aby dosta� si� do rekordu ,,OSLOADFILENAME'',
wpisz w nim nazw� obrazu MILO, kt�rego chcesz u�ywa�, np.
,,noname.arc, nast�pnie naci�nij return (enter).
13.
Nasi�nij ESC �eby wr�ci� do ,,Boot selections menu''
14.
Wybierz ,,Setup Menu'' (lub naci�nij jeszcze raz ESC), a w nim
,,Supplementary menu'' i ,,Save Changes''
15.
ESC cofnie ci� do ,,Boot menu'', mo�esz ju� spr�bowa� inicjalizowa�
MILO. Je�eli nie chcesz, �eby Linux by� pierwsz� opcj� �adowania,
mo�esz zmieni� kolejno�� opcji w ,,Boot selections menu''.
Na ko�cu tych czynno�ci powiniene� otrzyma� opcj� �adowania
wygl�daj�c� podobnie do tej:
LOADIDENTIFIER=Linux
SYSTEMPARTITION=multi(0)disk(0)fdisk(0)
OSLOADER=multi(0)disk(0)fdisk(0)\linload.exe
OSLOADPARTITION=multi(0)disk(0)fdisk(0)
OSLOADFILENAME=\noname.arc
OSLOADOPTIONS=
Mo�esz teraz uruchomi� MILO (i Linuxa). Mo�esz za�adowa� linload.exe i
MILO bezpo�rednio z systemu plik�w, kt�ry rozumie Windows NT, takiego
jak NTFS lub DOS na twardym dysku.
Linia OSLOADOPTIONS zawiera opcje, kt�re zostan� przekazane do MILO.
Je�eli chcesz za�adowa� Linuxa bezpo�rednio z Windows NT ARC nie
pauzuj�c przy MILO, powiniene� wpisa� nast�puj�c� komend� w
OSLOADOPTIONS:
boot sda2:vmlinux.gz root=/dev/sda2
Przeczytaj rozdzia� ``Interfejs u�ytkowwnika MILO'', �eby uzyska�
wi�cej informacji o komendach MILO.
Inna (ale jest to obej�cie :( ) metoda �adowania MILO przez WNT ARC,
to umieszczenie MILO na dyskietce MS-DOS, nazwanie go fwupdate.exe i
uruchomienie opcji ,,Upgrade Firmware''.
55..22.. ��aaddoowwaanniiee MMIILLOO zz ,,,,EEvvaalluuaattiioonn BBooaarrdd DDeebbuugg MMoonniittoorr''''
P�yty ewaluacyjne (i cz�sto ich klony) posiadaj� obs�ug� Monitora p�yt
ewaluacyjnych (Alpha Evaluation Board Debug Monitor). Przeczytaj
dokumentacj� twojego systemu przed rozpatrywaniem u�ycia tej metody
�adowania MILO. Nast�puj�ce systemy _n_a_p_e_w_n_o obs�uguj� Monitor:
� AlphaPC64 (Sekcja ``AlphaPC64'')
� EB64+ (Sekcja ``EB64+'')
� EB66+ (Sekcja ``EB66+'')
� EB164 (Sekcja ``EB164'')
� PC164 (Sekcja ``PC164'')
Zanim u�yjesz tej metody, pami�taj, �e wczesne wersje Monitora
Ewaluacyjnego nie posiada�y sterownik�w grafiki i klawiatury, musisz
wi�c pod��czy� inny komputer przez port szeregowy, �eby� m�g� u�ywa�
Monitora. Jego interfejs jest bardzo prosty, a komenda help pokazuje
mn�stwo dost�pnych komend. Najbardziej nas interesuj�ce zawieraj�
s�owo boot albo load.
Monitor P�yt Ewaluacyjnych mo�e za�adowa� obraz przez sie� (netboot)
albo z dyskietki (flboot). W obu przypadkach, ustaw adres �adowania na
0x200000 (> bootadr 200000) przed uruchomieniem obrazu.
Je�eli obraz znajduje si� na dyskietce (zauwa� �e obs�ugiwane s� tylko
dyskietki w formacie DOS), b�dziesz musia� wpisa� nast�puj�c� komend�:
AlphaPC64> flboot <nazwa-obrazu-MILO>
55..33.. ��aaddoowwaanniiee MMIILLOO zz ,,,,bbeezzppiieecczznneejj ddyysskkiieettkkii ssttaarrttoowweejj''''
Tylko AXPPCI33 _n_a_p_e_w_n_o obs�uguje ,,bezpieczn� dyskietk� startow�''
(Sekcja ``NoName'').
Je�eli nie u�ywasz standardowego, pre-kompilowanego obrazu .dd MILO,
b�dziesz musia� zbudowa� dyskietk� startow� SRM. Kiedy ju�
skompilowa�e� MILO, musisz wykona� nast�puj�ce komendy w Digital
Unix'ie:
fddisk -fmt /dev/rfd0a
cat mboot bootm > /dev/rfd0a
disklabel -rw rfd0a 'rx23' mboot bootm
Lub w Linuxie:
cat mboot bootm > /dev/fd0
Je�eli masz standardowy obraz MILO (powiedzmy MILO.dd), mo�esz
stworzy� dyskietk� startow�, u�ywaj�c nast�puj�cej komendy:
dd if=MILO.dd of=/dev/fd0
(radz� jednak zapisywa� programem rawrite.exe spod DOS'a - ale
poeksperymentowa� z dd mo�na - przyp. t�um.)
55..44.. ��aaddoowwaanniiee MMIILLOO zz ppaammii��ccii FFllaasshh
Istnieje kilka system�w, gdzie MILO mo�e by� wypalone we flash'u i
�adowane bezpo�rednio (a nie przez firmware Windows NT ARC):
� AlphaPC64 (Sekcja ``AlphaPC64'')
� NoName (Sekcja ``NoName'')
� EB66+ (Sekcja ``EB66+'')
� EB164 (Sekcja ``EB164'')
� PC164 (Sekcja ``PC164'')
55..55.. ��aaddoowwaanniiee MMIILLOO zz kkoonnssoollii SSRRMM
Konsola SRM (skr�t od System Reference Manual, podr�cznik systemowy (?
- przyp. tygrys)) nie wie nic o systemach plik�w b�d� partycjach
dyskowych, oczekuje po prostu na zaj�cie odpowiedniego przedzia�u
kolejnych sektor�w dysku przez drugorz�dny �adowacz, zaczynaj�c od
danego offsetu. Informacja opisuj�ca drugorz�dny �adowacz (jego
rozmiar i offset) znajduje si� w pierwszym 512-bajtowym bloku. �eby
za�adowa� MILO z konsoli SRM, musisz wygenerowa� tak� struktur� w
urz�dzeniu, do kt�rego SRM ma dost�p (np. dyskietka). Do tego s�u�y
mboot i bootm, mboot jest pierwszym, opisuj�cym blokiem, a bootm jest
obrazem MILO zaokr�glonym do 512-bajtowego bloku.
�eby za�adowa� MILO z urz�dzenia zawieraj�cego blok startowy, zbuduj
mboot oraz bootm i nagraj je na urz�dzenie startowe nast�puj�c�
komend�:
$ cat mboot bootm > /dev/fd0
Mo�esz te� �ci�gn�� odpowiedni plik MILO.dd i nagra� go u�ywaj�c
RAWRITE.EXE lub dd.
Kiedy ju� to zrobi�e�, mo�esz uruchomi� konsol� SRM i u�y� jednej z
jej wielu komend do za�adowania MILO. Na przyk�ad, je�eli chcesz
za�adowa� MILO z dyskietki startowej, powiniene� u�y� nast�puj�cej
komendy:
>>>boot dva0
(boot dva0.0.0.0.1 -flags 0)
block 0 of dva0.0.0.0.1 is a valid boot block
reading 621 blocks from dva0.0.0.0.1
bootstrap code read in
base = 112000, image_start = 0, image_bytes = 4da00
initializing HWRPB at 2000
initializing page table at 10400
initializing machine state
setting afinity to the primary CPU
jumping to bootstrap code
MILO Stub: V1.1
Unzipping MILO into position
Allocating memory for unzip
####...
Nast�puj�ce systemy _n_a_p_e_w_n_o posiadaj� konsol� SRM:
� NoName (Sekcja ``NoName'')
� AlphaPC64 (Sekcja ``AlphaPC64'')
� EB164 (Sekcja ``EB164'')
� PC164 (Sekcja ``PC164'')
55..66.. IInnffoorrmmaaccjjee oo pp��yyttaacchh gg����wwnnyycchh
55..66..11.. AAXXPPPPCCII3333 ((NNooNNaammee))
P�yta NoName mo�e �adowa� MILO z firmware'u Windows NT ARC (Sekcja
``�adowanie MILO z Windows NT ARC''), z konsoli SRM (Sekcja
``�adowanie MILO z konsoli SRM''), oraz z dyskietki startowej (Sekcja
``�adowanie z dyskietki startowej''). Mo�na te�, u�ywaj�c programu
zarz�dzaj�cego pami�ci� flash, dostarczanego z MILO, mo�esz po
za�adowaniu Miniloadera wypali� jego obraz w tak� pami�� (Sekcja
``korzystanie z programu zarz�dzaj�cego pami�ci� flash''). Jednak�e
musisz pami�ta�, �e kiedy to zrobisz, stracisz poprzedni obraz tam
zapisany, poniewa� p�yta posiada miejsce tylko na jeden.
Spos�b, w jaki NoName uruchamia system jest kontrolowany zestawem
zworek na p�ycie, J29 i J28. Wygl�daj� one nast�puj�co:
4
J29 2 x x x 6
1 x x x 5
J28 2 x x x 6
1 x x x 5
3
Dwie opcje, kt�re nas interesuj�, to piny 1-3 zworki J28, kt�re �aduj�
konsol�/�adowacz z pami�ci flash, oraz piny 1-3 zworki J29, kt�re
uruchamiaj� konsol� lub �adowacz z dyskietki startowej. Pierwsze
za�adowanie MILO musi by� przeprowadzone przy u�yciu drugiej opcji.
Kiedy ju� wybierzesz �adowanie systemu z dyskietki ustawiaj�c
odpowiedni� zwork�, w�� dyskietk� startow� SRM zawieraj�c� MILO do
stacji i zresetuj komputer. Za par� sekund (po zga�ni�ciu lampki
stacji dysk�w) ekran powinien zrobi� si� bia�y, a MILO b�dzie m�wi� ci
co si� dzieje.
Je�eli interesuj� ci� tematy techniczne, wiedz, �e NoName �aduje
obrazy z dyskietki pod fizyczny adres 0x104000, a obrazy z pami�ci
flash pod adres 0x100000. Z tego powodu PALcode MILO zaaczyna si� na
0x200000. Kiedy jest ju� za�adowany, przenosi si� w poprawne miejsce
(zobacz relocate.S).
55..66..22.. AAllpphhaaPPCC6644 ((CCaabbrriioolleett))
AlphaPC64 mo�e �adowa� MILO z firmware'u Windows NT ARC (Sekcja
``�adowanie z Windows NT ARC''), konsoli SRM (Sekcja ``�adowanie MILO
z konsoli SRM''), oraz z Monitora Ewaluacyjnego (Sekcja ``�adowanie z
Monitora P�yt Ewaluacyjnych''). Wszystkie te funkcj� znajduj� si� w
pamieci flash, w kt�rej znajduje si� jeszcze miejsce na dodanie MILO,
w celu �adowania go bezpo�rednio. Mo�na u�y� programu zarz�dzania
pami�ci� flash, uruchamianego z MILO, a wi�c kiedy jest on
uruchomiony, mo�e by� wczytany do pami�ci nieulotnej (Sekcja
``u�ywanie programu zarz�dzania pami�ci� flash''). System obs�uguje
zmienne �rodowiskowe MILO.
Mo�na wybra� opcj� �adowania (i MILO, kiedy znajduje si� w pami�ci
flash) za pomoc� kombinacji zworek i opcji inicjalizacji, kt�ra jest
zapisywana w NVRAM zegara TOY.
Zworka s�u��ca do tego celu to J2, bity SP o numerach 6 i 7 maj�
nast�puj�ce znaczenie:
� SP 6 powinien by� zawsze wy��czony. Je�eli nie, w��czy si� mini-
debugger SROM,
� Kiedy SP 7 jest w��czony, system wybiera opcj� inicjalizacji
umieszczon� w zegarze TOY,
� Przy wy��czonym SP 7 system �aduje pierwszy obraz z pami�ci flash.
A wi�c, je�eli SP 7 jest wy��czony, �adowany b�dzie Monitor P�yt
Ewaluacyjnych, poniewa� jest _z_a_w_s_z_e pierwsz� opcj� w pami�ci flash.
Kiedy SP 7 jest w��czony, wybrany zostanie obraz z zegara TOY. Zar�wno
Monitor, firmware Windows NT ARC, jak i MILO obs�uguj� wyb�r opcji
inicjalizacyjnej, ale musisz by� bardzo ostro�ny u�ywaj�c tej metody.
Nie mo�esz na przyk�ad ustawi� opcji inicjalizacyjnej tak, �eby
nast�pnym razem system �adowa� MILO, kiedy u�ywasz Windows NT ARC,
poniewa� pozwala on tylko na ustawienie Monitora Ewaluacyjnego lub NT
ARC jako opcji �adowania.
W celu zapisania MILO w pami�ci flash za pomoc� Monitora P�yt
Ewaluacyjnych, b�dziesz potrzebowa� obrazu przystosowanego do tej
metody �adowania. Procedura kompilacji tworzy plik MILO.rom, ale
r�wnie dobrze mo�esz stworzy� taki plik jedn� z komend Monitora:
> makerom -v -i7 -l200000 MILO -o mini.flash
(napisz makerom, �eby dowiedzie� si�, co znacz� poszczeg�lne
argumenty, powiem tylko, �e 7 to identyfikator obrazu u�ywany przez
SROM, a -l200000 ustawia adres �adowania obrazu na 0x200000).
Za�aduj ten obraz do pami�ci (komend� flload, netload itd. (_N_I_E
fl/net boot tylko _l_o_a_d - przyp. t�um.)) pod adres 0x200000 i wypal we
flash'u:
AlphaPC64> flash 200000 8
(200000 to miejsce w pami�ci obrazu, kt�ry ma by� wypalony, a 8 to
segment, w kt�rym umieszczasz obraz. Istnieje 16 1024*64 bajtowych
segment�w w pami�ci flash, Debug Monitor znajduje si� w segmencie
pierwszym, a Windows NT ARC w czwartym).
Ustaw numer obrazu, kt�ry b�dzie �adowany przez SROM poprzez zapisanie
jego numeru w zegarze TOY.
AlphaPC64> bootopt 131
(131 to trzeci obraz, 129 - pierwszy, 130 - drugi itd.)
Wy��cz zasilanie, zewrzyj si�dm� zwork� i w��cz komputer. Powiniene�
zobaczy� MILO budz�cego si� do �ycia. Je�eli nie, wyjmij 7 zwork� i
zresetuj Monitor Ewaluacyjny.
55..66..33.. EEBB6666++
EB66+, tak jak wszystkie P�yty Ewaluacyjne Alpha zbudowane przez
Digitala, posiada ,,Evaluation Board Debug Monitor'', mo�na wi�c
uruchamia� MILO przez niego (Sekcja ``�adowanie z Monitora
Ewaluacyjnego''). Dosy� cz�sto (cho� nie zawsze) p�yty, kt�re
wyeluowa�y z EB66+, r�wnie� posiadaj� Monitor. Zazwyczaj p�yty te
zawieraj� Windows NT ARC firmware (Sekcja ``�adowanie przez Windows NT
ARC''). Mo�na te� skorzysta� z programu zarz�dzania pami�ci� flash,
kiedy MILO jest uruchomiony (Sekcja ``u�ywanie programu zarz�dzaj�cego
pami�ci� flash''). System ten obs�uguje zmienne �rodowiskowe MILO.
P�yta g��wna posiada miejsce na kilka obraz�w flash, s� one
kontrolowane zworkami. Dwa banki zworek (J18 i J16) znajduj� si� na
dole p�yty, po �rodku jej szeroko�ci (je�eli Alpha jest na g�rze).
Mo�esz wybra� pomi�dzy opcjami �adowania (i MILO, je�eli zosta�
zapisany w pami�ci flash), u�ywaj�c kombinacji zworek i opcji
inicjalizacji zapisanej w NVRAM zegara TOY.
Kiedy zworka 7-8 banku J18 jest w��czona, obraz �adowania jest opisany
przez opcj� inicjalizacyjn�. Je�eli s� one wy��czone, za�adowany
zostanie Monitor P�yt Ewaluacyjnych.
Procedura wypalania obrazu w pami�ci flash przez Monitor Ewaluacyjny
jest identyczna, jak w przypadku AlphaPC64 (Sekcja ``AlphaPC64'').
55..66..44.. EEBB6644++//AAssppeenn AAllppiinnee
System ten jest podobny do AlphaPC64, nie posiada jednak pami�ci flash
do nagrania MILO. EB64+ posiada dwa ROMy, z kt�rych jeden zawiera
firmware Windows NT ARC (Sekcja ``�adowanie z firmware'u Windows NT
ARC''), a drugi Monitor P�yt Ewaluacyjnych (Sekcja ``�adowanie z
Monitora Ewaluacyjnego'').
Aspen Alpine posiada tylko jeden ROM - Windows NT ARC.
55..66..55.. UUnniivveerrssaall DDeesskkttoopp BBooxx ((MMuullttiiaa))
Jest to system bardzo kompaktowy, sprzedawany jako ca�y komputer,
oparty na 21066. Posiada on urz�dzenie graficzne TGA (21030). Chocia�
mo�na _w_e_p_c_h_n_�_� do niego kart� graficzn� PCI o ma�ym rozmiarze,
poczekaj lepiej na pe�n� obs�ug� TGA w XFree86. P�yta posiada firmware
Windows NT ARC, z kt�rego mo�na �adowa� MILO (Sekcja (``�adowanie z
firmware'u Windows NT ARC'').
55..66..66.. EEBB116644
EB164, tak jak wszystkie p�yty ewaluacyjne Digitala, posiada Monitor
P�yt Ewaluacyjnych, mo�na wi�c za jego pomoc� �atwo �adowa� MILO
(Sekcja ``�adowanie z Monitora Ewaluacyjnego''). Dosy� cz�sto (cho�
nie zawsze) p�yty, kt�re wyeluowa�y z EB164, tak�e zawieraj� Monitor.
Zazwyczaj, p�yty EB164 posiadaj� firmware Windows NT ARC (Sekcja
``�adowanie z firmware'u Windows NT ARC''). Dost�pna jest te� konsola
SRM (Sekcja ``�adowanie MILO z konsoli SRM''). Dzi�ki programowi do
zarz�dzania pami�ci� flash uruchamianemu z MILO, mo�na zapisa� jego
obraz w pami�ci flash (kiedy MILO ju� dzia�a) (Sekcja ``U�ywanie
programu zarz�dzania pami�ci� flash''). System obs�uguje zmienne
�rodowiskowe MILO.
P�yty EB164 posiadaj� kilka obraz�w �aduj�cych, kontrolowanych
zworkami. Dwuzworkowy bank nas interesuj�cy to J1, znajduje si� on w
lewym, dolnym rogu p�yty (kiedy Alpha jest na g�rze). Mi�dzy opcjami
�adowania (oraz MILO, je�eli zosta� zapisany w pami�ci flash) mo�esz
prze��cza� si� u�ywaj�c kombinacji zworek i opcji inicjalizacyjnej,
zapisanej w NVRAMie zegara TOY.
Kiedy zworka SP-11 banku J1 jest zwarta, �adowany b�dzie obraz opisany
opcj� inicjalizacyjn�, a je�eli jest rozwarta, �adowany b�dzie Monitor
P�yt Ewaluacyjnych.
Wypalanie obrazu w pami�ci flash przeprowadza si� dok�adnie tak, jak w
AlphaPC64 (Sekcja ``AlphaPC64'').
55..66..77.. PPCC116644
PC164, jak wszystkie P�yty Ewaluacyjne Alpha Digitala, posiada Monitor
P�yt Ewaluacyjnych, jest to wi�c pierwsza mo�liwo�� �adowania MILO
(Sekcja ``�adowanie z monitora ewaluacyjnego''). Dosy� cz�sto (cho�
nie zawsze) p�yty, kt�re wyeluowa�y z PC164, tak�e posiadaj� Monitor.
Zazwyczaj p�yty te posiadaj� firmware Windows NT ARC (Sekcja
``�adowanie z Windows NT ARC''). Jest te� dost�pna konsola SRM (Sekcja
``�adowanie MILO z konsoli SRM''). Mo�na r�wnie� u�y� programu do
zarz�dzania pami�ci� flash, uruchamianego z MILO, a wi�c kiedy
Miniloader dzia�a, mo�e by� zapisany w pami�ci flash (Sekcja
``u�ywanie programu zarz�dzaj�cego pami�ci� flash''). System obs�uguje
zmienne �rodowiskowe MILO.
Systemy te posiadaj� kilka opcji �adowania w pami�ci flash,
kontrolowanych przez zworki. G��wny blok zworek, J30, zawiera zworki
konfiguracji systemu, oraz zwork� CF6, kt�ra, je�eli w��czona,
uruchomi Monitor Ewaluacyjny. Standardowo zworka ta jest wy��czona.
Wypalanie obrazu do pami�ci flash za pomoc� Monitora P�yt
Ewaluacyjnych przeprowadza si� identycznie, jak w przypadku AlphaPC64
(Sekcja ``AlphaPC64'').
55..66..88.. XXLL226666
XL266 jest jedn� z p�yt z rodziny system�w znanych jako Avanti.
Posiada oddzieln� kart� zawieraj�c� procesor i pami�� cache, do��czan�
do p�yty pod prawid�owym k�tem. P�yta ta mo�e zast�pi� sw�j
odpowiednik - p�yt� do Pentium.
Niekt�re z tych system�w posiadaj� konsol� SRM, a inne, np. w�a�nie
XL266 posiadaj� jedynie firmware Windows NT ARC (Sekcja ``�adowanie z
firmware'u Windows NT ARC'').
Oto moja lista kompatybilnych system�w:
� AlphaStation 400 (Avanti),
� AlphaStation 250,
� AlphaStation 200 (Mustang),
� XL. Dost�pne s� dwa rodzaje, XL266 i XL233, jedyna r�nica pomi�dzy
nimi to szybko�� procesora i rozmiar cache'u.
UUwwaaggaa: System kt�rego u�ywa�em do rozwoju MILO, to XL266 i dlatego
jest to jedyny system, kt�rego dzia�anie mog� zagwarantowa�. Jednak�e
technicznie wszystkie powy�sze systemy s� odpowiednikami, maj� te same
chipsety oraz mechanizmy obs�ugi przerwa�.
55..66..99.. PPllaattffoorrmm22000000
Jest to system oparty na 233MHz 21066.
66.. IInntteerrffeejjss uu��yyttkkoowwnniikkaa MMIILLOO
Kiedy poprawnie zainstalowa�e�/za�adowa�e�/uruchomi�e� MILO, zobaczysz
znak zach�ty MILO> (od MIniLOader, Mini�adowacz) wy�wietlony na
ekranie. Jest to bardzo prosty intefejs u�ytkownika, kt�rego musisz
u�y� w celu uruchomienia obrazu j�dra Linuxa. Wpisanie ,,help'' jest
dobrym pomys�em, poniewa� wy�wietla przydatny opis komend.
66..11.. KKoommeennddaa ,,,,hheellpp''''
Jest to chyba najbardziej po�yteczna komenda MILO:
MILO> help
MILO command summary:
ls [-t fs] [dev:[dir]]
- List files in directory on device
boot [-t fs] [dev:file] [boot string]
- Boot Linux from the specified device and file
run [-t fs] dev:file
- Run the standalone program dev:file
show - Display all known devices and file systems
set VAR VALUE - Set the variable VAR to the specified VALUE
unset VAR - Delete the specified variable
reset - Delete all variables
print - Display current variable settings
help [var] - Print this help text
Devices are specified as: fd0, hda1, hda2, sda1...
Use the '-t filesystem-name' option if you want to use
anything but the default filesystem ('ext2').
Use the 'show' command to show known devices and filesystems.
Type 'help var' for a list of variables.
------------------------------------------------------------------------------------
MILO> help
Opis komend MILO:
ls [-t fs] [urz�dzenie:[katalog]]
- Lista plik�w w katalogu danego urz�dzenia
boot [-t fs] [urz�dzenie:plik] [tekst �adowania]
- Za�aduj Linuxa z pliku na danym urz�dzeniu
run [-t fs] [urz�dzenie:plik]
- Uruchom oddzielny program z podanej �cie�ki
show - Poka� wszystkie znane urz�dzenia i systemy plik�w
set ZMIENNA WARTOSC - Przypisuje zmiennej ZMIENNA wartosc WARTOSC
unset ZMIENNA - Kasuje podan� zmienn�
reset - Skasuj wszystkie zmienne
print - Poka� obecne ustawienia zmiennych
help [var] - Wy�wietl ten tekst pomocy
Urz�dzenia podaje si� jako: fd0, hda1, hda2, sda1...
U�yj opcji ,,-t nazwa-systemu-plik�w'', je�eli chcesz u�ywa�
czego� innego ni� standardowy system plik�w (,,ext2'').
U�yj komendy ,,show'', �eby wy�wietli� znane urz�dzenia i systemy plik�w.
Wpisz ,,help var'', �eby uzyska� list� zmiennych.
UUwwaaggaa:: komenda bootopt wyst�puje tylko w systemie AlphaPC64 (i
podobnych). Odwo�aj si� do dokumentacji p�yty, �eby dowiedzie� si�, co
ona znaczy.
UUrrzz��ddzzeenniiaa. Dop�ki nie u�yjesz komendy, kt�ra musi u�y� urz�dzenia,
nie b�dzie mia�a miejsca jego inicjalizacja. Pierwsze show, ls, boot
lub run, zawsze spowoduj� inicjalizacj� urz�dze� w MILO. Urz�dzenia
s� nazywane dok�adnie w ten sam spos�b, co w Linuxie. A wi�c, pierwszy
dysk IDE b�dzie nazywa� si� ,,hda'', a pierwsza partycja ,,hda1''.
U�yj komendy ,,show'', �eby wy�wietli� dost�pne urz�dzenia.
SSyysstteemmyy pplliikk��ww. MILO obs�uguje trzy systemy plik�w - MSDOS, EXT2 i
ISO9660. Je�eli urz�dzenie jest dost�pne w systemie, mo�na wykona�
komendy ls, boot i run na obrazie zapisanym na tych systemach plik�w.
Standardowy system MILO to EXT2, dlatego b�dziesz musia� powiedzie�
MILO, �e obecny jest inny system plik�w. Wszystkie komendy u�ywaj�ce
nazw plik�w pozwalaj� przekaza� do nich typ systemu plik�w, u�ywaj�c
opcji -t [nazwa systemu plik�w]. A wi�c je�eli chcesz wy�wietli�
zawarto�� CD ROMu SCSI, mo�esz napisa�:
MILO> -t iso9660 scd0:
ZZmmiieennnnee.. MILO posiada kilka ustawialnych zmiennych, u�atwiaj�cych
proces �adowanie. Je�eli �adujesz MILO przez Windows NT ARC, MILO
u�ywa zmiennych ustawionych przez to firmware. W niekt�rych systemach
(np. AlphaPC64), MILO tworzy w�asn� list� zmiennych, kt�re nie
zmieniaj� si� przy ka�dym �adowaniu. S� to:
MILO> help var
Variables that MILO cares about:
MEMORY_SIZE - System memory size in megabytes
BOOT_DEV - Specifies the default boot device
BOOT_FILE - Specifies the default boot file
BOOT_STRING - Specifies the boot string to pass to the kernel
SCSIn_HOSTID - Specifies the host id of the n-th SCSI controller.
AUTOBOOT - If set, MILO attempts to boot on powerup
and enters command loop only on failure.
AUTOBOOT_TIMEOUT - Seconds to wait before auto-booting on powerup.
------------------------------------------------------------------------------------
MILO> help var
Zmienne, na kt�re uwa�a MILO:
MEMORY_SIZE - Rozmiar pami�ci systemu w megabajtach
BOOT_DEV - Definiuje domy�lne urz�dzenie �adowania
BOOT_FILE - Definiuje domy�lny plik �adowania
BOOT_STRING - Definiuje tekst przekazywany do j�dra podczas startu
SCSIn_HOSTID - Definiuje identyfikator hosta n-tego kontrolera SCSI.
AUTOBOOT - Je�eli jest ustawiona, MILO pr�buje �adowa� system po w��czeniu
zasilania i przechodzi do linii komend tylko w przypadku b�edu.
AUTOBOOT_TIMEOUT - Ile sekund MILO ma czeka� przed auto�adowaniem.
66..22.. ��aaddoowwaanniiee LLiinnuuxxaa
Komenda boot �aduje j�dro Linuxa. Musi si� ono znajdowa� na dysku w
formacie EXT2 (SCSI, IDE lub na dyskietce), lub na kompakcie w
formacie ISO9660. Obraz mo�e by� spakowany gzipem, MILO rozpozna go
wtedy po rozszerzeniu
Zauwa�, �e wersja MILO nie musi odpowiada� wersji j�dra, kt�re
�adujesz. Linuxa �aduje si� nast�puj�c� komend�:
MILO> boot [-t system-plik�w] urz�dzenie:nazwa-pliku [[opcja-�adowania] [opcja-�adowania] ...]
Gdzie urz�dzenie jest nazw� pliku urz�dzenia, kt�rego chcesz u�ywa�, a
nazwa-pliku jest nazw� obrazu j�dra Linuxa. Wszystkie argumenty podane
po nazwie pliku s� przekazywane bezpo�rednio do j�dra.
Je�eli instalujesz Red Hat'a, b�dziesz musia� poda� urz�dzenie / i nie
tylko. Powiniene� u�y� komendy
MILO> boot fd0:vmlinux.gz root=/dev/fd0 load_ramdisk=1
MILO b�dzie automatycznie zawiera� urz�dzenia wkompilowane w tw�j
vmlinux. Testowa�em sterowniki do stacji dysk�w, IDE i kilka
sterownik�w SCSI (np. NCR 810). Wszystkie dzia�aj� poprawnie. Wa�ne
jest te� poprawne ustawienie identyfikatora hosta SCSI. Domy�lnie MILO
zainicjalizuje go na najwy�szej mo�liwej warto�ci (7), co powinno
dzia�a� poprawnie. Jednak�e je�eli chcesz, mo�esz i tak ustawi�
identyfikator hosta _n-tego kontrolera SCSI w systemie, ustawiaj�c
zmienn� �rodowiskow�SCSI_n_HOSTID na odpowiedni� warto��. Na przyk�ad,
�eby ustawi� hostid pierwszego kontrolera na 7, powiniene� wpisa�
nast�puj�ce polecenie w linii polece� MILO:
setenv SCSI0_HOSTID 7
66..33.. RReesseettoowwaanniiee LLiinnuuxxaa
Czasami b�dziesz chcia� prze�adowa� dzia�aj�cego Linuxa komend�
shutdown -r now. W takim przypadku j�dro Linuxa oddaje kontrol� MILO
(przez odwo�anie CallPAL HALT). Z tego powodu MILO zostawia
skompresowan� kopi� samego siebie w pami�ci i wykrywa �e system jest
prze�adowywany, korzystaj�c z informacji przetrzymywanych w HWRPB
(Hardware Restart Parameter Block, Blok Parametr�w Restartu
Urz�dzenia). Zaczyna wtedy prze�adowanie, u�ywaj�c dok�adnie tej
samej komendy, kt�ra zosta�a u�yta do �adowania j�dra Linuxa ostatnim
razem. MILO czeka przez 30 sekund przed ponownym za�adowaniem j�dra,
co pozwala przerwa� ten proces i za�adowa� inne j�dro, w jakikolwiek
spos�b.
66..44.. KKoommeennddaa ,,,,bboooottoopptt''''
W systemach z pami�ci� flash, takich jak AlphaPC64, EB164 i EB66+
istnieje kilka opcji �adowania. S� one zmieniane komend� bootopt.
Posiada ona jeden argument, numer dziesi�tny, kt�ry jest typem obrazu
do za�adowania po w��czeniu zasilania/prze�adowaniu systemu.
00 �adowanie Monitora P�yt Ewaluacyjnych,
11 �adowanie firmware'u Windows NT ARC.
W celu �adowania MILO z pami�ci flash, potrzebna jest opcja
inicjalizacyjna, znacz�ca ,,za�aduj N-ty obraz z pami�ci flash''.
Jako argument, musisz poda� 128 + N, wi�c je�eli MILO jest trzecim
obrazem, u�yjesz komendy
MILO> bootopt 131
UUwwaaggaa:: B�d� bardzo ostro�ny z t� komend�. Nigdy nie ustawiaj bootopt
na 0 (Monitor P�yt Ewaluacyjnych), zamiast tego u�yj zworek na p�ycie
g��wnej.
77.. UU��yywwaanniiee pprrooggrraammuu zzaarrzz��ddzzaajj��cceeggoo ppaammii��ccii�� ffllaasshh
Komenda run jest u�ywana do uruchamiania programu zarz�dzaj�cego
pami�ci� flash (flash management utility, dalej b�d� nazywa� go
,,fmu'' - przyp. t�um.). Zanim zaczniesz, b�dziesz potrzebowa�
urz�dzenia dost�pnego MILO i zawieraj�cego fmu. Mo�e on by� (tak jak
vmlinux) spakowany gzipem. Fmu uruchamia si� nast�puj�c� komend�:
MILO> fd0:fmu.gz
Kiedy program zostanie za�adowany i zainicjalizowany, fmu poda troch�
informacji o urz�dzeniu flash, oraz wy�wietli lini� polece�. Znowu,
komenda help jest bardzo u�yteczna.
Linux MILO Flash Management Utility V1.0 Linux MILO Flash Management Utility V1.0
Flash device is an Intel 28f008SA Urz�dzenie flash to Intel 28f008SA
16 segments, each of 0x10000 (65536) bytes 16 segment�w, ka�dy po 0x10000 (65536) bajt�w
Scanning Flash blocks for usage Wykrywam zaj�to�� blok�w Flash
Block 12 contains environment variables Blok 12 zawiera zmienne �rodowiskowe
FMU> FMU>
UUwwaaggaa:: W systemach obs�uguj�cych zmienne �rodowiskowe, gdzie istnieje
wi�cej ni� jeden blok flash (np. AlphaPC64), fmu b�dzie szuka� bloku
na zmienne �rodowiskowe MILO. Je�eli taki blok istnieje, fmu powie,
gdzie si� on znajduje. Je�li nie, musisz u�y� komendy environment,
�eby ustawi� blok i go zainicjalizowa�. W powy�szym przyk�adzie, blok
12 zawiera zmienne �rodowiskowe MILO.
77..11.. KKoommeennddaa ,,,,hheellpp''''
FMU> help
FMU command summary:
list - List the contents of flash
program - Program an image into flash
quit - Quit
environment - Set which block should contain the environment variables
bootopt num - Select firmware type to use on next power up
help - Print this help text
FMU>
------------------------------------------------------------------------------------
FMU> help
Opis komend FMU:
list - Wy�wietl zawarto�� pami�ci flash
program - Zapisz obraz w pami�ci flash
quit - Zako�cz program
environment - Ustaw blok, kt�ry powinien zawiera� zmienne �rodowiskowe
bootopt numer - Wybierz typ firmware'u do u�ycia przy nast�pnym uruchomieniu
help - Wy�wietl ten tekst pomocy
FMU>
UUwwaaggaa:: Komendy environment i bootopt s� dost�pne tylko w p�ytach
EB66+, AlphaPC64, EB164 i PC164 (i ich klonach).
77..22.. KKoommeennddaa ,,,,lliisstt''''
Komenda ,,list'' pokazuje zawarto�� pami�ci flash. Je�eli istnieje
wi�cej ni� jeden blok, pokazana jest zawarto�� ka�dego. W poni�szym
przyk�adzie mo�esz zobaczy�, �e Windows NT ARC u�ywa blok 4-7 i blok
15.
FMU> list
Flash block: 0:DBM 1:DBM 2:DBM 3:WNT 4:WNT 5:WNT 6:WNT 7:WNT 8:MILO
9:MILO 10:MILO 11:MILO 12:MILO 13:U 14:U 15:WNT
Listing flash Images
Flash image starting at block 0:
Firmware Id: 0 (Alpha Evaluation Board Debug Monitor)
Image size is 191248 bytes (3 blocks)
Executing at 0x300000
Flash image starting at block 3:
Firmware Id: 1 (Windows NT ARC)
Image size is 277664 bytes (5 blocks)
Executing at 0x300000
Flash image starting at block 8:
Firmware Id: 7 (MILO/Linux)
Image size is 217896 bytes (4 blocks)
Executing at 0x200000
FMU>
------------------------------------------------------------------------------------
FMU> list
Bloki Flash: 0:DBM 1:DBM 2:DBM 3:WNT 4:WNT 5:WNT 6:WNT 7:WNT 8:MILO
9:MILO 10:MILO 11:MILO 12:MILO 13:U 14:U 15:WNT
Wy�wietlam Obrazy Flash
Obraz Flash (pocz�tek - blok 0)
Firmware Id: 0 (Alpha Evaluation Board Debug Monitor)
Rozmiar obrazu: 191248 bajt�w (3 bloki)
Wykonuje si� na 0x300000
Obraz Flash (pocz�tek - blok 3)
Firmware Id: 1 (Windows NT ARC)
Rozmiar obrazu: 277664 bajt�w (5 blok�w)
Wykonuje si� na 0x300000
Obraz Flash (pocz�tek - blok 8)
Firmware Id: 7 (MILO/Linux)
Rozmiar obrazu: 217896 bajt�w (4 bloki)
Wykonuje si� na 0x200000
FMU>
77..33.. KKoommeennddaa ,,,,pprrooggrraamm''''
Fmu zawiera skompresowan� kopi� obrazu flash MILO. Komenda ,,program''
pozwala zapisa� ten obraz w pami�ci flash. Komenda ta pozwoli ci
wycofa� si�, ale zanim j� uruchomisz, powiniene� u�y� komendy
,,list'', �eby zobaczy� gdzie nagra� MILO. Je�eli MILO znajduje si�
ju� w pami�ci flash, fmu zapyta si�, czy go skasowa�.
FMU> program
Image is:
Firmware Id: 7 (MILO/Linux)
Image size is 217896 bytes (4 blocks)
Executing at 0x200000
Found existing image at block 8
Overwrite existing image? (N/y)? y
Do you really want to do this (y/N)? y
Deleting blocks ready to program: 8 9 10 11
Programming image into flash
Scanning Flash blocks for usage
FMU>
------------------------------------------------------------------------------------
FMU> program
Obraz:
Firmware Id: 7 (MILO/Linux)
Rozmiar obrazu: 217896 bajt�w (4 bloki)
Wykonuje si� na 0x200000
Znaleziono istniej�cy obraz w bloku 8
Nadpisa� istniej�cy obraz? (N/y)? y
Czy napewno chcesz to zrobi�? (y/N)? y
Kasowanie blok�w do programowania: 8 9 10 11
Programowanie obrazu do pami�ci flash
Szukanie zaj�tych blok�w Flash
FMU>
Poczekaj, a� proces zostanie zako�czony przed wy��czeniem systemu.
UUwwaaggaa:: Nie mog� wyrazi� dostatecznie mocno, jak musisz by� ostro�ny,
�eby nie nadpisa� istniej�cego obrazu flash, kt�ry mo�e by� ci
potrzebny, lub nie zniszczy� swojej p�yty g��wnej. Dobr� zasad� jest
niekasowanie Monitora Ewaluacyjnego. (!!! - przyp. t�um.)
77..44.. KKoommeennddaa ,,,,eennvviirroonnmmeenntt''''
Wybiera blok flash maj�cy zawiera� zmienne �rodowiskowe MILO.
77..55.. KKoommeennddaa ,,,,bboooottoopptt''''
Jest to ta sama komenda, co istniej�ca w MILO, zobacz sekcj�
(``Komenda ,,bootopt'''').
77..66.. KKoommeennddaa ,,,,qquuiitt''''
Jest to raczej bez znaczenia. Jedyna droga powrotna do MILO (lub
czegokolwiek innego), kiedy fmu dzia�a, to restart systemu.
88.. OOggrraanniicczzeenniiaa
Niestety, �wiat nie jest doskona�y, jest wi�c jak zawsze par�
ogranicze�, o kt�rych powiniene� wiedzie�.
MILO nie jest przeznaczony do �adowania system�w operacyjnych innych
ni� Linux, jednak�e mo�e �adowa� obrazy ��czone do dzia�ania w tym
samym miejscu pami�ci co Linux (czyli 0xFFFFFC0000310000). W ten
spos�b mo�e dzia�a� fmu.
�r�d�a kodu PAL za��czone w miniboot/palcode/_c_o_�_t_a_m s� poprawne,
jednak�e s� problemy, kiedy zostaj� zbudowane przy u�yciu najnowszego
gas (assembler GNU - przyp. t�um.). _M_o_�_n_a kompilowa� je, u�ywaj�c
bardzo starego gas'a za��czonego w oprogramowanu do P�yt Ewaluacyjnych
Alpha (i w ten spos�b zosta�y zbudowane). Pr�buj� nam�wi� kogo�, �eby
naprawi� nowy gas. Obecnie jednak, jako obej�cie, umie�ci�em pre-
kompilowany kod PAL dla obs�ugiwanych p�yt, a David Mosberger-Tang
umie�ci� naprawiony gas na swoim serwerze ftp.
99.. RRoozzwwii��zzyywwaanniiee pprroobblleemm��ww
Oto kilka cz�sto spotykanych problem�w razem z rozwi�zaniami.
CCzzyyttaanniiee ddyysskkiieetteekk MMSS--DDOOSS zz MMoonniittoorraa PP��yytt EEwwaalluuaaccyyjjnnyycchh..
Niekt�re starsze wersje Monitora P�yt Ewaluacyjnych (przed 2.0) mia�y
problemy z odczytywaniem dyskietek w formacie DOS zapisanych pod
Linuxem. Zazwyczaj Monitor mo�e wczyta� kilka pierwszych sektor�w, ale
po chwili wchodzi w niesko�czon� p�tl� b��d�w o z�ych sektorach.
Istnieje te� pewna niekompatybilno�� mi�dzy formatem DOS oczekiwanym
przez Monitor Ewaluacyjny, a Linuxow� implementacj� DOSFS. �eby
skr�ci� t� d�ug� histori�: je�eli napotkasz ten problem, spr�buj u�y�
DOS'a do zapisania dyskietki. Na przyk�ad je�eli nie �aduje si� plik
MILO.cab, u�yj komputera z DOSem - w�� dyskietk� i napisz:
copy a:MILO.cab c:
copy c:MILO.cab a:
del c:MILO.cab
Spr�buj ponownie wystartowa� MILO z tej dyskietki. Powinno to
rozwi�za� problem.
MMIILLOO wwyy��wwiieettllaa dd��uugg�� sseekkwweennccjj�� zznnaakk��ww ,,,,oo>>'''' ii nniiee pprrzzyyjjmmuujjee ppoolleeccee��..
Dzieje si� to zazwyczaj kiedy MILO zosta� skompilowany z portem COM1
jako drugorz�dnym urz�dzeniem konsoli. W takim przypadku, MILO kopiuje
wyj�cie na port COM1 i akceptuje wej�cie r�wnie� z tego portu. Jest to
�wietne do wykrywania b��d�w, ale nie tak �wietne je�eli masz
pod��czone co� innego ni� terminal. Je�eli to si� dzieje, od��cz lub
wy��cz to urz�dzenie, do chwili uruchomienia j�dra Linuxa. Kiedy Linux
dzia�a, wszystko b�dzie dzia�a�o tak jak powinno.
MMIILLOO sskkaarr��yy ssii�� nnaa zz��yy nnuummeerr mmaaggiicczznnyy oobbrraazzuu jj��ddrraa
Starsze wersje MILO nie obs�ugiwa�y formatu binarnego ELF, nie mog�y
wi�c rozpozna� obrazu ELF. Je�eli napotkasz ten problem, �ci�gnij
najnowsz� wersj� MILO. Wszystkie wersje po 2.0.20 obs�uguj� ELF. Z
drugiej strony, mo�e to by� wina zniszczonego obrazu. Powiniene� te�
pami�ta�, �e MILO sam nie rozpoznaje jeszcze obraz�w skompresowanych
GZIP'em - musisz doda� rozszerzenie ,,.gz'' do nazwy pliku.
MMIILLOO wwyy��wwiieettllaa ,,,,......ttuurrnniinngg oonn vviirrttuuaall aaddddrreessssiinngg aanndd jjuummppiinngg ttoo tthhee
LLiinnuuxx KKeerrnneell'''' ii nniicc ssii�� nniiee ddzziieejjee
Oczywisty problem, to to, �e j�dro jest �le skompilowane, albo
skompilowane na inny system Alpha. Inny to kompilacja j�dra na
urz�dzenie VGA, kiedy p�yta posiada TGA (Zlxp) (lub odwrotnie). Dobrze
jest wbudowa� w j�dro wyj�cie na COM1 i pod��czy� terminal, lub
spr�bowa� u�y� j�dro z dystrybucji Linuxa, kt�r� zainstalowa�e�.
MMIILLOO nniiee rroozzppoozznnaajjee ddyysskkuu SSCCSSII
Standardowe obrazy MILO posiadaj� wszystkie stabilne (dla Alphy)
sterowniki urz�dze� (na razie s� to NCR 810, QLOGIC ISP, Buslogic i
Adaptec 2940/3940) (uwaga - jest to stare HOWTO, a wi�c du�o si�
zmieni�o - przyp. t�um.). Je�eli twoja karta nie jest do��czona, mo�e
to znaczy�, �e sterownik dla Alphy nie jest jeszcze stabilny. Spr�buj
u�y� najnowszych obraz�w MILO. Mo�esz dowiedzie� si�, jakie urz�dzenia
SCSI zosta�y wkompilowane w obraz MILO, u�ywaj�c komendy ,,show''.
1100.. PPooddzzii��kkoowwaanniiaa
Chcia�bym podzi�kowa�:
� Eric'owi Rasmussen'owi i Eillen Samberg - autorom PALcode,
� Jim'owi Paradis'owi za sterownik klawiatury i oryginalny interfejs
MILO,
� Jay'owi Estabrook'owi za jego pomoc i poprawki,
� David'owi Mosberger-Tang'owi za darmowy kod emulacji BIOS'u i jego
pomoc,
� i jako ostatniemu (ale _n_i_e najmniej wa�nemu) Linus'owi Torvalds'owi
za kod zegara i j�dro Linuxa.
Jest jeszcze kilka rzeczy, kt�re powinny by� zrobione, wi�c je�eli
chcesz co� doda�, daj mi zna� (
[email protected]), �eby�my
nie duplikowali swoich wysi�k�w.
Na ko�cu, du�e ,,dzi�kuj�'' dla Digitala, za produkowanie tak
�wietnego procesora (i p�acenie mi za to).
1111.. OOdd tt��uummaacczzaa
Je�eli znajdziesz jakie� b��dy, daj mi zna�.