'부팅'에 해당되는 글 1건

  1. 2014.05.20 [리눅스] boot process

booting 과정을 통해 OFF 되어 있는 서버를 유용한 operating system으로 사용가능

사람의 수명주기와 유사하다고 생각할수 있다

출생 - 신생아  - 유아기 - 아동기 -  청소년 - 성인 


1. 출생 

전원이 ON 되면서 서버에 전원 공급 시작


2. 신생아

비 휘발성 메모리(ROM)에 저장되어 있는 BIOS(Basic Input/Output System) 프로그램이 부팅

크게 2가지 역할 수행

1) POST(Power On Self Test) 기능 : 장치 인식 후 이상유무 체크 및 하드웨어 초기화

2) POST과정 완료 후 시스템 부팅 제어권을 Boot Loader(GRUB/LILO)에 넘겨주고 BIOS 종료(GRUB/LILO)

* Boot Loader(boot 파티션의 MBR 영역에 설치 되어 있는 소프트웨어? 커널을 로드하는 역할)

 

3. 유아기

1) Boot Loader 실행

GRUB은 실행과 함께 부팅 메뉴(커널) 선택 /boot/grub/grub.conf

선택한 커널 이미지 로드 /boot/vmlinuz.2.6.32.x ~

시스템 제어권을 커널에 넘겨줌


4. 청소년

1) Linux 커널을 초기화하고 메모리에 로딩(Device driver가 로드되고 초기화)

2) swapper Process 호출(커널 이미지 압축해제/POST 하였던 장치드라이브 초기화)

Swapper는 PID 0를 가지고 있으며 init 프로세스 PID 1 을 실행하고 종료(부팅 시 잠시 실행되었다가 종료)


5. 성인

1) Init 프로세스의 실행

/etc/inittab 설정 파일을 읽으면서 실행

/etc/inittab : 스크립트 규칙을 가지고 정의된파일, 스크립트는 한 줄에 하나의 명령을 정의 

다음과 같은 형식을 지님 = id : runlevel : action : process

2) booting Level 결정 : id:3:initdefault:

2) /etc/rc.d/rc/sysinit 스크립트 실행 : si::sysinit:/etc/rc.d/rc.sysinit

3) 해당 run_level 맞는 /etc/rc.d/rc#.d/ 아래의 스크립트 실행

4) /etc/rc.d/rc.local 파일 실행



'리눅스-Linux' 카테고리의 다른 글

[리눅스] fuser  (0) 2014.05.22
[Linux] automount  (0) 2014.05.20
[리눅스] cron  (0) 2014.04.01
[리눅스] lvm.conf filter  (0) 2014.03.27
[Linux] daemon 설명 및 정리  (0) 2014.03.26
Posted by 뭉탁거림
,