私は現在、Linuxシステムについてさらに深く学ぶための一環として、独立してデバイスファイルを研究しています。私の現在の目標は、Debian Linuxを介してブートストラップすることです。 cdebootstrap
。にあるガイドに従った https://www.debian.org/releases/stable/i386/apds03.html 。しかし、私を混乱させるものがあります。私が他のガイドをグーグルしていたとき、彼らは現在のオペレーティングシステムから開発ツリーをバインドするように言った。基本システムの詳細については、最初からインストールしています。このガイドでは、これには3つの異なる方法があると述べています。
- install the makedev package, and create a default set of static device files using (after chrooting)
# apt-get install makedev
# mount none /proc -t proc
# cd /dev
# MAKEDEV generic
- manually create only specific device files using MAKEDEV
- bind mount /dev from your host system on top of /dev in the target system; note that the postinst scripts of some packages may try to create device files, so this option should only be used with care
インストール後のスクリプトでツリーをバインドするのではなく、手動でデバイスを作成している場合、私の質問はmakedevを使用するための一般的な方法は何ですか?一般的なものか標準的なもののどちらが良いでしょうか。そうでない場合は、使用すべきデバイスファイルのリストが他にありますか?使用するときにも気づいた MAKEDEV generic
実際のOSで起動した時よりも、chrootにたくさんのデバイスファイルがリストされています。
また、静的デバイスファイルと動的デバイスファイルの違いは何ですか?これも私の興味を引いた。
3番目に、2番目のオプションで説明したように自分自身のデバイスを手動で作成することにした場合、必要な必須デバイスの基本リストは何ですか?
編集 :makedevを使用するのが最善の策だと私は結論付けました。不要なファイルを含むツリーのクローンを作成することで、奇妙な動作が発生しました。質問を閉じることができます。
私はそれが閉じられるべきではないと思います。私は最初のブートストラップがどのように作られることができるかを見て、本当に同じ問題を通して取り組んでいます。同じ問題を抱えているMYIR Z-Turnボードを使っています。実際のデバイスツリーを取得するにはブートストラップを作成する必要がありますが、そのためにはデバイス用のメモリマップとデバイス用のヘッダファイルが必要です。あなたがそれを知っていたらしかし、その後、プロセスは何ですか?
—
MrMowgli