|
нет, чипсет ничего не проверяет. он лишь обеспечивает передачу данных по внутренним шинам и поддержку внешних устройств. адресация в защищенном режиме поддерживается непосредственно возможностями процессора. если он обнаруживает, что страница, к которой обратилось приложение, отсутствует в памяти, то происходит прерывание (совершенно прозрачно для программы) и средствами операционной системы эти данные подкачиваются с внешних устройств. т.е. программа обращается к памяти, происходит прерывание, если программа имеет право обратиться к этим данным, процессор решает, где находятся эти данные - в физической памяти, или выгружены на внешний носитель. если выгружены, операционная система знает, где их найти - грубо говоря, дорожка, головка, сектор жесткого диска. потом обращается к железу через драйверы, готовит его к передачи данных в оперативную память. затем устройство инициализирует режим dma и закачивает данные, местонахождение которых указала ему операционная ситстема в оперативную память. операционная система, получив подтверждение, что данные благополучно прибыли, возвращает управление программе, запросившей доступ к этим данным.
привилегии доступа к различным областям памяти, как и адресация, обеспечиваются исключительно аппаратными возможностями процессора. внешние устройства, как и шина pci (она ведь тоже - периферийное устройство по отношению к процессору), понятия не имеют о существовании таблиц дескрипторов, селекторов, уровнях привилегий (они же - кольца защиты) и т.п. периферийные устройства готовятся к передаче данных именно программным путем. к решению судьбы программы и к управлению памятью они никакого отношения не имеют.
защита, повторюсь, реализуется НЕ шиной pci - она лишь используется для связи процессора и памяти с периферией. и запретить доступ к страницам памяти посредством шины pci мы НЕ можем.
поддержка виртуальной памяти в nt и 9х реализована несколько по-разному - это да. лучше продуманы привилегии процессов. частенько синие экраны в 9х возникали из-за ошибок в самой системе - то она страницы из свопа не подгружает, то вовремя не высвободит физическую оперативную память. в nt это продумано лучше. но они обе работают на ОДНОМ железе, используют ОДИНАКОВЫЕ его возможности. разница только в реализации этих возможностей - программная разница, еще раз отмечу.
__________________
Свои носки я стираю Лаской Магия Черного и они надолго сохраняют свой естественный черный цвет!
|