개요

그동안 학교에서 배웠던 내용 + 전공책을 뒤져가며 공부했던 내용 + 취준 하면서 복습했던 내용들을 정리하는 목적으로 작성하였습니다.

 

1. 운영체제(OS) 란?

시스템의 자원과 동작을 관리하는 소프트웨어다.

  • 자원? CPU, memory, file, I/O

 

 

2. 운영체제의 기능

'커널 모드에서 실행하는 소프트웨어'로 크게 2가지 기능을 제공

  1. 하드웨어와 응용 프로그램의 매개로 아름답고 일관된 인터페이스로 제공한다. (사용자 관점)
  2. 하드웨어의 자원들을 공정하게 할당 및 관리한다. (시스템 관점)

 

 

3. 부팅 시 운영체제 실행 과정

1. BIOS(Basic Input Output System)

제일 먼저 CPU가 ON 되고, CPU는 ROM(비휘발성 메모리)에 있는 BIOS(Basic Input Output System) 데이터를 읽어온다.

 

2. POST(Power on self test)

BIOS는 POST(Power on self test)를 진행하여 하드웨어의 정상적인 작동을 검사한다.

부팅: 1.BIOS & 2.POST

3. 부트스트랩(Bootstrap)

POST에 이상이 없으면 BIOS는 부트스트랩을 실행하여 부팅 정보를 메모리로 읽어 온다.

  • 부트스트랩 : Disk의 MBR에 저장된 부팅 정보를 RAM(메모리)으로 읽어온다.
  • MBR(Master Boot Record): Disk의 첫 번째 섹터

4. 부트로더(Bootloader)

"운영체제(Boot)를 메모리로 읽어오는 역할(loader)"

부트로더는 Disk에 있는 운영체제(OS) 코드를 메모리로 읽어 온다. 즉, 앞에서 읽어온 부팅 정보는 부트로더(Bootloader)이다. 운영체제는 메모리에 상주하지 않지만 커널은 메모리에 상주한다.

부팅: 3.부트스츠랩 & 4.부트로더

5. 운영체제(OS) 실행

읽어 온 운영체제 명령에 의해 CPU는 첫 프로세스(Demon)를 즉시 실행한다.

이후, 인터럽트가 발생하면 CPU는 각종 작업을 처리한다.

부팅: 5. 운영체제 읽어옴

 

 

 

Reference

[부팅 과정] https://neos518.tistory.com/113

[Modern Operating Systems 3rd] 

'CS > 운영체제 (OS)' 카테고리의 다른 글

8. IPC (Inter-Process Communication)  (0) 2021.08.11
7. 프로세스 vs 스레드  (0) 2021.08.11
4. 프로세스의 주소 공간  (1) 2021.08.08
3. 인터럽트 (Interrupt)  (1) 2021.08.08
2. 커널 (Kernel)  (0) 2021.08.06

+ Recent posts