ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 컴퓨터 부팅 과정
    시스템/운영체제 2020. 4. 21. 22:41

    컴퓨터를 켰을 때, 가장 먼저 실행되는 프로그램은 부트스트랩[Boot stap] 프로그램이다. 부트스트랩은 ROM이나 EPROM 등의 펌웨어[Firmware]에 저장된다. 부트스트랩이 실행되면서 시스템의 모든 기능을 초기화 하고 운영체제의 커널을 메모리에 로딩하고 실행을 하면서 컴퓨터가 켜진다. 이 과정을 step by step로 설명해보겠다.

    컴퓨터 부팅 과정

    1. 전원이 켜진다.

    2. CPU가 ROM 안에 BIOS를 찾고 실행을 한다. BIOS는 HW가 이상이 없는지 체크하고 초기화를 한다.

      1. CPU는 전원이 들어오면 메모리에 0x0000번째 명령어를 실행하고 순차적으로 0x0001번째 명령어를 실행한다. 하지만, RAM은 휘발성 메모리이기 때문에 전원이 꺼지면 메모리에 아무것도 없다. 그 뜻은 CPU는 전원이 들어온 시점에 0x0000번째 주소에 실행할 명령어가 없다는 것이다. 그래서 CPU를 위해 비휘발성 메모리인 BIOS를 0x0000에 놓는다.

    3. 초기화 한 후 BIOS는 Boot loader를 찾기 위해 MBR[Master Boot Record]를 찾는다. MBR은 HDD/SSD의 첫번째 512byte다.

    4. MBR을 찾으면 HDD/SSD의 Boot loader가 메모리에 로딩된다. Boot loader가 실행이 되면서 초기화를 한다.

    5. Boot loader가 커널 이미지를 로딩한다.

    6. 이 지점이 main.c가 실행 되는 지점, 즉 커널 이미지가 실행되는 지점이다.

    7. 로그인 하면 된다.

    '시스템 > 운영체제' 카테고리의 다른 글

    컴퓨터 저장 장치  (0) 2020.04.23
    DMA(Direct Memory Access)  (0) 2020.04.23
    인터럽트  (0) 2020.04.22
    컴퓨터 시스템의 구성  (0) 2020.04.22
    운영체제란?  (0) 2020.04.21

    댓글

Designed by Tistory.