Page 1 of 5

Запуск на 80486

Posted: Mon Apr 02, 2012 1:27 pm
by SoUrcerer
Собственно сабж. Для этого надо убрать rdtsc.
hidnplayr « Пн апр 02, 2012 2:18 pm » if you want to add it, i propose to use a macro called RDTSC, with conditional assembly
hidnplayr « Пн апр 02, 2012 2:19 pm » while you are at it, remove all commented '_rdtsc' code please ;)
hidnplayr « Пн апр 02, 2012 2:22 pm » if NO_RDTSC macro rdtsc { mov eax, 0xffffff mov edx, eax } end if should do it:p
hidnplayr « Пн апр 02, 2012 2:23 pm » mov edx, 0xffffff would be faster on modern CPU's but 486 can only run one instruction at a time, so better to optimise for small code lol
hidnplayr « Пн апр 02, 2012 2:24 pm » unless you want to use the obscure i486 overdrive

Re: Запуск на 80486

Posted: Mon Apr 02, 2012 2:26 pm
by CleverMouse
rdtsc используют драйвера для миллисекундных задержек, слишком маленьких для планировщика.

Re: Запуск на 80486

Posted: Mon Apr 02, 2012 2:58 pm
by SoUrcerer
Ну ведь как-то работали раньше компьютеры без rdtsc? Тем более на 486х набор периферии крайне ограничен.
Для отдельной ветки/правила сборки ядра - почему бы и нет?

Re: Запуск на 80486

Posted: Wed Apr 04, 2012 8:30 pm
by Nable
В те времена частоты процессора были несколько иные (и не было суперскалярности), так что задержки делали с помощью циклов из nop.
В драйвере sb16 ещё есть пример способа задержек - через чтение io портов.

В общем, если и делать поддержку 486, то в отдельной ветке, которую на локалхосте и оставить.
Я в своё время пытался, но наивно понадеялся сделать эмуляцию rdtsc через таймер (дабы правильно считались всякие проценты загруженности процессора приложениями).

И да, учти что ещё надо будет тогда переписать определение частоты процессора, оно тоже использует rdtsc.

Re: Запуск на 80486

Posted: Wed Apr 04, 2012 9:03 pm
by art_zh
SoUrcerer wrote:... Для этого надо убрать rdtsc.
не только.
есть еще "большие" страницы в init.inc и во фреймбуфере, MTRRs, и что еще там RDMSR использует?

Но даже и это по большому счету не важно. Важно движение вперед, ДУХ этого движения.
Я категорически против ретросовместимости.
И против эмуляторов.
Другие аргументы "за" есть?

Re: Запуск на 80486

Posted: Wed Apr 04, 2012 9:07 pm
by Mario
Если бы были массовые устройства на основе 386/486 процесоров, то имело бы смысл. А так ради поднять 1-2 железки? Овчинка выделки не стоит.

Re: Запуск на 80486

Posted: Wed Apr 04, 2012 9:53 pm
by SoUrcerer
Окей, заметано.

Re: Запуск на 80486

Posted: Thu Apr 12, 2012 5:16 pm
by Nable
Не могу не потроллить: http://www.bifferos.co.uk/
Spoiler:серьёзно же говоря, за 35 фунтов можно получить на порядок более крутую железку на нормальной архитектуре, так что оно того не стоит

Re: Запуск на 80486

Posted: Mon Feb 18, 2013 11:46 am
by red.kaktus.37
то, что на пережитки прошлого ориентироваться не стоит, оно понятно, но вот нужда заставила.
есть кучка индустриальных компов с 486DX на SOC чипах STPD Atlas (стандарт РС104), и эта горсть ржавеет и тормозит, а хотелось бы её поднять, да и сама суть операционки на ассемблере весом в пару метров говорит сама за себя, даже орёт - "ставь меня на куды угодно и пусть это будет хоть 8086! :D " преувеличиваю кочно, но тем не менее..
Вы, господа умные, подскажите мне пожалуйста, лаптю контроллерному, в какую сторону копать, чтоб ядро подправить для 486-х, нужно мне выжить из этих компов ещё года 2... не зря же я их оживлял уже все раза по 4 а то и более :(

Re: Запуск на 80486

Posted: Mon Feb 18, 2013 11:59 am
by SoUrcerer
Тут уже писали примерно... Нужно разбираться серьезно, скорее всего.

Re: Запуск на 80486

Posted: Mon Feb 18, 2013 12:13 pm
by yogev_ezra
red.kaktus.37: Ну теоретически можно, как сказали выше, тебе нужно будет команду RDTSC как-то переписать. Вопрос, сколько времени и денег у тебя это всё займёт? И сколько у тебя этих компьютеров? Есть не очень дорогие компьютеры на процессоре, где KolibriOS уже работает: http://www.ipc2u.ru/catalog/U/UP/57814.html

EDIT: А ты вообще пробовал там Колибри запустить? Может, из-за того, что это SoC, там уже RDTSC запихали, и тогда вопрос отпадает сам собой (как раз Vortex86DX с моего линка это такой же случай).

Re: Запуск на 80486

Posted: Mon Feb 18, 2013 12:19 pm
by red.kaktus.37
yogev_ezra: пробовал :( и так и сяк... после сохранения конфига (abcd) на пару секунд думки и в ребут.
денег мало, времени много, компов около 14 (если после реболла не помрут, то ещё 3)
у меня AAEON PFM-530I
а на вортексах всё норм грузит, в смысле без допила ядра?

Re: Запуск на 80486

Posted: Mon Feb 18, 2013 12:27 pm
by yogev_ezra
red.kaktus.37 wrote:пробовал :( и так и сяк... после сохранения конфига (abcd) на пару секунд думки и в ребут.
Гмм.. abcd.. версия 0.7.7.0? Последнюю ночную сборку пробовал? Они разительно отличаются в лучшую сторону :-)
red.kaktus.37 wrote:денег мало, времени много, компов около 14 (если после реболла не помрут, то ещё 3)
у меня AAEON PFM-530I
Если сам делаешь реболл BGA чипов, тогда у тебя всё серьёзно, и тебе к нам 8) Тем более, если денег мало и времени много! Начинай изучать код Колибри помаленьку, спрашивай вопросы. Сделать то, что ты хочешь, реально.
red.kaktus.37 wrote:а на вортексах всё норм грузит?
На SX нет. На DX, MX и всех остальных - да. Здесь половина разработчиков на вортексах тестирует 8)

Re: Запуск на 80486

Posted: Mon Feb 18, 2013 12:34 pm
by Mario_r4
Система работает с процессорами 586 и выше.

Re: Запуск на 80486

Posted: Mon Feb 18, 2013 12:37 pm
by yogev_ezra
Mario_r4 wrote:Система работает с процессорами 586 и выше.
Ну неправда твоя же. Vortex86DX это 486+TSC+ещё вещи. Но не 586. Я против добавления обратной совместимости в транк в SVN, но для своего личного пользования человек вполне может попробовать это сделать.