答え1
U-bootの3番目のステップに従うべきだと思います。
3番目のステップはLinuxカーネルをロードするステップです。ただし、Linuxカーネルが制御権を持つ前に、u-bootはデフォルトのパラメータを含むコマンドラインをカーネルに渡します。オペレーティングシステムが起動したら、ターミナルウィンドウに次のように入力してこれらのパラメータを表示できます。
$ cat /proc/cmdline
root=/dev/mmcblk0p2 rootwait rw console=ttyS0,115200n8 console=tty0 no_console_suspend vdaccfg=0xa000 logo=osd1,loaded,0x7900000,720p,full dmfc=3 cvbsmode=576cvbs hdmimode=1080p m_bpp=32 vout=hdmi disablehpd=true
カーネルはハードウェアを初期化し、ルートファイルシステムをマウントし(root = ...カーネルパラメータに従って)、制御フローを/ sbin / initに渡します。 Ubootの詳細が必要な場合は、次の手順に従ってください。協会
答え2
ファイルシステムとメディアによっては、u-bootシェルの下から直接16進数でデータをダンプできます。リバースエンジニアリングを実行している場合は、help
出力を見て、どのタイプのメディアストレージアクセスと操作コマンドをU-bootにコンパイルしたかを確認し、そこから続行してください。メモリにロードされると、時にはメモリなしで「md」を使ってダンプできます。メモリのu-bootセクションの後にロードアドレスを使用してください。それ以外の場合は再起動されます。ほとんどの場合、ファイルシステムは圧縮されており、永久に変更できないことに注意してください(squashfsは一般的です)。時々、u-bootには圧縮されていないデータをロードして読み取ることができるコマンドが付属しています。メモリダンプでファイルシステムを表示するのは面倒なことがあるので、通常はパーティションダンプ全体をローカルで記録し、バイナリファイルに変換してローカルで処理するのが最善です。
init=
シェルプログラムを指すようにカーネルパラメータを変更して、シェルを正常にロードできます。通常、組み込みデバイスの場合はbusyboxなので/bin/ash
。