Сайт | Скачать | Видео | Wiki

Автор Тема: Ядро. Модули монолитно (в vmlinuz) или отдельно (в .ko)  (Прочитано 393 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33171
  • Репутация: +226/-0
  • Автор темы
    • PuppyRus-A
http://mirror.yandex.ru/puppyrus/puppyrus-a64/kernel/new/5.15.0-pf5-pt14o3
http://mirror.yandex.ru/puppyrus/puppyrus-a64/kernel/new/5.15.0-pf5-pt14
Оба маленькие (на базе конфига porteus) монолитные (без пересборки инитрд).
большое монолитное
http://mirror.yandex.ru/puppyrus/puppyrus-a64/kernel/new/5.15.0-pf5-mgm

скорость загрузки системы с mgm на треть меньше  (10 сек) по сравнению с pt14* (16 сек)
За счет чего - непонятно...
Ядро монолитное, меньше времени тратится на подключение модулей.
Откуда инфа, что  более модульное ядро грузится дольше?
Разница только при загрузке ос?

По монолитности (/usr/lib/modules/5.15.0-pf5-pt14o3/modules.builtin) ядра отличаются мало :
Код
# wc -l modules.builtin-mgm modules.builtin-pt14o 
  217 modules.builtin-mgm
  277 modules.builtin-pt14o
Вот что добавлено в mgm:
Код
--- modules.builtin-mgm	2022-01-04 17:08:19.000000000 +0300
-kernel/mm/zswap.ko
-kernel/mm/zpool.ko
-kernel/mm/zbud.ko
-kernel/fs/quota/quota_v2.ko
-kernel/fs/quota/quota_tree.ko
-kernel/fs/cramfs/cramfs.ko
-kernel/fs/pstore/pstore.ko
-kernel/crypto/842.ko
-kernel/lib/btree.ko
-kernel/lib/842/842_compress.ko
-kernel/lib/842/842_decompress.ko
-kernel/lib/pldmfw/pldmfw.ko
-kernel/drivers/gpio/gpio-crystalcove.ko
-kernel/drivers/rapidio/rapidio.ko
-kernel/drivers/rapidio/switches/tsi57x.ko
-kernel/drivers/rapidio/switches/idtcps.ko
-kernel/drivers/rapidio/switches/tsi568.ko
-kernel/drivers/rapidio/switches/idt_gen2.ko
-kernel/drivers/rapidio/switches/idt_gen3.ko
-kernel/drivers/rapidio/devices/tsi721_mport.ko
-kernel/drivers/video/fbdev/xen-fbfront.ko
-kernel/drivers/acpi/hed.ko
-kernel/drivers/dma/virt-dma.ko
-kernel/drivers/xen/xenbus/xenbus.ko
-kernel/drivers/xen/xenbus/xenbus_probe_frontend.ko
-kernel/drivers/base/regmap/regmap-spi.ko
-kernel/drivers/block/brd.ko
-kernel/drivers/block/pktcdvd.ko
-kernel/drivers/mfd/88pm860x.ko
-kernel/drivers/mfd/wm8994.ko
-kernel/drivers/mfd/twl4030-audio.ko
-kernel/drivers/mfd/twl6040.ko
-kernel/drivers/mfd/ezx-pcap.ko
-kernel/drivers/mfd/da903x.ko
-kernel/drivers/mfd/da9052-core.ko
-kernel/drivers/mfd/da9052-spi.ko
-kernel/drivers/mfd/da9052-i2c.ko
-kernel/drivers/mfd/lp8788.ko
-kernel/drivers/mfd/da9055.ko
-kernel/drivers/mfd/da9063.ko
-kernel/drivers/mfd/max14577.ko
-kernel/drivers/mfd/max77693.ko
-kernel/drivers/mfd/tps6586x.ko
-kernel/drivers/mfd/palmas.ko
-kernel/drivers/dma-buf/heaps/system_heap.ko
-kernel/drivers/dma-buf/heaps/cma_heap.ko
-kernel/drivers/dma-buf/udmabuf.ko
-kernel/drivers/macintosh/mac_hid.ko
-kernel/drivers/ata/ahci_platform.ko
-kernel/drivers/ata/libahci_platform.ko
-kernel/drivers/input/misc/xen-kbdfront.ko
-kernel/drivers/power/supply/charger-manager.ko
-kernel/drivers/watchdog/watchdog.ko
-kernel/drivers/edac/edac_core.ko
-kernel/drivers/firmware/edd.ko
-kernel/drivers/firmware/efi/efi-pstore.ko
-kernel/drivers/soundwire/soundwire-bus.ko
-kernel/net/802/fddi.ko
-kernel/net/sched/act_police.ko
-kernel/net/sched/sch_fq_codel.ko
-kernel/net/sched/cls_cgroup.ko
-kernel/net/ipv4/inet_diag.ko
-kernel/net/ipv4/tcp_diag.ko
-kernel/net/mpls/mpls_gso.ko

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33171
  • Репутация: +226/-0
  • Автор темы
    • PuppyRus-A
А вот что в итоге загрузилось
Код
# uname -r ;lsmod |awk '{print $1}'
5.15.0-pf5-mgm
Module
af_packet
cfg80211
rfkill
8021q
garp
mrp
stp
llc
snd_hda_codec_hdmi
snd_hda_codec_realtek
snd_hda_codec_generic
nls_utf8
snd_sof_pci_intel_cnl
snd_sof_intel_hda_common
soundwire_intel
soundwire_generic_allocation
soundwire_cadence
hid_generic
snd_sof_intel_hda
snd_sof_pci
snd_sof_xtensa_dsp
usbhid
intel_rapl_msr
snd_sof
intel_rapl_common
ledtrig_audio
hid
snd_soc_skl
snd_soc_hdac_hda
intel_tcc_cooling
snd_hda_ext_core
x86_pkg_temp_thermal
intel_powerclamp
snd_soc_sst_ipc
snd_soc_sst_dsp
snd_soc_acpi_intel_match
snd_soc_acpi
kvm_intel
i915
snd_soc_core
kvm
snd_compress
snd_pcm_dmaengine
ac97_bus
irqbypass
crct10dif_pclmul
snd_hda_intel
snd_intel_dspcfg
snd_intel_sdw_acpi
crc32_pclmul
snd_hda_codec
ghash_clmulni_intel
ee1004
snd_hda_core
iTCO_wdt
ttm
snd_hwdep
mei_hdcp
iTCO_vendor_support
wmi_bmof
gigabyte_wmi
aesni_intel
crypto_simd
cryptd
snd_pcm
evdev
rapl
intel_cstate
r8169
input_leds
xhci_pci
xhci_pci_renesas
led_class
intel_uncore
snd_timer
drm_kms_helper
realtek
xhci_hcd
mei_me
serio_raw
pcspkr
snd
i2c_i801
mdio_devres
cec
libphy
i2c_smbus
soundcore
mq_deadline
intel_gtt
usbcore
i2c_algo_bit
mei
usb_common
intel_pch_thermal
thermal
wmi
fan
8250
8250_base
serial_mctrl_gpio
serial_core
video
acpi_pad
pinctrl_cannonlake
button
drm
coretemp
configfs
efivarfs
ip_tables
x_tables
ipv6
crc_ccitt
Надо будет сравнить с lsmod pt14o

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8502
  • Репутация: +185/-2
  • Старый чайник
Откуда инфа, что  более модульное ядро грузится дольше?
Чисто теоретически. На старых Puppy модули ядра подгружались скриптом init. Я заменил это на udev -> kmod. В процессе загрузки Richy подгрузку модулей хорошо видно по обращению к hd. Отсюда вывод: меньше модулей подгружается, быстрее загрузка.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33171
  • Репутация: +226/-0
  • Автор темы
    • PuppyRus-A
Возможно, но ведь команда modprobe срабатывает мгновенно. Загруженных модулей примерно одинаковое число. На 6 сек не наберется...
Думаю тут что-то другое.
Код
# systemd-analyze blame
3.859s netctl@ethernet\x2ddhcp.service
 500ms ldconfig.service
 490ms dev-loop8.device
 484ms dev-loop1.device
 482ms dev-loop2.device
 478ms dev-loop4.device
 477ms dev-loop9.device
 476ms dev-loop7.device
 467ms dev-loop3.device
 466ms desktop-fix.service
 466ms dev-loop6.device
 464ms dev-loop0.device
 464ms dev-loop5.device
 463ms dev-loop12.device
 462ms dev-loop11.device
 462ms dev-loop10.device
 397ms dev-sda1.device
 394ms dev-sda4.device
 367ms mountall.service
 200ms update-cache.service
  78ms uksmd.service
  75ms systemd-logind.service
  75ms user@1000.service
  74ms systemd-timesyncd.service
  66ms systemd-udev-trigger.service
  55ms systemd-tmpfiles-clean.service
  37ms modprobe@drm.service
  33ms zram.service
  23ms systemd-tmpfiles-setup.service
  23ms systemd-modules-load.service
  22ms systemd-udevd.service
  21ms systemd-sysusers.service
  20ms modprobe@configfs.service
  19ms modprobe@fuse.service
  17ms systemd-journald.service
  15ms systemd-remount-fs.service
  15ms dev-hugepages.mount
Не наталкивает на мысли. Кстати о "вреде" systemd - как подобное без него посмотреть  ;)