Page 10 of 15

Posted: Mon May 07, 2007 1:45 pm
by Mario79
Mihail
1. Под ядро выделено, если мне не изменяет память 180 Кб приблизительно. По крайней мере, так было пока ядро было "не плоское". Текущее ядро имеет плоскую модель памяти и сколько там выделено под код ядра надо спросить у Serge.
2. Ядро в дистрибутиве упаковано упаковщиком ядра kerpack, существует версия только для Колибри. Упаковка сделана для экономии места на сильно заполненном рамдиске.
Задумал я встроить форт-систему в ядро КолибриОС.
А зачем? Не хватает возможностей на уровне приложения?

Posted: Mon May 07, 2007 2:49 pm
by Serge
Mihail
Сейчас ядро занимает занимает 176 Кб. Можно увеличить ещё на 6 Кб, дальше ядро начнёт затирать стек. Точный размер выводится при компиляции, сторка "end of kernel code: 0x8003C161". Стек ядра начинается с 0x8003DC00, само ядро загружается по адресу 0x80010000

Posted: Mon May 07, 2007 3:20 pm
by Mihail
Mario79 wrote:
Задумал я встроить форт-систему в ядро КолибриОС.
А зачем? Не хватает возможностей на уровне приложения?
Я уже об этом говорил
http://meos.sysbin.com/viewtopic.php?p= ... ight=#4255

Дополнительная возможность, в любом случае, не помешает.

Posted: Mon May 07, 2007 3:23 pm
by Mihail
Serge wrote:Mihail
Сейчас ядро занимает занимает 176 Кб. Можно увеличить ещё на 6 Кб, дальше ядро начнёт затирать стек.
Увеличение стека помогло. Спасибо.

Posted: Mon May 07, 2007 3:49 pm
by Serge
Mihail

Каким образом ?

Posted: Mon May 07, 2007 5:42 pm
by Mihail
Serge wrote:Mihail

Каким образом ?
На самом деле я соврал.
Забыл перезаписать.

Не сдвинуть
WinMapAddress
display_data

Posted: Mon May 07, 2007 6:06 pm
by Serge
Mihail

Можно сделать в виде драйвера.

Posted: Mon May 07, 2007 7:07 pm
by Mihail
Serge wrote:Mihail

Можно сделать в виде драйвера.
Это как?
В смысле, загрузка в рантайме?
Пример есть?

Posted: Mon May 07, 2007 7:55 pm
by Leency
Mario79 wrote:Ядро в дистрибутиве упаковано упаковщиком ядра kerpack...
У меня начиная где-то с версии ~460 ядро после упаковки перестаёт работать (дистр не грузится). Это у всех так?

Posted: Mon May 07, 2007 11:58 pm
by Serge
Leency

kerpack не рассчитан на плоское ядро.

Posted: Tue May 08, 2007 12:31 am
by Serge
Mihail

При желании драйвер может работать как модуль расширения ядра. Надо только сделать интерфейс между кодом драйвера и ядра. Посмотри статью diamond-а http://meos.sysbin.com/viewtopic.php?t=707 и исходники в /drivers. Напрмер infinity.asm

Posted: Tue May 08, 2007 12:45 am
by Leency
Serge
Я догадывался...

Posted: Tue May 08, 2007 12:05 pm
by k@sTIg@r
Mihail
Я писал драйвер (точнее еще дописываю) ps2 мыши....так что можешь обращаться - чем смогу помогу.

Posted: Fri May 18, 2007 3:08 pm
by Wildwest
http://meos.sysbin.com/viewtopic.php?p=9465#9465
"Это значит я с того же флопика с тем же ядром не смогу цивильно работать с S3?"
После этого обсуждения появилась мысль, что надо подумать о детекте старых видеокарт и использовании соответствующего сетбанка, а не закомментировании лишних сетбаков и перекомпиляции. Доступны ли функции PCI в момент загрузки ОС?

ЗЫ: Также около года назад я предлагал возвращаться в синий экран настроек в случае неподдерживаемого разрешения, а не выводить сообщение о том, что разрешение не поддерживается. Тогда эту идею почему-то не поддержали :(

Posted: Fri May 18, 2007 4:52 pm
by diamond
Wildwest wrote:Доступны ли функции PCI в момент загрузки ОС?
Да, доступны. В 16-битном режиме можно напрямую вызывать BIOS, в 32-битном режиме есть функции pci_read_reg и pci_write_reg, описанные и реализованные в bus/pci/pci32.inc.
Wildwest wrote:ЗЫ: Также около года назад я предлагал возвращаться в синий экран настроек в случае неподдерживаемого разрешения, а не выводить сообщение о том, что разрешение не поддерживается. Тогда эту идею почему-то не поддержали
Видимо, я это предложение то ли не увидел, то ли не заметил :( Будет реализовано.