운영체제 기본/x86-64 Linux의 BIOS 부팅: 두 판 사이의 차이
외관
출처·문체 정리: 커널 원문은 git.kernel.org, em dash는 콜론으로 변경 |
목차의 불필요한 독서 안내 문장 정리 |
||
| 3번째 줄: | 3번째 줄: | ||
Linux 커널이 제어를 넘겨받은 뒤, 사용자 공간의 첫 프로그램을 실행하기까지의 과정을 따라간다. 기준은 '''Linux v6.12, x86-64, bzImage의 64비트 부트 프로토콜'''이다. 다른 부팅 방식과 갈라지는 지점은 해당 장에서 구분한다. | Linux 커널이 제어를 넘겨받은 뒤, 사용자 공간의 첫 프로그램을 실행하기까지의 과정을 따라간다. 기준은 '''Linux v6.12, x86-64, bzImage의 64비트 부트 프로토콜'''이다. 다른 부팅 방식과 갈라지는 지점은 해당 장에서 구분한다. | ||
전체 흐름은 '''진입 환경 준비 → 압축 해제된 커널의 초기화 → PID 1 생성 → init 실행'''이다 | 전체 흐름은 '''진입 환경 준비 → 압축 해제된 커널의 초기화 → PID 1 생성 → init 실행'''이다. | ||
== 읽는 순서 == | == 읽는 순서 == | ||
| 11번째 줄: | 11번째 줄: | ||
# [[운영체제 기본/x86-64 Linux의 부팅/init 실행과 사용자 모드 진입|init 실행과 사용자 모드 진입]]: /init과 init=의 선택, exec, 실제 사용자 모드 전환. | # [[운영체제 기본/x86-64 Linux의 부팅/init 실행과 사용자 모드 진입|init 실행과 사용자 모드 진입]]: /init과 init=의 선택, exec, 실제 사용자 모드 전환. | ||
함수 호출, 주소로의 분기, 태스크 생성, 프로그램 교체는 서로 다른 사건이다 | 함수 호출, 주소로의 분기, 태스크 생성, 프로그램 교체는 서로 다른 사건이다. | ||
2026년 10월 31일 (토) 06:50 판
Linux 커널이 제어를 넘겨받은 뒤, 사용자 공간의 첫 프로그램을 실행하기까지의 과정을 따라간다. 기준은 Linux v6.12, x86-64, bzImage의 64비트 부트 프로토콜이다. 다른 부팅 방식과 갈라지는 지점은 해당 장에서 구분한다.
전체 흐름은 진입 환경 준비 → 압축 해제된 커널의 초기화 → PID 1 생성 → init 실행이다.
읽는 순서
- 진입 규약과 압축 해제: 로더가 준비할 CPU 상태와 부트 정보, 두 startup_64의 차이.
- 커널 초기화: 초기 주소 공간과 C 실행 환경에서 start_kernel까지.
- PID 1 생성: 부트 태스크에서 별도 태스크를 만들고 나머지 초기화를 이어가는 과정.
- init 실행과 사용자 모드 진입: /init과 init=의 선택, exec, 실제 사용자 모드 전환.
함수 호출, 주소로의 분기, 태스크 생성, 프로그램 교체는 서로 다른 사건이다.