Makefile
- 빌드 규칙을 정리한 파일
- make 명령을 주면 정해진 규칙대로 수행하여 출력 파일 생성
helloos5 구조
- 기존의 nas 파일, 부트섹터만 만든 bin파일, make.bat, 빌드를 위한 Makefile로 구성
Makefile 전체
default :
../z_tools/make.exe img
ipl.bin : ipl.nas Makefile
../z_tools/nask.exe ipl.nas ipl.bin ipl.lst
helloos.img : ipl.bin Makefile
../z_tools/edimg.exe imgin:../z_tools/fdimg0at.tek \
wbinimg src:ipl.bin len:512 from:0 to:0 imgout:helloos.img
# 커멘드
asm :
../z_tools/make.exe -r ipl.bin
img :
../z_tools/make.exe -r helloos.img
run :
../z_tools/make.exe img
copy helloos.img ..\z_tools\qemu\fdimage0.bin
../z_tools/make.exe -C ../z_tools/qemu
install :
../z_tools/make.exe img
../z_tools/imgtol.com w a: helloos.img
clean :
-del ipl.bin
-del ipl.lst
src_only :
../z_tools/make.exe clean
-del helloos.img
Makefile 빌드 규칙 예제
- make -r ipl.bin
=> 명령을 입력하면 Makefile이 아래의 규칙을 수행하여 ipl.bin과 ipl.lst 출력
- ipl.bin : ipl.nas Makefile
=> ipl.bin을 빌드하기 위해 ipl.nas와 Makefile이 필요 (의존 관계 설명)
- 나머지 내용들도 이와 같이 빌드 수행
Make 명령 실행 결과
- 위 작성 규칙대로 ipl.bin과 ipl.lst가 생성됨
이미지도 만들자
- make -r helloos.img
=> 규칙대로 helloos.img 파일이 출력됨
Makefile 명령 정의하기
- 빌드 규칙으로 쉽게 빌드했으나 다 입력하기 힘듬
=> 명령(커멘드) 정의를 통해 자동화 하자
커맨트로 이미지 쉽게 만들기
- helloos.img를 지우고, make img 입력
=> make img 명령 규칙에 따라 helloos.img 생성
나머지 규칙
- make run : img 생성 후 실행
* run 하기전에 bash 셀인 경우 copy 가아니라 cp로 변경해야함! 별도 경로 에러도 고치자
- make install : img 생성후 플로피디스켓에 저장
- make clean : img 만드는데 사용한 bin파일과 lst 파일 삭제
make run 결과
- qemu 상에서 잘 부팅되고 있음
'컴퓨터과학 > 컴퓨터, OS' 카테고리의 다른 글
os만들기 - 11. 버퍼 어드레스와 세그먼트 레지스터 (0) | 2020.08.01 |
---|---|
os만들기 - 10. make IPL (0) | 2020.08.01 |
os만들기 - 8. 어셈블리 명령어들과 부트섹터 이미지 생성 (0) | 2020.08.01 |
os만들기 - 7. 어셈블리어 기본 명령어와 레지스터 (0) | 2020.08.01 |
os만들기 - 6. 어셈블리어 시작하기 (0) | 2020.08.01 |