Читаю статью «Virtual Memory Primitives for User Programs» by Appel and Li и хочу потестировать это в линуксе. В section 2 список функциональности, которая требуется от ОС для этого: trap, prot, unprot, map2. С trap все понятно — можно эмулировать page fault через mprotect и потом своим сигнал хэндлером снять протэкшн, обработать «page fault», поставить протэкшн. А как сделать map2? Может можно как-то сделать анонимный mmap чтобы он замапил одну и ту же страницу по разным адресам?
Форум —
Development
