誰かが以下で何が起こっているのか説明できますか?
# This is a very simple, default initramfs
dir /dev 0755 0 0
nod /dev/console 0600 0 0 c 5 1
nod /dev/tty 0666 0 0 c 5 0
nod /dev/null 0600 0 0 c 1 3
nod /dev/mem 0600 0 0 c 1 1
nod /dev/kmem 0600 0 0 c 1 2
nod /dev/zero 0600 0 0 c 1 5
nod /dev/random 0600 0 0 c 1 8
nod /dev/urandom 0600 0 0 c 1 9
dir /dev/pts 0755 0 0
nod /dev/ptmx 0666 0 0 c 5 2
nod /dev/ttyS0 0666 0 0 c 4 64
nod /dev/ttyS1 0666 0 0 c 4 65
nod /dev/ttyS2 0666 0 0 c 4 66
dir /bin 755 0 0
dir /proc 755 0 0
file /bin/hello ${INSTALL_ROOT}/projects/${SAMPLE}/hello/hello 755 0 0
slink /bin/init hello 777 0 0
ここで私たちが実際に達成しようとしているものは何ですか?
これは次のようになります。これ
通常、私たちはinit(コードの最後の行)で(hello)を実行しようとしていることは明らかです。
ベストアンサー1
このファイルは、カーネルソースツリーの gen_init_cpio プログラムの入力ファイルです。
次に適切なcpioアーカイブを作成します。ファイルシステムの初期化ファイル/ディレクトリ/デバイス(=ノード)/...入力ファイルに一覧表示されます。
構文は次のとおりです。
file <name> <location> <mode> <uid> <gid> [<hard links>]
dir <name> <mode> <uid> <gid>\n
nod <name> <mode> <uid> <gid> <dev_type> <maj> <min>
slink <name> <target> <mode> <uid> <gid>
など。
init
起動時に実際に実行されるプログラムは、initramfsのプログラムによって異なります。ここのプログラムinit
はシンボリックリンク到着するhello
。