부트로더란?
- 시스템의 하드웨어를 초기화하고 운영체제의 커널을 메모리에 올려 실행시키는 시스템 프로그램
- JTAG/BDM -> 부트로더의 디버깅 및 Writing을 도와주는 장비
부트로더의 위치
- 일반적으로 시스템 메모리의 물리 주소 0번지부터 위치
- 롬, 플래시메모리, SRAM 등 정적인 메모리에 위치.
부트로더의 기능
- 메모리 초기화
- 하드웨어 초기화
- 직렬포트의 초기화
- 네트워크초기화
- 프로세서 속도, 인터럽트의 초기화
- 커널과 램 디스크 적재: 커널과 램 디스크를 램에 적재하여 실행
- 사용자 인터페이스 기능
부트로더의 특징
- 하드웨어 의존성이 강하다.
- 초기화코드는 대부분 어셈블리언어로 작성된다.
- 프로그래머는 프로세서 구조, 특징, 사용법을 알고 있어야 한다.
- clock, memory controller, UART, Ethernet, 기타 등등...
부트로더의 종류
- U-Boot(Universal Bootloader)
- PPCBoot와 ARMBoot 프로젝트 기반
- LILO(Linux Loader)
- GRUB(Grand Unfied Bootloader)
- Loadlin
- EtherBoot
- Blob
- ARM용 부트로더
- PMON(PROM Monitor)
- MIPS 보드용
- RedBoot
- RedHat에서 개발 및 배포
- eCos 기반
'컴퓨터 프로그래밍' 카테고리의 다른 글
user ID 생성 및 sudo 권한 부여 (0) | 2013.09.07 |
---|---|
세마포어(semaphore) 란 무엇인가? (0) | 2013.09.07 |
임베디드 시스템 개발을 위한 기본 지식 (0) | 2013.09.07 |
(HTML) img 태그 정리 (2) | 2013.09.07 |
big.LITTE (빅리틀) 이란 무엇인가? (0) | 2013.09.07 |