gwimong's blog Software Engineer

OS 만들기 #1

OS를 개발하기 위한 준비

NASM 설치

  1. NASM 다운로드 http://nasm.sourceforge.net
    Download - 2.08.01(원하는 버전) - win32(OS 선택) - nasm-2.08-win32.zip
  2. 설치
    압축 해제후 C:\nasm에 nasm.exe, ndisasm.exe 파일을 복사합니다.
  3. PATH 설정
    커맨드 창에서 찾아가서 실행해도 되지만, 좀더 편하게 사용하기 위해서 환경변수 설정을 합니다.
    (XP 기준) 내 컴퓨터 아이톰을 마우스 오른쪽 버튼으로 클릭해서 속성 클릭 -> 위쪽의 고급 탭 -> 환경변수 버튼 클릭 ->시스템 변수 중에 Path 선택하여 편집 버튼 클릭 -> 변수 값 마지막에 ‘;’ 를 추가한후 C:\nasm추가 예)%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\IDM Computer Solutions\UltraEdit-32;C:\nasm

Rawrite 설치

Rawirte툴은 디스크의 물리주소에 직접 데이터를 쓰기 위한 free tool입니다.
http://uranus.it.swin.edu.su/~jn/linux/rawwrite.htm

Rawrite 툴로 일일히 플로피 디스크에 설치하여 매번 컴퓨터를 재부팅하며 테스트 하는것은 매우 번거롭습니다. 그래서 free tool인 QMEU를 이용하고자 합니다.
OS구조와 원리 -OS 개발 30일 프로젝트- 의 저자인 카와이 히데미씨가 만든 NASK(nasm어셈블러에 기능을 조금 더 추가한 어셈블러입니다.)와 QMEU를 이용할 것입니다.

사용방법은 QEMU.zip을 압축을 푸시고 QEMU 폴더에 ipl.nas라는 이름으로 어셈블리 코드를 넣으신뒤 !con_nt 파일을 실행시켜 커맨드 창을 뛰웁니다.
커맨드 창에서 asm->makeimg->run 식으로 배치파일을 실행시키면 됩니다.

asm을 실행시키면 ipl.nas 파일은 nask로 ipl.bin파일과 ipl.lst파일을 생성시켜 줍니다. ipl.lst는 어셈블링 하면서 에러가 났을경우 에러 메세지를 저장하고 있습니다.

makeimg는 생성된 ipl.bin파일을 플로피 디스크 이미지로 생성시켜주는 배치 파일입니다. 생성되는 파일은 qemu 폴더에 fdimage0.bin 파일입니다.

run은 qemu 에뮬레이터를 실행 시키는 배치 파일입니다.

img

빨간 네모만 제가 입력한것이고 나머지는 배치파일을 실행함으로써 자동으로 입력되어진 명령어들입니다.
빨간 네모 입력하지 않고 직접 명령어들을 다 치셔도 됩니다 ㅎ


Comments

Content