지난 주 목요일부터 휴가입니다만은... 어디 놀러가는 일에 취미가 없는지라 고향에 내려와서 OS를 만들고 있습니다. ㅡ_ㅡa... 누가 들으면 간단한 애플리케이션을 만드는 것 처럼 이야기한다고 욕을 할지도 모르겠습니다. 사실 말은 간단하게 해도 수많은 시행 착오를 거쳤습니다. ^^;;;; Intel 문서에 태그가 안 붙어있는 쪽이 거의 없을 정도고, 코드는 테스트 루틴 때문에 너덜너덜합니다. ㅎㅎ

 일단 64Bit로 부팅시키는 것까지 성공했고, 지금은 Interrupt Descriptor Table(IDT)를 만들어 넣고 있습니다. 이것만 추가되면 이제 키보드로부터 데이터를 받을 수 있으니 좀 더 Active한 작업이 가능해지겠지요. ;) OS 코드들은 기존에 만들어놓은 32Bit OS쪽에서 당겨쓰고 있습니다. 어셈블리어로 짜여진 부분은 일일이 손을 좀 봐야하지만, C 코드 부분은 거의 손댈 것이 없더군요. ㅜ_ㅜ 역시 C 만세.... ㅠ_ㅠ)-b

 이번 휴가 때 어느 정도 동작하는 64Bit OS를 만들어 놓을 생각입니다. 휴가가 며칠 안남았기 때문에 하드한 일정이 예상되나... 역시나 밖에 안나가는 오타쿠(??)적인 기질 때문에 가능할 듯도 합니다. ㅡ_ㅡa... 재미있는 건 어제 밤새도록 코딩해서 오늘 오전쯤에 64Bit Mode로 동작시켰는데, 오후에 후배 녀석이 64Bit OS 제작 중인데 인터럽트를 어떻게 처리하냐고 물어보더군요. ^^;;;; 이것 참... 뭔가 섬뜩한 것이... @0@

 아래는 오늘까지 작업된 따끈따끈한 OS의 스샷입니다. 64Bit인지 어떻게 믿냐구요? 아래의 코드를 실행한 결과를 화면으로 캡쳐했습니다. int 가 4byte, long이 8byte로 나오는 것을 보면 64bit임을 알 수 있습니다. ^^)/~~


사용자 삽입 이미지

 어휴 작업을 너무 오래까지 했더니만 눈이 따갑네요. 이만 자야겠습니다. ^^)/~
 다들 좋은 밤 되세요 ;)


+ Recent posts