OnWorks Linux dan Windows Online Workstations

logo

Pengehosan Dalam Talian Percuma untuk Workstation

<Sebelum | Contents [show] | Seterusnya>

Butan rangkaian pada sistem menggunakan perisian tegar U-Boot terdiri daripada tiga langkah: a) mengkonfigurasi rangkaian, b) memuatkan imej (kernel/ramdisk awal/dtb) ke dalam memori dan c) sebenarnya melaksanakan kod yang dimuatkan sebelumnya.

Mula-mula anda perlu mengkonfigurasi rangkaian, sama ada secara automatik melalui DHCP dengan menjalankan


setenv autoload tiada dhcp


atau secara manual dengan menetapkan beberapa pembolehubah persekitaran


setenv ipaddr setenv netmask

setenv serverip setenv dnsip

setenv gatewayip


Jika anda mahu, anda boleh membuat tetapan ini kekal dengan menjalankan


simpan


Selepas itu anda perlu memuatkan imej (kernel/ramdisk awal/dtb) ke dalam ingatan. Ini dilakukan dengan arahan tftpboot, yang perlu disediakan dengan alamat di mana imej akan disimpan dalam ingatan. Malangnya peta memori boleh berbeza-beza dari satu sistem ke sistem, jadi tidak ada peraturan umum alamat yang boleh digunakan untuk ini.


Pada sesetengah sistem, U-Boot mentakrifkan set pembolehubah persekitaran dengan alamat muatan yang sesuai: kernel_addr_r, ramdisk_addr_r dan fdt_addr_r. Anda boleh menyemak sama ada ia ditakrifkan dengan menjalankan


printenv kernel_addr_r ramdisk_addr_r fdt_addr_r


Jika ia tidak ditakrifkan, anda perlu menyemak dokumentasi sistem anda untuk nilai yang sesuai dan menetapkannya secara manual. Untuk sistem berdasarkan SOC Allwinner SunXi (cth Allwinner A10, nama seni bina "sun4i" atau Allwinner A20, nama seni bina "sun7i"), anda boleh cth menggunakan nilai berikut:


setenv kernel_addr_r 0x46000000 setenv fdt_addr_r 0x47000000 setenv ramdisk_addr_r 0x48000000


Apabila alamat muatan ditentukan, anda boleh memuatkan imej ke dalam memori daripada pelayan tftp yang ditakrifkan sebelum ini dengan


tftpboot ${kernel_addr_r} tftpboot ${fdt_addr_r}

tftpboot ${ramdisk_addr_r}


Bahagian ketiga ialah menetapkan baris arahan kernel dan sebenarnya melaksanakan kod yang dimuatkan. U-Boot menghantar kandungan pembolehubah persekitaran "bootargs" sebagai baris arahan kepada kernel, jadi mana-mana parameter untuk kernel dan pemasang - seperti peranti konsol (lihat Bahagian 5.3.1) atau pilihan praseeding (lihat Bahagian 5.3.2 .XNUMX dan Lampiran B) - boleh ditetapkan dengan arahan seperti


setenv bootargs console=ttyS0,115200 rootwait panik=10


Perintah yang tepat untuk melaksanakan kod yang dimuatkan sebelum ini bergantung pada format imej yang digunakan. Dengan uImage/uInitrd, arahannya ialah


but ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}


dan dengan imej Linux asli ia adalah


bootz ${kernel_addr_r} ${ramdisk_addr_r}:${saiz fail} ${fdt_addr_r}


Nota: Apabila boot imej linux standard, adalah penting untuk memuatkan imej ramdisk awal selepas kernel dan dtb kerana U-Boot menetapkan pembolehubah saiz fail kepada saiz fail terakhir yang dimuatkan dan arahan bootz memerlukan saiz imej ramdisk untuk bekerja dengan betul. Dalam kes but kernel khusus platform, iaitu kernel tanpa pepohon peranti, hanya tinggalkan parameter ${fdt_addr_r}.


5.2. Kebolehcapaian

Pengkomputeran Awan OS teratas di OnWorks: