Что происходит в ОС, когда мы разыменовываем нулевой указатель в C?
Позволять'скажем, есть указатель, и мы инициализируем его с NULL.
int* ptr = NULL;
*ptr = 10;
Теперь программа завершится сбоем, так какptr
ISN»указывает на любой адрес, и мыповторно присвоить значение тому, что является недопустимым доступом. Итак, вопрос в том, что происходит внутри ОС? Происходит ли ошибка страницы / ошибка сегментации? Будет ли ядро искать в таблице страниц? Или авария произошла до этого?
Я знаю, что не будуТакого не происходит в любой программе, но это просто для того, чтобы узнать, что происходит внутри ОС или компилятора в таком случае. И это НЕ дублирующий вопрос.