Влияет ли флаг защиты на совместное использование процессов? Если у меня есть область памяти mmapped, защищенная PROT_READ | PROT_WRITE, будет ли она полностью общей, пока я в нее не записал?
int prot = PROT_READ|PROT_EXEC;
image = mmap(NULL, filesize, prot, MAP_PRIVATE, fildes, 0);
против
int prot = PROT_READ|PROT_WRITE|PROT_EXEC;
image = mmap(...)
Я бы хотел внести небольшую модификацию в небольшую часть области памяти после того, как я отобразил ее, а затем заново защитить все, потому что это проще, чем защищать небольшие части, когда это необходимо.
Вопрос в том, приводит ли он к принудительному принудительному копированию всего файла, скопированного для процесса, или только частей, которые я изменил для процесса?