이 글은 리눅스 스타트업 프로세스의 세부 소개에 대한 관련 정보를 주로 소개하고 있습니다. 필요한 친구들은
리눅스 스타트업 프로세스소개를 참고하세요.
리눅스는 안정성 때문에 주로 서버 시스템으로 사용되는 것으로 알고 있습니다. PHP 마스터가 되려면 리눅스가 필수 과정입니다. 그렇다면 Linux 시스템 부팅부터 시작까지 중간에 정확히 어떤 일이 발생합니까? 이 기사에서는 그 사이의 신비한 과정을 간략하게 살펴보겠습니다.
1. BIOS Power-On Self-Test
BIOS는 영어로 "Basic Input Output System"의 약어입니다. 컴퓨터 마더보드에 고형화된 프로그램입니다. 컴퓨터는 먼저 BIOS 정보를 로드합니다. 이는 BIOS에 CPU 관련 정보, 장치 시작 순서 정보, 하드 디스크 정보, 메모리 정보, 클럭 정보 등이 포함되어 있기 때문입니다. 그 후, 컴퓨터는 정신 지도를 갖고 어떤 하드웨어 장치를 읽어야 하는지 알고 있습니다.
2. 마스터 부트 로더(MBR)
MasterBootRecord를 로드합니다. 크기는 512바이트입니다. 공간은 작지만 내부에는 부팅 전 정보와 파티션 테이블 정보가 저장됩니다. 기본 부트로더는 512바이트 이미지입니다. 약간의 기계어 코드와 작은 파티션이 포함되어 있습니다. 기본 부팅 프로그램의 작업은 하드 디스크 파티션에 있는 보조 부팅 프로그램을 찾아서 로드하는 것입니다. 파티션 테이블을 통해 활성 파티션을 찾고, 활성 파티션에 있는 보조 부트로더를 메모리로 읽어 들여 실행합니다.
3. 부트로더
부트로더는 운영체제 커널이 실행되기 전에 실행되는 작은 프로그램입니다. 이 작은 프로그램을 통해 하드웨어 장치를 초기화하고 메모리 공간의 맵을 구축하여 커널 로딩을 준비하면서 시스템의 소프트웨어 및 하드웨어 환경을 적합한 상태로 만들 수 있습니다. 일반적인 부트로더에는 Grub, Lilo 및 spfdisk가 포함됩니다
4. Linux 커널 이미지 로드
사용자가 로드할 커널을 선택한 후 보조 부트 로더(GRUB) /boot/grub.conf 구성 파일에 설정된 정보에 따라 /boot/가 위치한 파티션에서 Linux 커널 이미지를 읽은 다음 커널 이미지를 메모리에 로드하고 제어 권한을 부여합니다. 리눅스 커널.
Linux 커널은 제어 권한을 얻은 후 자체 작업을 시작합니다.
(1) 하드웨어 감지
(2) 자체 압축을 풀고 필요드라이버 설치
(3) 파일 시스템
관련 가상 장치 초기화 (4) 루트 파일 시스템 마운트 및 mount 루트 디렉터리
(5) 완료 후 Linux는 init 프로그램을 프로세스 공간에 로드합니다. 다음으로 init가 작동할 차례입니다. 5. init 프로세스 init는 모든 프로세스의 시작자이자 컨트롤러입니다. . 모든 프로세스는 여기에서 파생됩니다. init 프로세스가 제어권을 얻은 후 /etc/rc.d/rc.sysinit 스크립트를 실행하고, 환경 변수 , 네트워크를 설정하고, 스왑을 시작하고, 파일 시스템을 확인 및 마운트하고, 코드에 따라 기타 작업을 수행합니다. 내부 초기화 작업.
6. 사용자 정의된 시작 프로그램 /etc/rc.local rc.local은 Linux가 모든 초기화 작업 후에 사용자가 시작을 사용자 정의할 수 있도록 하는 곳입니다. 여기에서 설정하고 싶은 것을 넣고 시작할 수 있습니다.
7. /bin/login 프로그램을 실행하고 로그인 상태로 진입합니다
위 내용은 Linux 시작 프로세스에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!