46
|
1 2014/02/14 (Fri)
|
39
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2
|
Masataka Kohagura <e085726@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3 [memo]
|
46
|
4 mmap は仮想アドレスを取得する。
|
|
5 ヒープ領域を伸ばせなくても、別の空き領域を自動的に取得してそこにメモリを確保する。
|
|
6 -> しかし、連続じゃないということは、その領域を探すという段階にオーバーヘッドがでるのでは
|
|
7
|
|
8 mmap は kernel の機能を利用するため、OS依存になる。
|
|
9 (OS によって kernel がかわるため)
|
|
10
|
|
11 *要検証
|
|
12 Linux の malloc は
|
|
13 128KB未満のメモリー要求に対してはヒープから割り当てる。(brk() でとってるらしい)
|
|
14 128KB以上のメモリー要求に対してはmmapを使用する。
|
|
15 らしい
|
|
16 -> あれ??つまり malloc は物理メモリアドレスを連続で確保しているわけではないので、遅くならね??
|
|
17 -> 連続で格納されていなくても、断片的にすでに読み込まれているから早いのか??
|
|
18 -> read 関数よりも、malloc の調整次第でもっと速くなるのでは
|
|
19
|
|
20
|
|
21
|
|
22 [卒論]
|
|
23 いままでしてきた過程をすべて書くことによって説得力が徐々に湧いていくよね
|