4

共有ライブラリは、ディスク上の同じファイルからロードされるために共有されますか、それとも一度メモリにロードされ、全員が同じメモリ領域を共有するために共有されますか?Linuxでは、それらは一度ロードされ、仮想的にすべてのプロセススペースにマッピングされますか?これはどのように作動しますか?

編集:私が共有と言うとき、私は動的にリンクされていることを意味すると思いますが、違いがある場合は私に知らせてください。

4

1 に答える 1

2

通常は後者です(ただし、$LD_PRELOADこれは変更されます。詳細については、ld.so(8)manページの「環境」セクションを参照してください)。CPU TLBは、ライブラリのページをアプリケーションのプロセススペースにマップするために使用されます。

于 2012-05-16T02:23:21.937 に答える