Grub의 proc은 무엇입니까?

Grub의 proc은 무엇입니까?

저는 Grub의 명령줄에서 이를 사용하고 있었고 제 의도를 사로잡은 것을 발견했습니다. lsGrub의 명령을 통해 장치를 나열하고 있었고 (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도 Linux 커널의 공통 proc 파일 시스템을 루트 파일 시스템으로 사용하는 것 같습니다. Grub의 장치는 무엇입니까 (proc)? 왜 거기에 있습니까?

답변1

아니요, Grub 2 부트로더는 맞춤형 Linux 커널이 아닙니다. 자체 코드 베이스가 있습니다. Grub 2에 대해 자세히 알아볼 수 있습니다.이것위키피디아 기사.

왜 proc 폴더를 사용합니까? 답변: procfs 파일 시스템은 Linux에만 고유한 것이 아닙니다. BSD 및 기타 POSIX 호환 운영 체제에서도 유사한 접근 방식이 사용됩니다(읽기여기).

Grub 2는 디스크 장치(커널을 로드하기 위해), 마우스 및 키보드 입력과 같은 리소스를 관리해야 합니다. 예를 들어, 다양한 파일 형식(예: ELF 형식)을 읽고 이해해야 하며 Linux 커널에 대한 압축 해제 프로세스를 실행해야 합니다.

이것이 바로 Grub 2의 기능이 우리가 운영 체제라고 부르는 것의 하위 집합인 이유입니다(오해하지 마세요.아니요실제로 운영 체제임) 개발자는 이러한 procf를 사용하여 사물을 관리하기로 결정할 수 있습니다.

편집하다:

Grub 명령은 ls /Grub 메모리 파일 시스템의 루트 폴더 내용을 제공하지 않습니다. 내 Ubuntu 시스템의 Grub 셸에서는 기본 부팅 드라이브 루트의 내용만 제공합니다. 이것은 linuz위에서 언급한 파일이 단지 grub이 부팅할 커널이라는 것을 의미합니다...

관련 정보