본문/내용
_SLIDE_1_
분활 컴파일과 인터럽트 처리
_SLIDE_2_
○소스 파일 분화
○ Makefile 정리
○ 헤더 파일 정리
○ 어제 남은 설명
○ PIC 초기안
○ 인터럽트 핸들러 작성
목 차
_SLIDE_3_
○소스 파일 분화
Bootpack.c
bootPack.c 그외
Dsctbl.c GDT.IDT 등의
Descriptor table 관련
Graphic.c 그림 그리기 관련
좋은 점
▶처리 내용이 제대로 분류되어 있다면,수정들의 할때 목적한 장소를 찾기 쉽다.
▶Makefile을 잘 써 두면, 다시 쓴 파일만 컴파일되므로 Make가 빨라진다.
▶각각의 소스 파일이 잛아 진다.
▶깔끔하게 보인다.
나쁜 점
▶소스 파일 수가 늘어 난다
▶분류에 실패하면, 수정할 곳을 찾기 힘들어 진다.
_SLIDE_4_
○ Makefile 정리
-일반규칙과 행성 규칙이 부딪쳐도 에러가 나지 않고 부딪친 경우에는 생성 규칙이 우선
_SLIDE_5_
○ 헤더 파일 정리
머리에 붙은 파일
-중복 부분을 전부 없애고 다시 정리하여 bootpack.h 라는 파일생성
graphic.c 187행
dsctbl.c-67행
Bootpack.c-81행
합계335행
Bootpack.h-69행
graphic.c 159행
dsctbl.c-51행
Bootpack.c-25행
합계301행
_SLIDE_6_
○ 어제 남은 설명
load-gdtr 이 부분은 지정된 라미트번지와 GDTR 이라는 48비트의
레지스터에 대입하기 위한 함수
48바이트 이므로 MOV명령어 사용 할수 없어 메모리 번지로만 지정
번지를 지정 하면 GDTR에 대입
_SLIDE_7_
-세그먼트의 정보를 CPU의 사양에 맞추어서 8바이트로 정리한 함수
-입력의 위해 struct SEGMENT_DESCRIPTOR 구조체 준비
♣세그먼트
8바이트에는 세그먼트에는 크기, 세그먼트의 시작번지, 세그먼트의 관리용
속성 3개의 정보 들어간다
♣구조체
…
…