Разборки с ядром.

Разборки с ядром.

Сообщение Packum » 07 фев 2015, 21:34

Тут недавно коды привалили новые и я наконец решил с ними разобраться. Надеюсь на вашу помощь и подсказки,
так как в некоторых вопросах я полный ноль. По мере конфигурации, буду изредка компилировать, проверять загрузку
и измерять вес образа ядра. В качестве подопытного выступает Lenovo ThinkPad T420 с Gentoo на борту. Вот скрины
lspci и lsusb:
56
В разных дистрибутивах ядра думаю не сильно отличаются. Может ещё кому пригодятся мои мучения!
Итак поехали:
Код: выделить все
cd /usr/src/linux
make menuconfig

Продолжение следует.
Аватар пользователя
Packum
Активный участник
Активный участник
 
Автор темы
Сообщений: 173
Фото: 66
Стаж: 2 года 10 месяцев
Откуда: С.Петербург
Благодарил (а): 86 раз.
Поблагодарили: 48 раз.

Разборки с ядром.

Спонсор

Спонсор
 

Re: Разборки с ядром.

Сообщение Packum » 07 фев 2015, 21:59

57
Главная страница конфига. Здесь я пожалуй оставлю всё как есть. Есть только вопрос с виртуализацией.
Нужна она мне или нет? Если пройти в подменю, то там ничего не включено по-умолчанию.
58
Ни KVM ни virtio_net я вроде не использую. Думаю можно отключить.
Аватар пользователя
Packum
Активный участник
Активный участник
 
Автор темы
Сообщений: 173
Фото: 66
Стаж: 2 года 10 месяцев
Откуда: С.Петербург
Благодарил (а): 86 раз.
Поблагодарили: 48 раз.

Re: Разборки с ядром.

Сообщение Packum » 07 фев 2015, 22:19

59
Ну тут чисто по Gentoo. devtmpfs нужна при загрузке для sysfs и для удава. Как то загрузился без неё и получил kernel panic.
60
Система инициализации. Я пока на OpenRC. :P
Аватар пользователя
Packum
Активный участник
Активный участник
 
Автор темы
Сообщений: 173
Фото: 66
Стаж: 2 года 10 месяцев
Откуда: С.Петербург
Благодарил (а): 86 раз.
Поблагодарили: 48 раз.

Re: Разборки с ядром.

Сообщение Packum » 07 фев 2015, 22:39

О-хо-хо! General setup. На один скрин не влезло, поэтому с добавкой:
6162
И что же тут можно отключить? А?
Начну с конца почему-то:
Отключу Kprobes, - отладкой ядра не собираюсь заниматься.
Отключу Profiling support, - OProfile нету.
Initial RAM filesystem and RAM disk (initramfs/initrd) support оставлю, так как есть сплэш-загрузка, а для неё нужен initrd.
SLAB тоже оставлю, - это какая-то фишка с распределением памяти, сгодится для скорости.
Может можно ещё чего отключить, - жду рекомендаций.
Аватар пользователя
Packum
Активный участник
Активный участник
 
Автор темы
Сообщений: 173
Фото: 66
Стаж: 2 года 10 месяцев
Откуда: С.Петербург
Благодарил (а): 86 раз.
Поблагодарили: 48 раз.

Re: Разборки с ядром.

Сообщение Packum » 07 фев 2015, 23:36

Enable loadable module support
63
Ну пусть будет модульным. Я бы хотел конечно монолитное, но некоторые модули не вшить в ядро. А так стараюсь,
чтобы всё что можно в ядро вшивать.
Аватар пользователя
Packum
Активный участник
Активный участник
 
Автор темы
Сообщений: 173
Фото: 66
Стаж: 2 года 10 месяцев
Откуда: С.Петербург
Благодарил (а): 86 раз.
Поблагодарили: 48 раз.

Re: Разборки с ядром.

Сообщение Packum » 08 фев 2015, 00:16

Блочные устройства. Это наверное жесткие диски.
646566
Это по умолчанию. Я использую MBR и потому попробую отключить всё и оставить только PC.
67
В IO schedulers ничего не меняю, - страшно. Это что-то связанное с адресацией жестких дисков и вводом-выводом.

Наверное пора первый раз скомпилировать ядро и посмотреть что вышло.
Код: выделить все
make && make modules_install

Ядро компилилось 45 минут. Копируем образ в /boot:
Код: выделить все
 cp arch/x86_64/boot/bzImage /boot/kernel-3.17.8-gentoo-r1

Вес ядра 5.5 MB. Обновляем GRUB:
Код: выделить все
grub2-mkconfig -o /boot/grub/grub.cfg
reboot


