I/O
Лекция: 12 стр. 1
Предложите свое определение
IA-32
Лекция: 10 стр. 1
Предложите свое определение
IBM
Лекция: 2 стр. 1
Предложите свое определение
identification
Лекция: 15 стр. 1
Предложите свое определение
IDT
Лекция: 3 стр. 1
Предложите свое определение
interleaving
Лекция: 8 стр. 1
Предложите свое определение
interlock
Лекция: 8 стр. 1, 8 стр. 2
Предложите свое определение
interrupt dispatcher
Лекция: 3 стр. 1
Предложите свое определение
interrupt request
Лекция: 3 стр. 1
Предложите свое определение
IPC
Лекция: 7 стр. 1
Предложите свое определение
IRP
Лекция: 12 стр. 1
Предложите свое определение
Ирина Оленина
Ирина Оленина
Николай Сергеев
Николай Сергеев

Здравствуйте! Интересует следующий момент. Как осуществляется контроль доступа по тому или иному адресу с точки зрения обработки процессом кода процесса. Насколько я понял, есть два способа: задание через атрибуты сегмента (чтение, запись, исполнение), либо через атрибуты PDE/PTE (чтение, запись). Но как следует из многочисленных источников, эти механизмы в ОС Windows почти не задействованы. Там ключевую роль играет менеджер памяти, задающий регионы, назначающий им атрибуты (PAGE_READWRITE, PAGE_READONLY, PAGE_EXECUTE, PAGE_EXECUTE_READ, PAGE_EXECUTE_READWRITE, PAGE_NOACCESS, PAGE_GUARD: их гораздо больше, чем можно было бы задать для сегмента памяти) и контролирующий доступ к этим регионам. Непонятно, на каком этапе может включаться в работу этот менеджер памяти? Поскольку процессор может встретить инструкцию: записать такие данные по такому адресу (даже, если этот адрес относится к региону, выделенному менеджером памяти с атрибутом, например, PAGE_READONLY) и ничего не мешает ему это выполнить. Таким образом, менеджер памяти остается в стороне не участвует в процессе...

Александр Ермаков
Александр Ермаков
Беларусь, Минск, Политехническая гимназия