All About Computer

#13. 컴퓨터의 부팅 과정.

The computer’s boot process.

컴퓨터 전원 버튼을 누른 후 운영체제 화면이 나타나기까지의 부팅(Booting) 과정을 단계별로 상세하게 설명합니다. 이 과정에서 BIOS/UEFI 펌웨어, POST, MBR, 부트 로더 등의 핵심 요소들이 어떤 역할을 하는지 알아봅니다.

  1. 부팅(Booting)이란?
    • 컴퓨터가 시작되는 과정을 의미합니다.
  2. 부팅 과정 상세 단계:
    • ① 전원 켜기: 사용자가 본체의 전원 버튼을 누릅니다.
    • ② 전원 공급: 파워 서플라이가 메인보드와 연결된 모든 하드웨어에 전기를 공급하여 깨웁니다.
    • ③ BIOS/UEFI 실행 (펌웨어): CPU는 가장 먼저 메인보드의 ROM에 저장된 펌웨어인 BIOS(Basic Input/Output System) 또는 최신 규격인 **UEFI(Unified Extensible Firmware Interface)**를 실행합니다.
      • BIOS는 이름처럼 아주 기본적인 입출력(키보드 입력, 화면 글자 표시 등)만 가능하게 합니다.
    • ④ POST (Power On Self Test): BIOS/UEFI는 연결된 하드웨어(CPU, RAM, 스토리지, 그래픽 카드 등)가 정상적으로 작동하는지 자가 진단을 수행하고 초기화합니다.
      • 이 과정에서 문제가 발견되면 비프음이나 화면 메시지로 오류를 알리고 부팅을 중단합니다.
      • POST 과정 중 화면에 BIOS 제조사 로고, 버전, 설정 진입 키 안내 등이 표시됩니다.
    • ⑤ OS 검색 (MBR/VBR/Bootloader):
      • BIOS/UEFI는 미리 설정된 순서(보통 HDD/SSD)에 따라 부팅 가능한 저장 장치를 찾습니다.
      • MBR (Master Boot Record): (Legacy BIOS 방식) 저장 장치의 가장 첫 번째 섹터(512바이트)로, 운영체제 위치 정보(파티션 테이블)와 작은 프로그램인 **부트 코드(Boot Code, 부트스트랩)**가 저장되어 있습니다. BIOS는 MBR을 RAM으로 로드하고 부트 코드를 실행시킵니다.
      • 부트 코드 실행: MBR의 부트 코드는 파티션 테이블을 읽어 부팅 가능한 파티션(Active Partition)을 찾습니다.
      • VBR (Volume Boot Record): 부팅 가능한 파티션의 첫 번째 섹터로, 해당 파티션의 파일 시스템 정보와 더 기능이 많은 부트 로더(Boot Loader) 프로그램이 담겨 있습니다. MBR 부트 코드는 VBR을 RAM으로 로드하고 부트 로더를 실행시킵니다.
      • 부트 로더 실행: 부트 로더는 VBR의 파일 시스템 정보를 이용해 드디어 **운영체제 파일(커널 등)**을 찾아 RAM으로 로드하고 실행합니다. (Windows의 경우 NTLDR 또는 Bootmgr)
      • 멀티 부팅: 한 컴퓨터에 여러 OS가 설치된 경우, 부트 로더가 사용자에게 어떤 OS로 부팅할지 선택하는 화면을 보여주기도 합니다.
    • ⑥ 운영체제 로드 및 실행:
      • 커널(Kernel): 운영체제의 가장 핵심적인 부분이 먼저 RAM에 로드되어 실행됩니다.
      • 장치 드라이버 로드: 커널은 하드웨어를 제어하기 위해 필요한 장치 드라이버들을 로드합니다.
      • 서비스/데몬 실행: 백그라운드에서 시스템 운영에 필요한 프로그램(서비스 또는 데몬)들이 실행됩니다 (예: 플러그 앤 플레이 서비스).
      • 셸(Shell) 실행: 사용자와 운영체제 커널 사이의 인터페이스(GUI 또는 CLI)가 실행됩니다.
      • 시작 프로그램 실행: 사용자가 미리 설정해 둔 프로그램(백신, 메신저 등)들이 자동으로 실행됩니다.
    • ⑦ 로그인: 모든 준비가 끝나면 사용자 계정 로그인을 요구하는 화면이 나타납니다.
  3. Legacy BIOS vs UEFI:
    • Legacy BIOS: 1970년대 기술로 오래되었으며, 텍스트 기반 인터페이스, MBR 파티션 방식 사용 (2.2TB 용량 제한, 파티션 4개 제한 등).
    • UEFI: 2005년 개발된 최신 규격으로, 그래픽 인터페이스, 마우스 사용 가능, GPT 파티션 방식 사용 (용량/파티션 제한 거의 없음), 보안 기능 강화(Secure Boot), 빠른 부팅 등의 장점이 있습니다.
      • UEFI는 부팅 시 MBR/VBR을 거치지 않고, 저장 장치 내 **EFI 시스템 파티션(ESP)**에 있는 부트 로더(.efi 파일)를 직접 찾아 실행하여 부팅 단계를 단축합니다.
  4. 프로세스와 멀티태스킹:
    • RAM에 로드되어 실행 중인 프로그램을 **프로세스(Process)**라고 합니다.
    • 부팅 완료 후에는 운영체제 자체 프로세스 외에도 다양한 백그라운드 프로세스(서비스/데몬)들이 실행되고 있습니다.
    • CPU는 이 여러 프로세스의 작업을 아주 빠르게 번갈아 처리하여 마치 동시에 실행되는 것처럼 보이게 하는데, 이를 **멀티태스킹(Multitasking)**이라고 합니다.

컴퓨터 부팅은 전원 인가부터 BIOS/UEFI 실행, 하드웨어 점검(POST), 저장 장치 확인(MBR/VBR 또는 GPT/ESP), 부트 로더 실행, 운영체제(커널, 드라이버, 서비스, 셸) 로드, 시작 프로그램 실행까지 여러 단계의 복잡한 과정을 거칩니다. Legacy BIOS보다 발전된 UEFI 방식은 부팅 과정을 효율화하고 여러 장점을 제공합니다.

Chapters:
0:00
Intro
00:34 BIOS (Basic Input/Output System)
01:45 POST (Power On Self Test)
02:39 하드 디스크 드라이브 구조 (Track, Partition, Sector)
03:06 파일 시스템 (File System)
03:40 디스크 포맷, 볼륨 (File System, Disk Format, Volume)
04:03 마스터 부트 레코드, 부트 코드 (Master Boot Record, Boot Code)
04:50 볼륨 부트 레코드 (Volume Boot Record)
05:21 부트 로더 (Boot loader)
06:03 BIOS 셋업 유틸리티, CMOS 셋업 (BIOS Setup Utility)
07:28 UEFI (통일 확장 펌웨어 인터페이스)
08:14 GPT (GUID Partition Table)
09:10 운영체제 커널과 셸 (OS, Kernel, Shell)
10:10 서비스, 데몬 (Service, Daemon)
10:45 시작 프로그램 (start-up program)
11:12 프로세스, 멀티태스크 (Process, Multitask)
11:47 마무리