Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   Технический флейм »   Окончание производства 286-х
RSS

Окончание производства 286-х

<<Назад  Вперед>> Страницы: 1 2 3 * 4 5
Печать
 
borisfox
Advanced Member


Откуда: Хабаровск
Всего сообщений: 946
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 июля 2008
madmaks написал:
[q]
borisfox написал:
[q]
невозможность возврата в реальный режим иначе как через сброс процессора
[/q]
тут на форуме было про недокументированные команды переключения контекста, не помню что именно, но поищите это впрочем, я не уверен, что этим можно переключить режим из защищенного в реальный, даже загрузкой флагов.
[/q]
В ссылке речь про LOADALL в 386 процессорах...
В любом случае, если в каких-то версиях 286 и можно было вернуться через LOADALL - это ведь недокументированная возможность - значит, закладываться на то, что она будет всегда и во всех модификациях процессора, было нельзя.
286 выводили в реальный режим через запись специального значения в определённую ячейку CMOS, и последующий сброс через ОМЭВМ контроллера клавиатуры. При старте BIOS проверял это значение, и если оно было - передавал управление обратно сбросившей программе (но уже в реальном режиме), если не было - запускал процедуру POST. Но такой способ больше напоминает хак, чем нормальный путь...
http://www.x86.org/articles/pmbasics/tspec_a1_doc.htm
Способ с тройным исключением немногим лучше.
http://www.x86.org/productivity/triplefault.htm
borisfox
Advanced Member


Откуда: Хабаровск
Всего сообщений: 946
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 июля 2008
madmaks написал:
[q]
borisfox написал:
[q]
кому был нужен ущербный защищённый режим 286 во встроенных системах
[/q]
В чем же его ущербность?
[/q]
В 16-разрядности виртуальных адресов, в неудобстве программирования с сегментной адресацией, в отсутствии страничной организации памяти...
[q]
Помимо интел такие процессоры, программно совместимые с 286, выпускали все, кому не лень - амд, нек, и т.д. На счет наших заводов - не знаю.
[/q]
Наши тоже вроде пытались сделать клон под закат эпохи, но рабочие БИС со столь высокой степенью интеграции на отечественных техпроцессах получались только чудом, да и никому оно особо уже было не нужно - железный занавес кончился, пошёл импорт...
1847ВМ286, что-ли, называлось. Живьём я не видел.
0leg
Advanced Member


Откуда: Город-герой Тула
Всего сообщений: 1991
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
6 окт. 2007
borisfox,
> В любом случае, если в каких-то версиях 286 и можно было вернуться через LOADALL
Ну почему же "в каких-то"? Вообще ни в каких. Об этой команде можно почитать, напр., у Фроловых в 6 томе Библиотеки Системного Программиста. Там явно сказано: "... эту команду [loadall286] нельзя использовать для переключения процессора из защищённого в реальный режим.".

madmax,
>> кому был нужен ущербный защищённый режим 286 во встроенных системах
> В чем же его ущербность?
Странный вопрос... Понятия "страничная виртуальная память", "режим VM86" тебе о чём-нибудь говорят?
madmaks
Full Member


Откуда: Россия, Ярославская обл., г. Углич
Всего сообщений: 204
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
23 сен. 2008
borisfox написал:
[q]
В ссылке речь про LOADALL в 386 процессорах...
[/q]
Да, но там на странице сразу еще есть ссылка Read LOADALL magazine article and download LOADALL demo source code. . Можно поискать в сети "LOADALL 286" и т.п., чтобы выяснить вопрос о сбросе при перезагрузке регистра MSW при LOADALL, если это важно - не сбрасываться.


borisfox написал:
[q]
LOADALL - это ведь недокументированная возможность
[/q]
Да, недокументированная возможность это плохо, но применительно к LOADALL это скорее диагностическая возможность процессора, поскольку все процессоры при производстве нуждаются в диагностике, то можно рассчитывать на процессор, который ее имеет. Для больших партий процессоров можно просто заказать у производителя переход по флагу в MSW, когда сброс выполнят небольшие внутренние схемы процессора.


borisfox написал:
[q]
Но такой способ больше напоминает хак, чем нормальный путь
[/q]
Сбрасываться, вероятно, тяжело только в архитектуре IBM PC, в иных архитектурах, нежели IBM PC, переход в реальный режим может быть не очень нужен, так как используется только при инициализации самого BIOS после reset, для инициализации таблиц защищенного режима в ОЗУ (для надежности многозадачной системы функции BIOS тоже должны работать в защищенном режиме).
madmaks
Full Member


Откуда: Россия, Ярославская обл., г. Углич
Всего сообщений: 204
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
23 сен. 2008
borisfox написал:
[q]
В 16-разрядности виртуальных адресов
[/q]
Да ведь это 16 разрядный процессор! И что, он сильно хуже 186-го в этом плане?
madmaks
Full Member


Откуда: Россия, Ярославская обл., г. Углич
Всего сообщений: 204
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
23 сен. 2008
0leg написал:
[q]
Странный вопрос... Понятия "страничная виртуальная память"
[/q]
Ничего странного, вы сами то писали программы под 286 защищенный режим, в чем лично вы нашли проблему с виртуальной памятью 286-го?

(ред)Кстати,

