В общем, это единственный способ.POSIX не предоставляет способ доступа к защите.При использовании в конкретных приложениях, когда вы контролируете код, отображающий страницу, вы можете сохранить флаги где-то в это время, но в общем случае вы должны прочитать /proc/self/maps
.Кроме того, вы можете откатиться до некоторых разрешений по умолчанию, если не можете прочитать /proc
.PROT_READ|PROT_WRITE
, вероятно, является приемлемым значением по умолчанию для большинства вещей, но в некоторых случаях вы также можете захотеть PROT_EXEC
.