Что такое proc в Grub?

Я играл с Grub из его командной строки, я заметил кое-что, что меня уловило, я перечислил устройства с помощью команды Grub ls и Я заметил, что есть виртуальное устройство с именем (proc):

grub> ls 
(proc) (hd0) (hd0, msdos1)

Интересным аспектом устройства (proc) является то, что оно содержит сжатое ядро ​​Linux, и его структура похожа на корневую. каталог,

(grub)> ls (proc) / 
Device proc: Filesystem type procfs - Sector size 512B - Total size 0Kid
lost+found/ swapfile etc/ bin/ boot/ dev/ home/ lib/ lib64/ mnt/ opt/
vmlinuz initrd.img
--snip-- 

Я пришел к выводу, что (proc) - это файловая система в памяти, где Grub монтирует свою собственную корневую файловую систему, мне кажется, что grub также использует файловую систему proc, которая обычно встречается в ядре Linux, в качестве своей корневой файловой системы. Что такое устройство (proc) в Grub и почему оно там?

0
30.08.2017, 01:00
1 ответ

Нет, загрузчик Grub 2 не является модифицированным ядром Linux. У него есть собственная кодовая база, и вы можете прочитать больше о Grub 2 в этой статье Википедии.

Почему тогда используется папка proc? Ответ :Файловая система procfs не является чем-то специфичным для Linux. Подобные подходы используются в BSD и других ОС, совместимых с POSIX (, читайте здесь).

Grub 2 должен управлять ресурсами, такими как дисковые устройства (, чтобы загружать ядра ), ввод с помощью мыши и клавиатуры. Он должен читать и понимать различные файловые форматы (, такие как формат ELF ), и запускать процессы распаковки, например, для ядра Linux.

Вот почему Grub 2 по своей функциональности является подмножеством того, что мы называем операционной системой (не поймите неправильно :это не на самом деле ОС )и разработчики, возможно, решили использовать такие procfs для управления вещами.

Редактировать:

Обратите внимание, что команда Grub ls /не предоставляет содержимое корневой папки в файловой системе -памяти Grub. Внутри оболочки Grub моей машины с Ubuntu он просто предоставляет содержимое корневого каталога моего основного загрузочного диска. Это означает, что упомянутый выше файл linuz— это просто ядро, которое будет загружаться grub...

2
28.01.2020, 04:40

Теги

Похожие вопросы