리눅스 시작 프로세스
위키백과 ― 우리 모두의 백과사전.
리눅스 시작 프로세스는 리눅스 계열 운영 체제가 시작하는 프로세스이다. BSD와 다른 유닉스식 시동 프로세스와 여러모로 비슷하다.
[편집] 들어가며
리눅스의 경우, 바이오스에서 부트 로더, 커널로 시동하는 과정을 거친다. 커널은 스케줄러 (멀티 테스킹 허용)를 시작하고 초기화(사용자 환경을 구축하여 사용자가 로그인할 수 있게 함)한다. 자세하게 말하면 다음과 같다.
- 바이오스가 하드웨어 플랫폼 시작 작업을 수행한다.
- 하드웨어가 올바르게 인지되고 시작되면, 바이오스는 리눅스 부트 로더의 1 단계를 포함하는 지정된 시동 장치로부터 파티션 시동 코드를 실행한다. 1 단계는 2 단계 (시동 로더 코드의 대다수)를 불러온다. 일부 로더는 이를 수행하기 위해 1.5 단계와 같은 중간 단계를 사용할 수도 있다. 왜냐하면 현대의 대용량 디스크는 뒤의 코드 없이 충분히 읽혀지지 않을 수도 있기 때문이다.
- 시동 로더는 사용자에게 사용 할 수 있는 시동 옵션의 메뉴를 보여 준다. 그리고 메모리로 데이터가 풀리는 커널을 불러들이고, start_kernel()을 호출하기 전에 필수적인 하드웨어와 메모리 페이징과 같은 시스템 기능으르 설정한다.
- 그 뒤에, init 과정, 유휴 프로세스 및 스케줄러 이전에 start_kernel()이 상당수의 시스템 설정(인터럽트, 메모리 관리의 나머지 부분, 장치 초기화, 드라이버 등)을 수행한다.
- 스케줄러는 효과적으로 시스템 관리를 제어한다.
- Init 과정은 커널과 관련이 없는 서비스 및 구조를 설정하는 데 필요한 만큼의 스크립트를 실행한다. 이로써 사용자 환경이 구축되고 로그인 화면이 사용자에게 나타난다.
[편집] 같이 보기
이 문서는 컴퓨터에 관한 토막글입니다. 서로의 지식을 모아 알차게 문서를 완성해 갑시다. |