需要のページ付けの場合、アンロードはどのように機能しますか?

需要のページ付けの場合、アンロードはどのように機能しますか?

私が理解したところ、Linuxは要求ページングを使用しています。つまり、プロセスが開始されると、そのプロセスのページだけが実際にファイルシステムからロードされ、このページは実行中にタッチされます。

しかし、ファイルシステムがアンマウントされたことはどういう意味ですか?アンロードとは、アンロードが適用される前に影響を受けるプロセスの残りのページをロードすることを意味しますか(影響を受けたメモリページも「ロック」)。それ以外の場合、後でページエラーが発生したときに削除すると、プロセスの実行に問題が発生しますか?

更新:Stephen Kittが回答を提供した後(この場合は削除を防ぐ)、次の質問でいくつかの追加情報が見つかりました。ブートローダは、ハードドライブにルートファイルシステムをマウントする前にRAMディスクをアンマウントしますか?。そこに提供された説明は同じ結論に続きますが、要求ページングの側面はここでは扱いません。

ベストアンサー1

カーネルは、実行中のプロセスのバックアップストアとして使用されるファイルシステムがアンマウントされるのを防ぎ、この問題を解決します。

$ dd if=/dev/zero of=test.img bs=1M count=50
$ /sbin/mke2fs test.img
$ sudo mount test.img /mnt/temp
$ sudo cp /usr/bin/sleep /mnt/temp
$ /mnt/temp/sleep 120 &
$ sudo umount /mnt/temp
umount: /mnt/temp: target is busy.
$ sudo umount -f /mnt/temp
umount: /mnt/temp: target is busy.
$ wait; sudo umount /mnt/temp

ファイルシステムは、実行中のプロセスが完了した後にのみアンマウントできます。

おすすめ記事