Hacking Arts
[Linux] Boot Sequence 본문
<Booting 과정>
1)전원 스위치 on -> 메인보드의 ROM-BIOS에있는 BIOS프로그램이 자동실행 -> BIOS프로그램이 메모리에 특정번지에 로드되어짐 -> CPU가 특정번지에 있는 프로그램을 자동으로 실행함
2)POST(Power on Self Test)
3)CMOS(Complementary Metal_Oxide Semiconductor)
내용이 너무 H/W적이라서 내용 전체를 이해하지 못했다. 하지만 원리는 대충 BIOS는 CMOS에 기본적으로 저장 되어 있는 내용을 읽어 드린다. 그다음 BIOS가 하드디스크 부트 디바이스의 맨 앞부분을 읽으러 간다. 부트 디바이스 맨 앞부분이 마스터 부트 레코드이다!
4)마스터 부트 레코드(MBR , Master Boot Record)
부트 디바이스의 맨앞으로 대게 부트 디바이스는 디스크를 기본으로 하지만 경우에따라서 cdrom이나 외장 디스크 등이 될 수 있다. 솔라리스의 경우는 장애가 났을 경우 대게 OK모드에서 boot cdrom -s 로 싱글모드에 들어가면서 부트 디바이스를 cdrom으로 잡는 경우도 있다. 하지만 리눅스는 OK모드가 아닌 BIOS에서 부트 디바이스를 바꿀 수 있다.
MBR에 부팅 매체에 대한 기본적인 파일시스템정보(이니셜 프로그램 로더)가 BIOS로 부터 들어감 -> IPL(Initial Program Loader)는 운영체제의 부트 프로그램이 디스크의 어디에 저장되어 있는지 알고있으며 그것을 메모리에 불러들이는 역할을 함
참고 : http://ysh_1991.blog.me/130097969859 (부트 디바이스를 변경하는 방법)
5)부트로드
부트로더는 운영체제의 부트를 돕는 프로그램, 리눅스의 부트로드로는 LILO(Linux Loader)와 GRUB(GRand Unifled Boot Loader)가 있음
LILO : 좀 더 쉽고 가벼워서 많이 사용됨 부팅이미지는 /etc/lilo.conf 파일에 있으며 MBR로 부터 부팅 제어권을 받으면 커널이미지로 부팅을 한다. 커널이미지가 메모리에 로드됨
GRUB : GNU에서 만든 부트로더이며 LILO부트로더보다 발전된 형태로 깔끔하고 편리한 인터페이스와 뛰어난 기능을 가지고 있다.
6)프로세스
LILO는 Swapper라는 pid 0번인 프로세스를 실행하고 Swapper는 pid 1번인 init 프로세스를 실행 시키고 /etc/inittab 파일을 읽는다.
'Computer & ETC > linux' 카테고리의 다른 글
[Linux] 리눅스 인증과 패스워드 (0) | 2014.08.23 |
---|---|
[Linux] version 확인법 (0) | 2014.08.23 |
[Linux] lspci and ldd (0) | 2014.08.23 |
[Linux] User & Group Administration (0) | 2014.08.23 |
[Linux] RPM(Redhat Package Management) and yum,wget (0) | 2014.08.23 |