29
4

3 に答える 3

6

mallocコードで使用するとbrk()、最初に呼び出され、ヒープから割り当てられた 0x21000 バイトが表示されます。これが出力したアドレスです。質問 1: 次mallocの要件は、事前に割り当てられたスペースから満たすことができるため、これらの malloc は実際にはを呼び出しませんでした。brkこれは の最適化ですmalloc。次回、その境界を超えてサイズを malloc する場合は、 newbrkが呼び出されます (mmapしきい値より大きくない場合)。

于 2019-01-31T07:57:27.357 に答える