Статьи по меткам ‘kernel’

NVIDIA + RT Kernel

Февраль 27th, 2013

Недавно возникла у меня необходимость собрать RT-ядро, так как всё же лучше пускать сервер Jack под ним.
Само ядро собралось и встало без проблем, а вот с дровами nvidia возникли реальные проблемы. Я, даже было, решил перейти на nouveau, но всё же есть в нём ряд глюков, которые пока не решены, но очень мешают жить.

Теперь кратко о самом патче для драйвера NVIDIA. В RT-ядре семафоры и спинлоки, используемые в драйвере по умолчанию, не канают, поэтому их надо заменить на rt-мьютексы и raw_spinlock_t соответственно. Также в новых ядрах нет определения CONFIG_PREEMPT_RT, т.к. оно было заменено на CONFIG_PREEMPT_RT_FULL. Пришлось потратить пару дней, собирая по крупицам информацию с разных сайтов, чтобы родить рабочий патч.

Поэтому это будет краткий HOWTO как собрать относительно свежее ядро для OpenSUSE и поставить на него свежие дрова от NVIDIA, ибо материала в сети по этому поводу немного и он порой весьма несвеж.

» Читать дальше: NVIDIA + RT Kernel

Менеджер виртуальной памяти

Июнь 26th, 2009

Всё-таки нашёл в себе силы реализовать менеджер виртуальной памяти в XSystem. Конечно, готов он не на все 100%, но бОльшая часть уже действительно оттестирована и работает. Как подтверждение этого ядро было переведено на новый менеджер, а старый был выкинут из дерева проекта.
Теперь ядро умеет одинаково хорошо обращаться с обычной страничной адресацией и PAE (Page-Address Extension). Для этого достаточно перекомпилировать ядро с соответствующими параметрами.
В ближайшее время на wiki постараюсь разместить документацию по сделанному менеджеру. Зато сейчас как гора с плеч: пришлось очень долго и очень много думать, как правильнее реализовать менеджер. Теперь же можно потихоньку начинать разделять user-space и kernel-space для процессов.
Механизм подкачки пока не реализован, но это уже — отдельный разговор.