시스템 부팅에 대한 생각 ?
글쓴이: ljh0431 / 작성시간: 목, 2009/09/03 - 7:16오후
32비트 리눅스가 있다고 보고,
메인보드의 ROM BIOS는 16비트명령어인가요 ?
DOS처럼요.
그리고 부팅과정을 보면,
ROM BIOS가 시동을 하고, 후에, 하드디스크의
부팅파티션의 레코드를 읽어서 제어권을 주고(jump) 그리고,
32비트 리눅스일 경우, jump받는 부분에 시스템 로드시키는 명령어가 있고,
로드가 되면 16비트 작동을 32비트 보호모드로 넘어가면서 리눅스가 작동한다.
제가 옛날에 32비트 어셈블러를 공부하면서 기억에 심어놓아던 것들인데,
이것이 맞나요 ? 10년이 넘어서 기억이 가물가물하네요.
시스템이 어떻게 부팅이 되는지 대략적인 흐름을 확인하고 싶습니다.
메인보드나 하드디스크등 하드웨어적으로 설명해 주시면 감사하겠습니다.
아시는 분 계시면 도움글 부탁드립니다.
Forums:
네
거의 맞습니다.
임베디드쪽을 보세요.
음.. 전체적인 부팅순서는 잘 알고 계신데, 하드웨어적이라...
사실 하드웨어 20년전이나 지금이나 다른 게 있나요. 속도만 빨라졌지...
전원이 인가되면 파워가 적절한 전압으로 각 장치에 공급을 해주죠.
그 중 메인보드가 중요한 부품들을 품고 있으므로 가장 먼저 가야 할 것이구요.
메인보드에 전원이 들어오면 CPU가 바이오스에 저장된 코드(POST 등)를 실행합니다.
(이건 전원이 들어오면 특정 메모리 번지에서 데이터를 읽도록 미리 정해져 있기 때문에 가능합니다.)
비디오 카드 체크해서 부팅화면 뿌려주고,
바이오스에 저장된대로 부팅가능한 디바이스를 순서대로 찾아 해당 디바이스의 MBR로 제어권을 넘깁니다.
여기부터가 부트로더의 역할이구요...
제 기억도 온전치 않아 틀린 점이 많을 것 같습니다.
자세한 설명은 이 곳에서... [클릭]
-------------------------
Go to the U-City
----------------------------------------------------------------------------------------
Don't Feed the Trolls!
----------------------------------------------------------------------------------------
댓글 달기