Здравствуйте igor_shimadzu, Вы писали:
IS>Постораюсь кратко. IS>Микроконтроллер загружается кодом и далее работает под управлением IS>резидентной программы в DOS режиме далее грузится W95(8) и IS>основная управляющая программа Хроиатомасс спектрометром.
Это виндошная аппликация штоли ?
IS>При потытке использоват современные процессоры IS>ошибка загрузки микроконтроллера. IS>Проблема кеш если его отключать то работает.
Ы, часом не на Pascal'е писано ? Если на нем, то это фиксится в загрузчике паскалевском. Поищи где в инете.
IS>IA-32 Intel ® Architecture IS>Software Developer’s Manual Vol ume 3 :System Programming Guide читаю. IS>Как я понимаю можно разделам физической памяти установить IS>тип UC с помощью MTRRs но все это в ring0.
IS>Вопросы: IS>3. Если нет ответов по 1, 2 IS>то остается ли линейное пространство DOS после загрузки IS>W95(8) темже ( в смысле назначения на физическую память)
Скорее всего — да. Из любой досовской проги под виндой ты можешь обратиться к резиденту, который загрузился до винды. Его память сохранилась и мапится во все досовские VM.
Напиши еще один резидент, который будет работать с портами. А к нему будешь обращаться уже после винды. Я таким образом эмулировал COM порт и обмен данными между досовскими окнами. След — память сохранилась. Если ты настроишь соответствующим образом msdos.sys то увидишь, что винда (95) после шутдавна вываливается обратно в дос. И там продолжает работать например Volcoff Commandos.
Первый мег сохраняется со времен 3.11. Эта хрень по идее и в Me будет работать. Но там ты резик не сможешь загрузить до винды.
IS>и как в DOS программе перейти в превелигированный режим ring0.
Можно до винды попробовать это сделать. А во время винды — сложно. Надо дривер писать для ДОСа под винду.