우리는 운영체제의 구동 전, 어떤 일들이 일어나는 지 알아둘 필요가 있습니다. 컴퓨터 부팅이 어떤 매커니즘을 통해 구동되는지 알고 있으면 시스템에 이슈가 발생 했을 때, 하드웨어 문제인지 os문제인지 시스템 소프트웨어의 문제인지 판단을 할 수 있을 것입니다. 

부트스트랩이란?

부트스트랩(Bootstrap, 부팅)은 PC의 전원버튼을 누른 직후부터, 운영체제가 메모리에서 동작하기 시작할 때까지의 모든 과정을 말합니다.

[ 부팅 과정 ]

  1. 사용자가 PC의 전원 버튼을 누르면 메인보드에 전력 공급
  2. ROM or EEPROM(비휘발성 메모리)에 저장된 BIOS루틴 시작
  3. BIOS는 셀프테스트를 통해 주변 하드웨어를 체크하고 MBR(master boot record)에게 부팅정보 요청
  4. MBR에 존재하는 부팅정보를 읽어오는 부트스트랩 실행
  5. RAM(휘발성 메모리)에 Bootloader를 적재하고 디스크에 있는 os(커널)코드를 복사하여 메모리에 적재
  6. os는 사용자 초기화를 위한 명령어를 수행하고, 사용자의 입력을 받아서 이벤트 처리
  7. 부팅 완료

[ 컴퓨터 시스템 동작 전제 ] 

컴퓨터 시스템의 운영을 보면 장치 컨트롤러는 시스템 버스에 의해 cpu와 계속해서 신호를 보내고 있습니다. 이러한 동작이 되는 이유는 컴퓨터 시스템 동작에 있어 몇가지 전제하고 있는 것이 있기 때문입니다.

  • 입출력 장치, cpu는 동시 실행가능하다.
  • 각 장치 컨트롤러는 특정 디바이스 유형을 담당하게 됩니다. (디스크 컨트롤러는 디스크 담당, usb컨트롤러는 마우스,키보드,프린터 담당, 그래픽어댑터는 모니터를 담당)
  • cpu는 메인 메모리와 로컬 버퍼간의 데이터를 이동해주는 역할을 합니다.
  • 입출력은 장치컨트롤러의 로컬 버퍼로 전달됩니다.
  • 장치 컨트롤러는 작업이 완료되면 인터럽트를 발생시켜 cpu에 완료 알림을 보냅니다

'Computer Science > OS' 카테고리의 다른 글

시스템 콜  (0) 2022.10.17
운영체제 서비스  (0) 2022.10.17
Interrupt  (0) 2022.10.15
운영체제  (0) 2022.10.14

+ Recent posts