Memory Management: Falha de endereços virtuais

2

Me deparei com o seguinte no link

If the faulting virtual address is invalid this means that the process has attempted to access a virtual address that it should not have. Maybe the application has gone wrong in some way, for example writing to random addresses in memory. In this case the operating system will terminate it, protecting the other processes in the system from this rogue process.

Agora, minha dúvida está relacionada a essa frase

"faulting virtual address is invalid".

O que exatamente significa isso? Como um endereço virtual * pode ser invalidado * ? Afinal, qualquer valor de 32 bits (em uma máquina de 32 bits) corresponderia a algum endereço 'válido' no espaço de endereço virtual.

    
por gjain 12.04.2012 / 20:40

1 resposta

1

any 32 bit value (on a 32 bit machine) would correspond to some 'valid' address in the virtual address space

incorreto. As entradas de página podem apontar para a memória física que não existe ou está marcada como fora dos limites ou podem conter um padrão inválido.

    
por 12.04.2012 / 21:14