리눅스 부팅 과정
1. 전원스위치 ON
- 시스템 전원공급
- 메인보드의 ROM-BIOS에 있는 BIOS프로그램 자동실행
- BIOS프로그램은 전원공급과 함께 메모리의 특정번지에 자동 로드
- CPU는 전원공급과 함께 특정번지의 BIOS프로그램을 자동실행
2. BIOS프로그램들의 실행내용
- 자체진단기능(POST)
- CMOS검사, CPU, MEMORY, 그래픽카드등 하드웨어의 이상유무를 검사하고 초기화
- 부팅매체검색과 부트로더 실행
- POST과정이 이상없이 진행완료되면 검색된 부팅매체에서 부트로더를 불러옴
- 부팅매체로 선택되었다면 부팅파티션에 있는 0번섹터(MBR)에 있는 부트로더을 읽음
- 부트로더가 메모리에 적재되면 BIOS는 종료, 시스템제어권은 부트로더(GRUB)
3. 부트로더의 실행
- 부트로더 실행과 함께 /boot/grub/grub.conf파일을 읽어서 부팅 커널를 결정
- 부트로더은 커널(kernel)이미지를 불러옴, 시스템 제어권을 커널로 넘김
4. 커널의 로딩
- 커널은 swapper프로세스(PID 0번)를 호출함
- swapper는 커널이 사용할 각 장치드라이브들을 초기화, init프로세스(PID 1번)를 실행
- init프로세스가 실행되면서 /etc/inittab파일을 읽어들여서 그 내용들을 차례대로 실행
5. init프로세스의 실행
- 이후의 과정들은 모두 init프로세스의 실행내용 (/etc/inittab파일의 실행내용들)
- 로그인프롬프트가 나오기 까지의 부팅완료화면까지 init프로세스에 의해서 실행되는 내용들임
'20. > 22. Linux' 카테고리의 다른 글
SSH 접속 시 RSA 공유키 충돌 (0) | 2018.03.28 |
---|---|
GNU Bash 환경 변수 명령어 인젝션 Shellshock (1) | 2014.09.30 |
[Ubuntu 12.10 Desktop] 우분투 메뉴바 사라짐 (0) | 2014.02.05 |
How to install DVL (0) | 2014.02.05 |