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
Запуск на 80486
-
Собственно сабж. Для этого надо убрать rdtsc.
rdtsc используют драйвера для миллисекундных задержек, слишком маленьких для планировщика.
Сделаем мир лучше!
Ну ведь как-то работали раньше компьютеры без rdtsc? Тем более на 486х набор периферии крайне ограничен.
Для отдельной ветки/правила сборки ядра - почему бы и нет?
Для отдельной ветки/правила сборки ядра - почему бы и нет?
В те времена частоты процессора были несколько иные (и не было суперскалярности), так что задержки делали с помощью циклов из nop.
В драйвере sb16 ещё есть пример способа задержек - через чтение io портов.
В общем, если и делать поддержку 486, то в отдельной ветке, которую на локалхосте и оставить.
Я в своё время пытался, но наивно понадеялся сделать эмуляцию rdtsc через таймер (дабы правильно считались всякие проценты загруженности процессора приложениями).
И да, учти что ещё надо будет тогда переписать определение частоты процессора, оно тоже использует rdtsc.
В драйвере sb16 ещё есть пример способа задержек - через чтение io портов.
В общем, если и делать поддержку 486, то в отдельной ветке, которую на локалхосте и оставить.
Я в своё время пытался, но наивно понадеялся сделать эмуляцию rdtsc через таймер (дабы правильно считались всякие проценты загруженности процессора приложениями).
И да, учти что ещё надо будет тогда переписать определение частоты процессора, оно тоже использует rdtsc.
не только.SoUrcerer wrote:... Для этого надо убрать rdtsc.
есть еще "большие" страницы в init.inc и во фреймбуфере, MTRRs, и что еще там RDMSR использует?
Но даже и это по большому счету не важно. Важно движение вперед, ДУХ этого движения.
Я категорически против ретросовместимости.
И против эмуляторов.
Другие аргументы "за" есть?
Last edited by art_zh on Wed Apr 04, 2012 9:09 pm, edited 1 time in total.
Евангелие от Иоанна: стих 1[/size]
Code: Select all
; В начале было Слово:
B32: mov ax, os_stack ; Selector for os
Если бы были массовые устройства на основе 386/486 процесоров, то имело бы смысл. А так ради поднять 1-2 железки? Овчинка выделки не стоит.
Окей, заметано.
Не могу не потроллить: http://www.bifferos.co.uk/
Spoiler:
серьёзно же говоря, за 35 фунтов можно получить на порядок более крутую железку на нормальной архитектуре, так что оно того не стоитто, что на пережитки прошлого ориентироваться не стоит, оно понятно, но вот нужда заставила.
есть кучка индустриальных компов с 486DX на SOC чипах STPD Atlas (стандарт РС104), и эта горсть ржавеет и тормозит, а хотелось бы её поднять, да и сама суть операционки на ассемблере весом в пару метров говорит сама за себя, даже орёт - "ставь меня на куды угодно и пусть это будет хоть 8086! " преувеличиваю кочно, но тем не менее..
Вы, господа умные, подскажите мне пожалуйста, лаптю контроллерному, в какую сторону копать, чтоб ядро подправить для 486-х, нужно мне выжить из этих компов ещё года 2... не зря же я их оживлял уже все раза по 4 а то и более
есть кучка индустриальных компов с 486DX на SOC чипах STPD Atlas (стандарт РС104), и эта горсть ржавеет и тормозит, а хотелось бы её поднять, да и сама суть операционки на ассемблере весом в пару метров говорит сама за себя, даже орёт - "ставь меня на куды угодно и пусть это будет хоть 8086! " преувеличиваю кочно, но тем не менее..
Вы, господа умные, подскажите мне пожалуйста, лаптю контроллерному, в какую сторону копать, чтоб ядро подправить для 486-х, нужно мне выжить из этих компов ещё года 2... не зря же я их оживлял уже все раза по 4 а то и более
Тут уже писали примерно... Нужно разбираться серьезно, скорее всего.
red.kaktus.37: Ну теоретически можно, как сказали выше, тебе нужно будет команду RDTSC как-то переписать. Вопрос, сколько времени и денег у тебя это всё займёт? И сколько у тебя этих компьютеров? Есть не очень дорогие компьютеры на процессоре, где KolibriOS уже работает: http://www.ipc2u.ru/catalog/U/UP/57814.html
EDIT: А ты вообще пробовал там Колибри запустить? Может, из-за того, что это SoC, там уже RDTSC запихали, и тогда вопрос отпадает сам собой (как раз Vortex86DX с моего линка это такой же случай).
EDIT: А ты вообще пробовал там Колибри запустить? Может, из-за того, что это SoC, там уже RDTSC запихали, и тогда вопрос отпадает сам собой (как раз Vortex86DX с моего линка это такой же случай).
yogev_ezra: пробовал и так и сяк... после сохранения конфига (abcd) на пару секунд думки и в ребут.
денег мало, времени много, компов около 14 (если после реболла не помрут, то ещё 3)
у меня AAEON PFM-530I
а на вортексах всё норм грузит, в смысле без допила ядра?
денег мало, времени много, компов около 14 (если после реболла не помрут, то ещё 3)
у меня AAEON PFM-530I
а на вортексах всё норм грузит, в смысле без допила ядра?
Гмм.. abcd.. версия 0.7.7.0? Последнюю ночную сборку пробовал? Они разительно отличаются в лучшую сторонуred.kaktus.37 wrote:пробовал и так и сяк... после сохранения конфига (abcd) на пару секунд думки и в ребут.
Если сам делаешь реболл BGA чипов, тогда у тебя всё серьёзно, и тебе к нам Тем более, если денег мало и времени много! Начинай изучать код Колибри помаленьку, спрашивай вопросы. Сделать то, что ты хочешь, реально.red.kaktus.37 wrote:денег мало, времени много, компов около 14 (если после реболла не помрут, то ещё 3)
у меня AAEON PFM-530I
На SX нет. На DX, MX и всех остальных - да. Здесь половина разработчиков на вортексах тестируетred.kaktus.37 wrote:а на вортексах всё норм грузит?
Система работает с процессорами 586 и выше.
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
Ну неправда твоя же. Vortex86DX это 486+TSC+ещё вещи. Но не 586. Я против добавления обратной совместимости в транк в SVN, но для своего личного пользования человек вполне может попробовать это сделать.Mario_r4 wrote:Система работает с процессорами 586 и выше.
Who is online
Users browsing this forum: No registered users and 48 guests