Я перекодирую функцию mallo c, используя brk, sbrk & getpagesize ()
Я должен следовать двум правилам:
1) Я должен настроить свою память на мощность 2
Это означает: если вызов для mallo c равен: mallo c (9); я должен вернуть им блок из 16 байт. (ближайшая степень 2);
2) Я должен выровнять разрыв (сегмент данных конца программы) на нескольких страницах.
Я думаю о правилах, я ' мне интересно, правда ли я;
Правило 1) Мне просто нужно сделать возврат моего mallo c (поэтому адрес, возвращенный mallo c в гекса) кратным 2?
А для правила 2)
разрыв - это последний адрес в куче, если я не ошибаюсь, нужно ли мне устанавливать свой разрыв так (разрыв - начало кучи)% (2 * getpagesize ()) == 0? или просто разрыв% (2 * getpagesize () == 0? Спасибо