MC68EZ328 DragonOne SBCでuClinuxを動かす(6) ~initスレッドを追う~

MC68EZ328

ようやくinitスレッドの起動までできました。これまでたどったソースから、Linuxの起動メッセージの以下の部分まではたどり着いたはずです。

以降はinitスレッドでの処理になります。この中でルートディレクトリのmount処理も行われます。

initスレッド

実はinitスレッドはシンプルです。カーネルの初期化を進め最終的にはinitプロセスを起動します。今回はromfsのルートファイルシステムがmountできていないのが問題なのでそこを中心に追います。

今回問題となっているNo init foundやinitial consoleの文字が見えます。まずはdo_basic_setup()をみておきます。

do_basic_setup

do_basic_setupではソケットの初期化と必要なスレッドの初期化を行います。mountに関するものは無さそうです。

すでに何度も確認しているのでわかっているのですが、ルートファイルシステムをmountしているのは、prepare_namespace()です。ここを中心にみていきます。(続く)

タイトルとURLをコピーしました