2023. 4. 14. 01:33
반응형
컴퓨터 부팅 시 부팅 과정은 BIOS(기본 입력 출력 시스템)이 ROM에 저장된 코드를 실행하면서 시작됩니다. 아래는 BIOS가 실행하는 부팅 과정의 간단한 어셈블리 코드 예시입니다.
[BITS 16] ; 16비트 코드로 작성
[ORG 0x7C00] ; BIOS가 로드할 메모리 주소
; 부트 로더 시작
; 스택 초기화
mov ax, 0x9000 ; 스택 영역을 0x9000 주소로 지정
mov ss, ax ; SS 레지스터에 스택 세그먼트 주소 저장
mov sp, 0xFFFF ; 스택 포인터를 초기화
; 디스크에서 부트 로더를 메모리에 로드
mov ax, 0x0200 ; 로드할 메모리 주소
mov es, ax ; ES 레지스터에 세그먼트 주소 저장
mov bx, 0x0000 ; 디스크에서 읽을 위치
mov ah, 0x02 ; 디스크에서 섹터 읽기
mov al, 0x01 ; 읽을 섹터 수
mov dl, 0x80 ; 부팅 디스크 드라이브
int 0x13 ; BIOS 인터럽트 호출
; 부트 로더 실행
jmp 0x0000:0x0200 ; 메모리에 로드된 부트 로더 실행
설명)
이 코드는 스택을 초기화하고, 디스크에서 부트 로더를 읽어와 메모리에 로드한 후, 부트 로더를 실행하는 과정을 나타냅니다.
이후에는 부트 로더가 더 많은 작업을 수행하며, 운영체제가 로드되고 실행됩니다.
반응형
'컴퓨터 잡다학메모' 카테고리의 다른 글
선점형 멀티태스킹(preemptive multitasking)란? (0) | 2023.04.21 |
---|---|
AI 공부를 위한 책은? (0) | 2023.04.14 |
4차산업에서 프리미어(Adobe Premiere) 영상편집 내용이 어느분야에 적용되나요? (0) | 2023.04.07 |
Dos에서 prompt 란? (0) | 2023.04.06 |
IPv4의 아이피 갯수는? (0) | 2023.04.05 |
콘텐츠 내 자동삽입광고