강좌 / 팁

소프트웨어 운영체제 만들기 -2-

2013.12.22 09:52

BillGates 조회:5564 추천:5

이번 시간엔 부트로더의 기능을 알고 부트로더를 작성해볼텐데요....

일단 부트로더의 기능은 부팅을 시켜주는 로더입니다. 크기는 512byte이어야 하고 511번째에는 55라는 코드와 512번째에는 AA라는 코드가 있어야합니다. 그래야 BIOS가 알아보니까요.

 일단 아주 기초적으로 부트로더를 만들어보겠습니다. 문자도 출력되지않고 그냥 부팅만 되는 그런 부트로더요.


; 부트 로더, boot.asm(저같은 경우에는 boot.asm 이라고 이름을 정했지만 다른이름이 정해져있으시다면 다른 이름을 넣으셔도됩니다.)

times 510-($-$$) db 0x00

dw 0xaa55


실제코드는 밑줄친 곳이고요, 세미콜론(;) 뒤에 있는 글씨들은 주석입니다. 어셈블리어는 ;을 주석으로 쓰기때문이죠.(C언어랑 헷갈리시면 안됩니다. 명령의 끝에 ;을 붙이는게 아니라 어셈블리어는 ;을 주석으로 붙여줘야 합니다. 안그러면 나중에 nasm으로 컴파일하실때 에러가 나올겁니다)


그리고선 이 코드들은 (쓰고 싶은 이름).asm으로 저장하시면 됩니다. 그뒤에 다운받은 nasm이 있는 폴더에 이 asm파일을 가지고 가서 거기에 둔뒤에 nasm을 킨뒤에 이렇게 입력하시면 됩니다.


nasm boot.asm -f bin -o boot.bin


asm 이름은 상관없고요.,. 다음번엔 이 nasm이 한일을 설명하고 저 코드들도 설명해드리겠습니다. 일단 nasm이 아직도 없는 분들을 위해 nasm 투척합니다.


다음편 예고: 만든 부트로더에 대한 설명과 nasm이 컴파일한 명령어 분석.

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
2261 소프트웨어| IE 모드 지정 및 여러가지 설정 죠타로 4672 2 12-28
2260 하드웨어| USB 메모리를 하드디스크처럼 인식하도록 만들기 [5] DOS 15270 2 12-28
2259 기 타| 유튜브 손쉽게 다운로드 하는 방법 [13] realzero 12517 2 12-27
2258 기 타| 구글 사용법 [6] asklee 6439 5 12-24
2257 하드웨어| 리튬 이온 배터리 관련... [2] asklee 5505 2 12-24
2256 소프트웨어| [수정등록]삼성 리커버리 솔루션 이식하기 (ATIV PRO) [11] 달리아 21537 12 12-24
2255 윈 도 우| chkdsk 디스크 검사 시간 단축시키기 메트로작전 6068 3 12-23
2254 하드웨어| 저용량 하드 디스크 활용하기 [9] DOS 9819 5 12-22
2253 소프트웨어| 운영체제 만들기 -3- [6] BillGates 5419 6 12-22
» 소프트웨어| 운영체제 만들기 -2- [5] BillGates 5564 5 12-22
2251 소프트웨어| 운영체제 만들기 -1- [15] BillGates 10591 9 12-21
2250 소프트웨어| uTorrent 포터블 만들기 [5] 화랑 8345 6 12-20
2249 소프트웨어| 삼성 노트북에서 카탈리스트 13.12 WHQL 설치하기 [1] 메트로작전 5267 2 12-19
2248 윈 도 우| 마우스 바이러스 치료법 [6] 정불사용자 10973 7 12-18
2247 소프트웨어| 마우스제스처 StrokeIt 사용법 - (본문 수정) [35] 고양이2 5187 13 12-17
2246 소프트웨어| 윈도우 날짜를 바꿔봅시다 배치파일 만들기 [2] 똥꼬빤쮸 4746 1 12-17
2245 소프트웨어| StrokesPlus, 제스처로 apply버튼, ok버튼 누르기(AHK의 활용) [2] 유리얼음 4229 5 12-14
2244 소프트웨어| Primo 램디스크의 하이브리드 디스크 활용하기 [11] 고맙쥐 9450 9 12-14
2243 소프트웨어| 오브젝트독(Object Dock) 추가 내용 - 본문 수정② [27] 고양이2 5159 19 12-13
2242 소프트웨어| Internet Explorer 32비트 64비트 아이콘 만들기 [7] 죠타로 4457 4 12-13
XE1.11.6 Layout1.4.8