私は1996年頃からサーバーでLinuxを使用してきました。
$ mount
proc on /proc type proc
/dev/sda1 on / type ext3
/dev/sda2 on /usr type ext3
/dev/sdb1 on /home type ext3
(ここでは関係がないので「オプション」を削除しました。)
最近、私は次のことを見始めました。
$ mount
proc on /proc type proc
/dev/sda1 on / type ext3
/dev/sda2 on /usr type ext3
/dev/sdb1 on /home type ext3
devtmpfs on /dev type devtmpfs
tmpfs on /run type tmpfs
tmpfs on /run/lock type tmpfs
sysfs on /sys type sysfs
tmpfs on /run/shm type tmpfs
devpts on /dev/pts type devpts
これらの追加項目の一部はすべて重複する可能性がありますが、一部は理解できると思いますproc
...
私は最近デスクトップディストリビューション(この場合はLinux Mint、Debian、Kali、その他のディストリビューションで見たことがあります)のライブISOイメージを取得しました。これクレイジー:
$ mount
sysfs on /sys type sysfs
proc on /proc type proc
udev on /dev type devtmpfs
devpts on /dev/pts type devpts
tmpfs on /run type tmpfs
/dev/sda1 on / type ext4
securityfs on /sys/kernel/security type securityfs
tmpfs on /dev/shm type tmpfs
tmpfs on /run/lock type tmpfs
tmpfs on /sys/fs/cgroup type tmpfs
cgroup on /sys/fs/cgroup/systemd type cgroup
pstore on /sys/fs/pstore type pstore
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup
cgroup on /sys/fs/cgroup/pids type cgroup
cgroup on /sys/fs/cgroup/hugetlb type cgroup
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup
cgroup on /sys/fs/cgroup/blkio type cgroup
cgroup on /sys/fs/cgroup/freezer type cgroup
cgroup on /sys/fs/cgroup/perf_event type cgroup
cgroup on /sys/fs/cgroup/cpuset type cgroup
cgroup on /sys/fs/cgroup/memory type cgroup
cgroup on /sys/fs/cgroup/devices type cgroup
systemd-1 on /proc/sys/fs/binfmt_misc type autofs
mqueue on /dev/mqueue type mqueue
debugfs on /sys/kernel/debug type debugfs
hugetlbfs on /dev/hugepages type hugetlbfs
fusectl on /sys/fs/fuse/connections type fusectl
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc
cgmfs on /run/cgmanager/fs type tmpfs
tmpfs on /run/user/1000 type tmpfs
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse
「マウント」が急増する理由は何だろうか?このようなものをcgroups
プログラミングAPIなどを介してアクセスするのではなく、「マウントされた」ファイルシステムで処理するのが特に便利ですか?
ベストアンサー1
APIタイプを選択することです。
以前のシステムでは、そのデバイスでデバイスとIOCTLを使用するのが一般的です(たとえば、仮想端末の作成)。問題は、特定のサービスに接続するために数字を使用する必要があるため、改善/アップグレードが容易ではないことです。また、同じ要求番号が異なるデバイスではまったく異なる意味を持つ可能性があるため、デバイス名を変更した場合(より説明的、仮想マシンなど)、誤ったコマンドが実行される可能性があります(たとえば、プログラムにどのデバイスを提供する必要があるかを混同する場合など)。 )。
だから別のオプションがあります。時には新しいシステムコールが生成されることもありますが、これは通常一般的なケースに当てはまり、新しいシステムコールをたくさん生成することも理想的ではありません。/proc
また、汎用インターフェイスになりますが、このファイルシステム(カーネル側)へのインターフェイスはすべてのサービスで同じであるため、いくつかの問題があります。 APCI とネットワーキングはこれらのインターフェイスを広く使用しています。他のプログラムがprocのファイルにアクセスできる場合は、モジュールを削除する際にいくつかの問題があります。モジュール(メモリを確保するために削除)はもはや問題になりません。
Webソケットはほとんど試みられませんが、使い捨てではあまり便利ではありません。
これにより、新しいファイルシステムを作成するのが簡単になり、ドライバ/サービスにそれを実装するためのより多くの自由が提供されます。もう一つの利点は、データの取得と抽出に使用できるcat
ことです。echo
新機能を簡単にテストして使用できます。