Что произойдет, если GDT будет изменен во время выполнения программы? - PullRequest
1 голос
/ 29 февраля 2020

Что произойдет, если GDT будет изменен во время выполнения программы? Есть ли какой-либо физический регистр или что-то еще, что контролирует, изменяется ли GDT при выполнении программы?

1 Ответ

4 голосов
/ 29 февраля 2020

Ничего не изменится, пока что-то не попытается извлечь из GDT. Это может быть регистр загрузки в сегмент, прерывание, дальний вызов / возврат и т. Д. c ..

. В этих случаях теневая часть регистра сегмента сохраняет дескриптор, на который ссылался селектор, последний раз загруженный в этот регистр. регистр.

...