0leg написал:
[q]
у Фроловых в 6 томе Библиотеки Системного Программиста. Там явно сказано: "... эту команду [loadall286] нельзя использовать для переключения процессора из защищённого в реальный режим
[/q]
Тогда как вы это объясните:

"Read LOADALL magazine article and download LOADALL demo source code" написал:
[q]
LOADALL loads all of the CPU registers (including MSW, GDTR, CSBASE, ESACCESS) from a memory image. You can execute LOADALL in real or protected mode.
...
Table 1 — 80286 LOADALL Table
...
[804] MSW DW ?
...
[/q]
Что же будет, если в защищенном режиме флаг MSW будет сигналить о реальном режиме?
borisfox
Advanced Member


Откуда: Хабаровск
Всего сообщений: 946
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 июля 2008
madmaks написал:
[q]
borisfox написал:
[q]
В 16-разрядности виртуальных адресов
[/q]
Да ведь это 16 разрядный процессор! И что, он сильно хуже 186-го в этом плане?
[/q]
Не хуже.
Но если говорить о встроенных системах, то во времена 286 столько ресурсов (и поддержка многозадачности с механизмами защиты памяти) в них требовались редко, а когда начали требоваться - уже стал доступен 386.
186 вполне хватало, тем более, что в нём, по сравнению с 286, не было лишнего (для данных систем), а не-лишнее в виде элементов ввода-вывода было.

В защищённом режиме с 16-разрядными указательными регистрами возни с программированием значительно больше, чем в реальном - приходилось организовывать множество относительно мелких дескрипторов...

Что же касается коммерческих ПК, то парк софта, полноценно использующий защищённый режим, просто не успел развиться, как уже сменилось поколение процессоров.
Опять же, отсутствие в многозадачных ОС обратной совместимости с большим спектром наработанного ПО для MS-DOS усугубляло ситуацию...
borisfox
Advanced Member


Откуда: Хабаровск
Всего сообщений: 946
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 июля 2008
madmaks написал:
[q]
0leg написал:
[q]
Странный вопрос... Понятия "страничная виртуальная память"
[/q]
Ничего странного, вы сами то писали программы под 286 защищенный режим, в чем лично вы нашли проблему с виртуальной памятью 286-го?
[/q]
В невозможности организовать виртуальную память вне физического ОЗУ методом paging. Без страничной организации памяти доступен только swapping.
Отличия вкратце описаны у Фроловых: http://www.emanual.ru/download/8259.html
Своппинг использовать, конечно, тоже можно, но некомфортно.
[q]
(ред)Кстати,

0leg написал:
[q]
у Фроловых в 6 томе Библиотеки Системного Программиста. Там явно сказано: "... эту команду [loadall286] нельзя использовать для переключения процессора из защищённого в реальный режим
[/q]
Тогда как вы это объясните:

"Read LOADALL magazine article and download LOADALL demo source code" написал:
[q]
LOADALL loads all of the CPU registers (including MSW, GDTR, CSBASE, ESACCESS) from a memory image. You can execute LOADALL in real or protected mode.
...
Table 1 — 80286 LOADALL Table
...
[804] MSW DW ?
...
[/q]
Что же будет, если в защищенном режиме флаг MSW будет сигналить о реальном режиме?
[/q]
Скорее всего, бит режима будет игнорирован. Эксперимент лично я сам не ставил, но тут утверждается, что возврат в реальный режим с помощью LOADALL невозможен. См. RESTRICTIONS в конце странички.
0leg
Advanced Member


Откуда: Город-герой Тула
Всего сообщений: 1991
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
6 окт. 2007
madmax,
> в чем лично вы нашли проблему с виртуальной памятью 286-го?
Собственно, borisfox уже ответил...

> Что же будет, если в защищенном режиме флаг MSW будет сигналить о реальном режиме?
А самому проверить это что, трудно?
madmaks
Full Member


Откуда: Россия, Ярославская обл., г. Углич
Всего сообщений: 204
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
23 сен. 2008
borisfox написал:
[q]
В защищённом режиме с 16-разрядными указательными регистрами возни с программированием значительно больше
[/q]
Нет-нет, это неправда. Если у вас в устройстве несколько независимых портов, которые надо уметь одновременно обрабатывать, то даже только аппаратные средства процессора по восстановлению/сохранению контекста обработчика наждого порта делают вашу жизнь лучше и веселее, а уж все остальное тем более.

Но никто никогда не мог предсказать с 286 процессором когда и как он выполнит нужную вам команду, откликнется на событие и т.д., т.е. ему нужны аппаратные обвесы (таймеры, буфера и т.д., даже иногда вспомогательные контроллеры), хотябы только чтобы соблюсти временные параметры для аппаратуры - поддержать обработку в реальном времени.


0leg написал:
[q]
Собственно, borisfox уже ответил...
[/q]
Просто интересно, а зачем вам понадобилась именно страничная память? Чем-то наверно не устроили остальные варианты?


borisfox написал:
[q]
Скорее всего, бит режима будет игнорирован.
[/q]
Да, это возможно.
<<Назад  Вперед>> Страницы: 1 2 3 * 4 5
Печать
Полигон-2 »   Технический флейм »   Окончание производства 286-х
RSS

0 посетителей просмотрели эту тему за последние 15 минут
В том числе: 0 гостей, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS