3
カーネルmmap操作のメモリサイズ
Linuxがメインメモリにファイルをmmapsする方法(私のコンテキストでは実行するためですが、mmapプロセスは書き込みと読み取りでも同じだと思います)とそれが使用するサイズに興味があります。 したがって、Linuxが通常4kBのページサイズでページングを使用していることを知っています(カーネル内でこのサイズを見つけることができますか?)。しかし、これは割り当てられたメモリに対して正確に何を意味するのでしょう。数千バイトのサイズのバイナリがあると仮定し、5812Bとだけ言って実行します。カーネルで何が起こるか:2 * 4kBを割り当ててから、5812Bをこのスペースにコピーし、2ページ目で3KBを超えるメインメモリを浪費していますか? ページサイズが定義されているカーネルソース内のファイルをだれかが知っているとすばらしいでしょう。 私の2番目の質問も非常に単純だと思います。ファイルサイズとして5812Bを想定しました。このサイズは単にiノードから取得されるのは正しいのでしょうか。