Рейтинг выпускников | 

Дмитрий Мазуркевич
Дмитрий Мазуркевич || рейтинг: 12.00 (общий рейтинг: 24.00)
Россия, г. Санкт-Петербург, ул. Композиторов 20к1
Темы:
предложить дружбу
Алина Трифонова
Алина Трифонова || рейтинг: 12.00 (общий рейтинг: 97.80)
Сергей Яцын
Сергей Яцын || рейтинг: 12.00 (общий рейтинг: 24.00)
Олеся Шушарина
Олеся Шушарина || рейтинг: 12.00 (общий рейтинг: 63.60)
Алексей Федоров
Алексей Федоров || рейтинг: 12.00 (общий рейтинг: 24.00)
Владислав Кузьминых
Владислав Кузьминых || рейтинг: 12.00 (общий рейтинг: 46.00)
Леонид Меркулов
Леонид Меркулов || рейтинг: 12.00 (общий рейтинг: 44.60)
Сергей Мануйлов
Сергей Мануйлов || рейтинг: 12.00 (общий рейтинг: 23.00)
Семён Жуков
Семён Жуков || рейтинг: 12.00 (общий рейтинг: 44.80)
Сергей Мешалкин
Сергей Мешалкин || рейтинг: 12.00 (общий рейтинг: 79.80)
Андрей Ташлыков
Андрей Ташлыков || рейтинг: 12.00 (общий рейтинг: 101.80)
Арина Долгонос
Арина Долгонос || рейтинг: 12.00 (общий рейтинг: 62.30)
Аслан Солтанов
Аслан Солтанов || рейтинг: 12.00 (общий рейтинг: 101.10)
Ирина Оленина
Ирина Оленина
Николай Сергеев
Николай Сергеев

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