OS/SOLARIS2004. 6. 2. 05:04
반응형
 

Solaris boot process

 
  

BOOT PROM 단계


이 단계에서는 power on한후 하드웨어 단계에서 시스템의 테스트를 한후 부트 블럭의 로드까지의 단계이다.

1

PROM self test

|

2

OK printenv boot-device

|

3

OK boot
(reads disk label (sector 0)
|

4

Read boot block
 (sector 1-15)

|

5

PROM loads boot block(bootblk) Program


BOOT 프로그램 단계


이 단계에서는 두번째 부트블럭의 로드
와 시스템에 맞는 커널을 과 커널 모듈
을 로드 합니다.

6

The bootblock Program loads  the boot(ufsboot) Program

|

7

The boot (ufsboot) Program loads the 32-or 64-bit kernel

|

8

Load kernel modules


KERNEL 초기화 단계


이 단계에서는 사용자 시스템  파라메터를 로드하고 커널의 초기화와 init 데몬을 이용한 시스템 프로세서를 시작합니다.

9

Read /etc/system file

|

10

The kernel initialiizes itself and starts the init process


INIT 단계

11

The init process starts the run control scripts

 

 

1. PROM runs self-test diagnostics

boot PROM 프로그램이 self-test 루틴을 실행하여 시스템 하드웨어와 메모리를 점섬합니다. self-test장 이상없이 완료 되어야 다음의 부팅 단계로 진행 됩니다.
self-test가 종료되면 화면에 banner를 출력해 하여 시스템 모델 타입, 키보드 타입, 메모리 사이즈, PROM 시리얼 넘버, 이더넷 주소, 호스트 ID를화면출력 한니다,

2. OK printenv boot-device

베너 출력후 boot-device 에 설정된 값에 따라 부팅을 시작한다.
이 값의 확인은 메모리초기화시 STEP-A키를 누르면 OK prompt 상태로 한후 printenv boot-device 명령을 입력시키면 현재의 boot device 명을 출력시킨다.

3. OK boot         reads disk label (sector 0)

boot 명령을 입력하면 부팅을 재시작하고 boot-device에 설정된 디바이스의 0번  섹터를 읽어들인다.(보통은 디스크)
디폭트로 auto-boot? true 값에 의해 자동으로 이 단계는 진행 됩니다.

4. Read boot block (sector 1~15)

PROM program이 bootblk을 (disk의 1~15번째 섹터) 읽어들인다.

5. PROM loads boot block (bootblk) program

PROM에 의해 읽어들여진 bootblk이 로딩된다.

6. the boot bolck program loads the boot (ufsboot) program

로딩된 bootblk program이 두 번째 boot program인  /platform/`uname -m`/ufsboot을찾아내고, 메모리에 로드시킨다.

7. the boot(ufsboot) program loads the 32-or 64-bit

boot program 로딩후 boot PROM 프로그램은 두 종류의 커널중 하나를 로드하는데,하나는 32-bit system, 또 하나는 64-bit system 의 커널이다.

32-bit의 kernle위치   /platform/`uname -m`/kernel/unix & /kernel/genunix
64-bit의 kernel위치  /platform/`uname -m`/kernel/sparcv9/unix  &
/platform/`uname -m`/kernel/sparcv9/genunix

8. lode kernel modules

커널이 ufsboot 프로그램의 파일들을 읽어들이면서 모듈을 로딩한다.

9. Read /etc/system file

모듈이 로딩됨과 동시에 커널은 /etc/system 파일을 읽어 관리자가 설정한 값들을 로드 한다.

10. The kernel initializes itself and starts the init process

커널이 자기자신을 초기화 시키고 init 프로세스를 구동한다.

11. The init process starts the run control scripts

커널은 user process를 만들어 내고 /sbin의 init  program을 실행한다.
/etc/inittab file을 참조하여 부팅 레벨에 맞는 /sbin/rc X file을 실행하고 /etc/rc X.d file을 실행시키고 모니터에 login 화면이 뜨면서 부팅을 종료한다.

 

Editor&Written by taks

반응형
Posted by [PineTree]