<깔끔하게(?) 정리된 MINT64 OS의 실행 화면>
한동안 정신 없이 바쁘다가 다시 코드를 볼 일이 생겨서 얼마 전부터 코드를 보고 있습니다. :) 코드를 새로 추가하는 것은 아니고 기존 코드를 정리한 것뿐이지만… 어쨌든 내부가 변하긴 했으니 기념 삼아 올려봅니다. ^^;;; 가만히 생각해보니, 그동안 MINT64 OS에 대해서 많이 올리긴 했지만 제대로 된 설명을 한번도 한적이 없는 것 같네요. 코드도 한번 정리한 김에 MINT64 OS에서 실행 가능한 애플리케이션과 커맨드도 같이 정리해둡니다.
MINT64 OS가 기본으로 내장하고 있는 애플리케이션은 5개로 왼쪽 위에 있는 “Application” 버튼으로 실행할 수 있습니다. 각 애플리케이션의 역할은 아래와 같습니다.
- Base GUI Task : 모든 GUI 애플리케이션의 기본 뼈대 역할을 하는 태스크로 윈도우를 생성하고 윈도우에 관련된 이벤트를 처리하는 단순한 애플리케이션입니다.
- Hello World GUI Task : 가장 기본적인 GUI 애플리케이션으로 윈도우 시스템이 전달하는 메시지를 화면에 출력하고 자신과 같은 Hello World GUI Task로 유저 이벤트를 전송하는 기능도 같이 가지고 있습니다.
- System Monitor Task : OS의 상태를 표시하는 애플리케이션이며 프로세서의 상태와 메모리의 상태를 표시합니다.
- Console Shell for GUI : GUI 모드에서 동작하는 콘솔 셸로 커맨드 라인 해석기(Command Line Interpreter) 입니다. 여기에 대해서는 잠시 후에 설명하겠습니다. ;)
- Image Viewer Task : JPG 파일을 읽어서 화면에 출력해주는 애플리케이션입니다. 하드 디스크에 image1.jpg와 image2.jpg, 그리고 image3.jpg가 있으니 파일명에 이를 입력하면 이미지를 볼 수 있습니다.
GUI 애플리케이션도 좋지만 키보드로 커맨드를 입력하는 재미(?)도 무시할 수 없어서, 초반에 MINT64 OS를 개발할 때 쓰던 콘솔 커맨드를 그대로 GUI 애플리케이션으로 만들었습니다. 콘솔 셸에서 테스트할 수 있는 커맨드에는 여러 가지가 있지만, 그 중에서 특히 유용한 몇 가지를 추린다면 아래와 같습니다.
- help : 콘솔 셸이 지원하는 커맨드 목록을 출력합니다.
- dir : 하드 디스크에 들어있는 파일을 출력합니다.
- hddinfo : 하드 디스크의 정보를 출력합니다.
- filesysteminfo : 파일 시스템의 정보를 출력합니다.
- exec <application nane> <argument> : 파일 시스템에 저장된 애플리케이션 파일을 실행합니다. 애플리케이션은 ELF 파일 형식을 사용하며, 하드 디스크에 helloworld.elf부터 onelinememo.elf까지 총 6개가 저장되어 있습니다. <Argument> 부분은 옵션으로 애플리케이션마다 필요로 하는 정보가 다르고, 이는 잠시 후에 설명하겠습니다. ;)
콘솔 셸 커맨드 중에서 exec는 아주 특별한 커맨드로 파일 시스템에 저장된 GUI 애플리케이션을 실행하는 역할을 합니다. 파일 시스템에 저장된 애플리케이션은 6가지가 있고 각 애플리케이션마다 필요한 Argument와 역할은 아래와 같습니다.
- exec helloworld.elf : MINT64 OS에 내장된 helloworld 애플리케이션과 같습니다.
- exec textviewer.elf asciiart.txt : 파일 시스템에 저장된 파일을 읽어서 화면에 출력해주는 애플리케이션으로, Argument로 넘어온 파일을 읽어서 표시합니다.
- exec bubble.elf : 풍선을 쏘는 버블 슈터라는 게임입니다. ^^;;;
- exec hexa.elf : 같은 색깔의 블럭을 없애는 헥사 게임입니다. ^^;;;
- exec hangulviewer.elf main.c : 파일 시스템에 저장된 파일을 읽어서 화면에 출력해주는 애플리케이션으로, textviewer.elf와 다른 점은 한글을 지원한다는 것입니다.
- exec onelinememo.elf : 한 줄 메모장으로 간단한 메모를 남길 수 있는 애플리케이션입니다.
기능은 얼마 없는데 쭉 나열하고 보니 많은 것처럼 보이는 군요(착시 효과가 엄청난 듯…). ㅠㅠ 실제로 어떤 모습인가 확인하고 싶은 분들은 아래에 있는 압축 파일을 다운로드한 뒤에 MINT64OS.bat 파일을 실행하면 됩니다. 가상 머신에서 동작하는지라 사용하는 PC의 성능에 따라 약간 편차가 있을 수 있는데… 듀얼 코어 정도면 실행하는데 큰 문제가 없을 겁니다. ^^;;;
아우~ 주말 내내 정신 없이 보냈더니 이제 좀 쉬어야겠네요. 그럼 다들 좋은 밤 되시길~ ;)
'OS Kernel > MINT64 OS' 카테고리의 다른 글
[출간] "64비트 멀티코어 OS 원리와 구조" 가 드디어 출간되었습니다 ^^ (61) | 2011.06.24 |
---|---|
[출간~!!] "64비트 멀티코어 OS 원리와 구조"가 드디어 나왔습니다. ㅠㅠ (57) | 2011.06.22 |
[Milestone] Milestone과 함께 잠시 돌아왔습니다. ;) (28) | 2010.03.28 |
NASM 컴파일러로 SYSCALL과 SYSRET를 실행할 때 주의할 점... (11) | 2009.12.12 |
[Milestone] MINT64 OS에 작업 표시줄과 시스템 모니터 태스크가 추가되었습니다~!! 그리고 저 살아 있어요 ㅠㅠ (16) | 2009.11.12 |