
Я наткнулся на следующееhttp://tldp.org/LDP/tlk/mm/memory.html
Если ошибочный виртуальный адрес недействителен, это означает, что процесс попытался получить доступ к виртуальному адресу, которого у него не должно быть. Возможно, приложение каким-то образом пошло не так, например, записывая случайные адреса в памяти. В этом случае операционная система завершит его, защитив другие процессы в системе от этого вредоносного процесса.
Теперь мои сомнения связаны с этой фразой
«виртуальный адрес, вызывающий ошибку, недействителен».
Что именно имеется в виду?Как может *виртуальный адрес недействителен*? В конце концов, любое 32-битное значение (на 32-битной машине) будет соответствовать некоторому «действительному» адресу в виртуальном адресном пространстве.
решение1
любое 32-битное значение (на 32-битной машине) будет соответствовать некоторому «действительному» адресу в виртуальном адресном пространстве
Неправильно. Записи на странице могут указывать на физическую память, которая не существует или помечена как закрытая, или они могут содержать недопустимый шаблон.