Через некоторое время:
Ядро как ни странно загрузилось. И даже нужное разрешение экрана присутствует, чего не ожидал.
68
Ошибок загрузки нет. Естественно не работает интернет, так как у меня 4G-modem, а его я не настраивал. И декорация
чистой консоли не работает, так как fbcondecor пока не включен. Идём дальше!
Аватар пользователя
Packum
Активный участник
Активный участник
 
Автор темы
Сообщений: 173
Фото: 66
Стаж: 2 года 10 месяцев
Откуда: С.Петербург
Благодарил (а): 86 раз.
Поблагодарили: 48 раз.

Re: Разборки с ядром.

Сообщение Packum » 08 фев 2015, 10:21

Процессор. Здесь я кажется надолго. Опций на 3 листа.
697071
У меня intel i5 2520m, двухядерный с гипертрейдингом.
Enable MPS table - выключаю, ACPI вроде есть.
Support for extended (non-PC) x86 platforms тоже вроде ни к чему, у меня PC 64-bit.
Single-depth WCHAN output - попробую отключить, что-то связанное с каналами для маломощных систем.
IBM Calgary IOMMU support - поддержка памяти более 3 ГБ на старых серверах IBM. Скажите почему это включено по умолчанию?
Reroute for broken boot IRQs - перенаправление битых прерываний, попробую отключить.
Также отключаю всё, где написано AMD, ведь у меня intel.
CPU microcode loading support - мне пока не нужно, вроде все драйверы имеются в ядре.
/dev/cpu/*/msr - Model-specific register support - специфичные регистры для x86? Выключил.
/dev/cpu/*/cpuid - CPU information support - Выключил.
Numa Memory Allocation and Scheduler Support - добавка памяти при выделении, вроде полезно для i7 и amd opteron. Выключил.
С памятью и её страницами пока не буду ковырять, тут по-ходу ассемблер изучать надо.
EFI runtime service support - выключил, у меня MBR.
kexec system call - эту бяку точно надо выключить, переключение ядра системным вызовом.
kernel crash dumps - тоже к kexec относится.
Получилось так:
7273
Уже два листа, вместо трёх.
Компилим ядро и пробуем!

Ядро компилилось 41 минуту. Вес 5.4 MB. Загрузка в норме! Идем дальше!
Аватар пользователя
Packum
Активный участник
Активный участник
 
Автор темы
Сообщений: 173
Фото: 66
Стаж: 2 года 10 месяцев
Откуда: С.Петербург
Благодарил (а): 86 раз.
Поблагодарили: 48 раз.

Re: Разборки с ядром.

Сообщение Packum » 08 фев 2015, 17:36

Power management and ACPI options
74
Тут наоборот кое-что включил, - с ACPI шутки плохи!
В Default resume partition можно вписать путь к разделу со свопом.
77
CPU Frequency scaling
76
Здесь в Default CPUFreq governor поставил режим (ondemand) - средние настройки энергосбережения.
x86 CPU frequency scaling drivers
78
Здесь отметил драйвер для процессора санди бридж, - вроде правильно.
ACPI (Advanced Configuration and Power Interface) Support
79
Без комментариев.
Аватар пользователя
Packum
Активный участник
Активный участник
 
Автор темы
Сообщений: 173
Фото: 66
Стаж: 2 года 10 месяцев
Откуда: С.Петербург
Благодарил (а): 86 раз.
Поблагодарили: 48 раз.

Re: Разборки с ядром.

Сообщение Packum » 08 фев 2015, 20:47

Bus options (PCI etc.)
80
Здесь отключил PCCard (PCMCIA/CardBus) support так как не пользуюсь ими и Support for PCI Hotplug, так как
горячее подключение тоже теперь вроде ни к чему.
Аватар пользователя
Packum
Активный участник
Активный участник
 
Автор темы
Сообщений: 173
Фото: 66
Стаж: 2 года 10 месяцев
Откуда: С.Петербург
Благодарил (а): 86 раз.
Поблагодарили: 48 раз.

Re: Разборки с ядром.

Сообщение Packum » 08 фев 2015, 20:57

Executable file formats / Emulations
81
Здесь всё как есть. Обязательно к включению. Поддержка форматов исполняемых файлов.
Аватар пользователя
Packum
Активный участник
Активный участник
 
Автор темы
Сообщений: 173
Фото: 66
Стаж: 2 года 10 месяцев
Откуда: С.Петербург
Благодарил (а): 86 раз.
Поблагодарили: 48 раз.

След.

Вернуться в Ядро, модули и конфигурация

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron