Linuxでダイナミックライブラリがロードされ、ディスク上で更新された後、そのライブラリにリンクする新しいプロセスが開始されるとどうなりますか?新しいプロセスは、メモリ内の古いコピーまたはディスク上の新しいバージョンに対してリンクされていますか?
1 に答える
2
パッケージマネージャーがディスク上のファイルを更新すると、実際には古いファイルが削除され、代わりに新しいファイルが書き込まれます。その結果、すでにライブラリを開いていた古いアプリケーションは、引き続き古いアプリケーションを表示します。古いファイルはディスクとメモリにまだ存在しますが、それを指すファイル名はありません。これらの種類のファイルは孤立と呼ばれます。
一方、ライブラリの交換後にアプリケーションが起動した場合は、ライブラリの更新バージョンの使用を開始してください。
これが、停電後、ログまたは起動中に次のメッセージが表示されることがある理由です。
EXT4-fs (sda3): 34 orphan inodes deleted
古いシステムはクラッシュしたときにこれらのファイルにアクセスしていましたが、アプリケーションには表示されなくなったため、削除する必要があります。
于 2011-04-22T16:15:14.480 に答える