Page 1 of 1

вопрос по ядру trunk

Posted: Sat Oct 06, 2018 3:54 pm
by v4567
Здравствуйте форумчане.
Скачал с svn ядро trunk. Если скомпилировать это ядро и загрузить его, я ничего не получу или получу ядро с командной строкой без графики, или получу ядро и графику с графическим интерфейсом и сетью?

Хочу посмотреть только на код ядра. Я изучаю сейчас ассемблер, вернее восстанавливаю его в памяти. Ещё есть такой вопрос, колибри работает в защищённом режиме или нет - сегмент смещение?

Ещё хочу посмотреть на исходники загрузчика, я так понял в папке boot находится загрузчик который может загружать с жёсткого диска, а в папке bootloader который загружает только с дискетки. Правильно ли я понял?

За ответы заранее благодарен!

Re: вопрос по ядру trunk

Posted: Sat Oct 06, 2018 4:35 pm
by theonlymirage
По моей неточной информации:
После компиляции получишь монолитное ядро с зашитыми в него системными функциями (включая рисование кнопок, окон и т.д.), насчёт шелла не скажу (вроде его нет, только boot log). Никакой графики. Для графического интерфейса нужен загруженный драйвер и программа, рисующая сам интерфейс.

По загрузчикам, всё примерно так, загляни ещё в programs\hd_load (там загрузчики usb).

Re: вопрос по ядру trunk

Posted: Sat Oct 06, 2018 8:17 pm
by 0CodErr
v4567 , привет!
У нас есть кое-что на wiki http://wiki.kolibrios.org/wiki/For_developers/ru
Хотя некоторая информация там уже не актуальна, например, планировщик теперь такой http://board.kolibrios.org/viewtopic.php?f=35&t=2316

Re: вопрос по ядру trunk

Posted: Sat Oct 06, 2018 8:36 pm
by tsdima
v4567 wrote:Если скомпилировать это ядро и загрузить его
Оно первым делом захочет загрузить образ флоппи-диска, который впоследствии будет рам-диском (/rd/1, другое имя - /sys), и откуда будут грузиться первые программы. Самым первым загрузится /sys/LAUNCHER (если конечно не указать, что нужно грузить vrr_m, устанавливающую частоту кадров), который запустит программы, указанные в autorun.dat
v4567 wrote:колибри работает в защищённом режиме или нет - сегмент смещение?
Как и во всех современных ОС, используется flat model. Ядро настраивает сегменты кода/данных для ядра, пользовательских приложений и др. нужные сегменты, всего с десяток. При входе в ядро загружаются сегменты ядра, при выходе - приложения. При переключении процесса загружается новое значение регистра page table, кэш сбрасывается.
v4567 wrote:я так понял в папке boot находится загрузчик который может загружать с жёсткого диска, а в папке bootloader который загружает только с дискетки
В папке bootloader лежит исходник загрузочного сектора для дискеты, который грузит с дискеты KERNEL.MNT и запускает его.
В папке boot лежит часть кода ядра которая грузит образ флоппи-диска с дисковода или CDROM-а (при загрузке с него биос эмулирует дисковод). Разница небольшая - при загрузке с реального дисковода грузится только использованная часть диска. Правда у нас она уже занимает весь диск.

Re: вопрос по ядру trunk

Posted: Sun Apr 19, 2020 6:53 pm
by art_zh
PartySparrow wrote: Your information is very Helpful for me.

Thank you for sharing.
don't be sarcastic - there are some English-speakig people here as well