안녕하십니까 까마굽니다 (__)

사실은 얼마전에 웹서비스를 하던곳의 서버가 죽었습니다.

메인보드가 맛이 갔다고 하는군요. 상당히 안타깝습니다 크윽.. ㅡ0ㅠ/~~

웹이 맛이 가니까 할일도 없고.. 사실 그동안 홈피에 글쓰는게 일이었는데.. ㅡ0ㅠ/~~

아우~~ 언제 복구되려나...

여름이 다가서 상당히 시원하군요. 다들 감기조심하시구요~~

그럼 좋은하루 되세요 (__)

 안녕하십니까 까마굽니다 (__)
 몇주의 삽질끝에 겨우 정리를 끝내고 이제야 겨우 소스를 릴리즈 하는군요. 아래는 릴리즈 파일의 00ReadMe.txt 입니다.

그럼 좋은하루 되세요 (__)
 게시물 및 소스파일 링크http://kkamagui.codesum.org/board/read.php?table=broad&no=10
링크 클릭
//////////////////////////////////////////////////////////////////////////////
//=============================================================================//
// 2004 06 18 // KKAMA OS 첫번째 소스 릴리즈
// Home Page : http://kkamagui.codesum.org//
//=============================================================================
 1. 인사말 ---------------------------------------------------------------------
안녕하십니까 까마굽니다. (__)약 2주동안 열심히 소스를 정리한 결과, 디버깅 코드의 대부분을 정리하고 소스를 릴리즈 할 수 있는 정도가 되었습니다. 물론, 다 정리된건 아니고 한참 개발중인부분과 너무 복잡해서 정리하기에 시간이 드는 부분을 제외한 나머지 부분을 정리했습니다.정리하면서 느낀건데, 확실히 중복 개발된 코드들이 많이 보이는군요, 나중에 다시중복 개발하게 될때 한번에 모아서 처리해야겠습니다.공개하기엔 너무 허접한 소스코드라 처음에 상당히 고민을 많이 했습니다만, 한소리먹을 생각하고 공개하기로 마음 먹었습니다.KKAMA OS가 나오기까지 도움을 주신 OSX86의 Edward님, B2OS의 주인장님, OSX86의 기홍님, OSX86의 모립, 그외 여러 많은 분들께 감사드리며 KKAMA OS를 인터넷으로 보냅니다.도움이 되시길 (__)

 2. License --------------------------------------------------------------------
KKAMA OS는 소스에 저작권 제약이 없습니다. 필요에 따라 추가, 수정, 삭제, 변경이 자유로우며 코드 일부 사용 또한 제약이 없습니다.KKAMA OS 자체가 여러 자료를 참고해서 만들어졌으므로, 선현(??)들의 뜻을 따라 License를 Free로 합니다.다만, 재배포시 현재의 00ReadMe.txt 파일을 포함시켜야 합니다.
 
 3. 소스 열람시 주의사항 -------------------------------------------------------
KKAMA OS의 소스코드는 저의 코딩 스타일에 따라, Tab을 insert space로 하여 3개의스페이스로 치환되어있습니다. 물론 코드가 좀 오래되고 여기저기서 코딩한 결과,Tab문자가 스페이스로 치환되지 않아서 Tab을 3으로 맞추지 않으면 들여쓰기가 맞지않는 일이 생길 수 있습니다. 이러한 불편을 최소화하기위해서 소스를 보실때는 Tab을 3으로 조정하면 됩니다.또 각 name 들이 상당히 길고, Structure를 typedef로 줄이지 않고 그대로 사용한걸보실 수 있는데, 제가 이름을 줄여쓰는걸 별로 좋아하지 않아서 그렇습니다.소스는 최대한 간단히 구현할려고 노력했습니다만, 과연 그런지는 의문이군요. @0@/~

 4. 컴파일 및 링크 준비 --------------------------------------------------------
KKAMA OS의 소스코드는 DJGPP V2.0(GCC V3.2.1) 이상의 버전과 NASM V0.98.36에서 컴파일 및 링크되었습니다. NASM은 DJGPP용으로 나온 Binary가 있으니 사용하시면 에러없이 컴파일 가능합니다.DJGPP의 설치 및 NASM의 설치는 각 사이트 DJGPP : http://www.delorie.com/NASM : http://nasm.sourceforge.net/wakka.php?wakka=HomePage/에서 찾을 수 있습니다.설치가 잘 안되는 분은 질답란에 올려주세요. http://kkamagui.codesum.org/board/list.php?table=qna

 5. 커널 컴파일 및 이미지 만들기 -----------------------------------------------
KKAMA OS 소스코드는 특정 IDE를 사용하지 않기 때문에, DJGPP에 포함된 make.exe를통해 컴파일 됩니다.00Kernel 디렉토리는 커널소스가 포함되어있고,01Boot 디렉토리는 부트로더 및 커널로더의 소스가 포함되어있습니다.각 폴더에는 컴파일에 관련된 Makefile이 존재합니다.부트로더 및 커널로더를 컴파일할 시, MAKEBOOT.BAT를 실행하시면 01Boot 폴더에boot.bin (부트로더), kloader.com (커널로더)가 생성됩니다.커널을 컴파일할 시, make.bat를 실행하시면 00Kernel 폴더에 kkernel.bin (커널이미지)가 생성됩니다.Floopy를 통해 부팅가능한 이미지를 생성하기위해서 MAKEIMG.BAT를 실행하시면 각각생성된 boot.bin, kloader.com, kkernel.bin을 통합하여 DISK.IMG를 생성하게 됩니다.생성된 DISK.IMG를 통하여 Bochs, VMWare로 부팅이 가능합니다.DISK.IMG를 Floppy에 옮겨담기 위해서는 A: 에 빈 디스켓을 삽입하고 DISK.IMG를 실행하면 됩니다. 엔터를 입력하기를 기다리는데, 엔터를 입력하면 디스크에 쓰기가진행되고 완료되고나면 Floppy를 통해 KKAMA OS로 부팅할 수 있습니다.

 6. 커널 실행 및 테스트 --------------------------------------------------------
KKAMA OS의 홈페이지 http://kkamagui.codesum.org/kkamaosHowTo.html의 설치 및 실행순서를 참조하시면 명령어 리스트를 보실 수 있습니다.

 7. 버그 및 의문사항 -----------------------------------------------------------
KKAMA OS의 홈페이지 http://kkamagui.codesum.org/board/list.php?table=qna의 QNA 페이지를 이용하시면 됩니다

안녕하십니까 까마굽니다 (__)

어느정도 정리가 되고나면, Assembly Compiler를 만들어볼까 합니다.

마침 에디터는 만들어놓은게 있으니, compiler 만 있으면 내부적으로 코딩 + 테스트가 가능

할것 같네요. 어디까지나 계획입니다만, 잘될지... 으흣.. >_<

Comment - 일단 생각만 하고 있습니다. (__) 생각만..

안녕하십니까 까마굽니다 (__) 
편리한 GUI 구현을 위한 VBE 문서입니다. 
제가 보고 구현을 했을때가 2.0이었는데, 어느세 3.0이군요.. 
그럼.. 좋은하루되세요 (__) 
http://kkamagui.codesum.org/board/read.php?table=tip&no=18

안녕하십니까 까마굽니다 (__)

이틀동안 삽질해서 Icon Loader를 1차로 완성했습니다.

감동.. >_<... 그래서 그걸 이용해서 KKAMAGUI의 커서를 바꿔줬는데요..

정말 감동이군요.. ㅡ0ㅠ.. 넘 좋아...

삼각형의 하늘색 화살표가 날아다니는걸 보니.. 것참.. 많이 왔다는 생각이

드는군요..

올해 말쯤이 되면 2살이 되는데.. 그때까지 열심히 해볼랍니다..

홧팅 @0@/~~

그럼 좋은하루 되세요 (__)

http://kkamagui.codesum.org/screenshot.html

Bellona2 주인장님께 사용 허락을 요청했지만 거부당했습니다.

GPL을 따르지 않기 때문 에 타프로젝트에 사용되는걸 꺼려하신다더군요.

그래서 잡담란의 48번 글을 삭제했습 니다. 흠 결국 제가 만든걸 걍 써야 하겠군요.

혼란스럽게해서 죄송합니다 _(__)_

http://kkamagui.codesum.org/board/list.php?table=blog

Bochs에서 GUI Test를 그만해야할것 같습니다. 솔찍히 제 꼬물 피시에서는 너무 느리고

영 속도가 안나네요.

다른 에뮬레이터 프로그램을 사용해야 할것 같습니다. 계속 업데이트 하려고 생각했지만

영 시원치 않군요..

아참 screenshot 란에 새 스샷을 올렸습니다. 오늘 윈도우 폰트를 변경해서 말이 죠.. ㅋㅋ

그럼 오늘도 이만~ (__)

http://kkamagui.codesum.org/screenshot.html

안녕하십니까 까마굽니다 (__)

오래간만에 스샷을 한판 찍었습니다.

GUI Application 2개 ( BMP 뷰어 및 GUI 테스트용 Applicaion )

GUI Console 업글 ( 커서 보여주기 )

가 되어서 일단 스샷 한컷 올립니다.

http://kkamagui.codesum.org/screenshot.html

아아.. 이제 그만 자야 겠군요..

어린이 날에 이것만 했네요.. 쩝쩝..

그럼 좋은하루 되세요 (__)

 안녕하십니까 까마굽니다 (__)
 출장중이라 소스 손대는게 별로 여의치는 않지만, 갖고 놀다보니 심각한 버그가발견되어서 수정해 올렸습니다.Release에 커널이.. HowTo에 d.img가 있는데요..이걸 두개 다 엎어쓰시면 될꺼같네요.

 이번에 추가된 사항은,stdin, stdout, stderr 의 사용 및 pipe의 추가를 들 수 있겠는데요,이걸 이용해서 gui Shell을 구현해 봤습니다.커널을 부팅해서 gui를 입력하시면.. 지난번과 변함없는 허접한 GUI 화면이 뜨구요,거기에 기본적으로 생기는 창 하나가 GUI Shell이 되겠네요..클릭 하셔서 키를 입력해 보시면.. 키가 입력되고, 콘솔에서 쓰는 명령이 그대로먹는걸 확인하실 수 있습니다.
 
 머.. 같은 루틴이니 당연한 결과.. ㅡ_ㅡa..근데.. Bochs에서.. 왜 일케 느린지 모르겠네요..V*Ware에서는 꽤 괜찮은데 말이죠..황당합니다.. 쩝쩝.. ㅡ0ㅡa...네.. 그럼 질문사항은 QnA로 올려주시구요..좋은하루 되세요 (__)
http://kkamagui.codesum.org

안녕하십니까 까마굽니다 (__)

요즘 하고 있는 터미널 구현에 관련된 문서 두개를..

아는분(에드님)을 통해 구하게 되어 이렇게 올립니다..

관심있으신 분은 아래의 링크를 따라가세요..

http://kkamagui.codesum.org/board/read.php?table=tip&no=7

http://kkamagui.codesum.org/board/read.php?table=tip&no=8

그럼 좋은하루 되세요 (__)

안녕하십니까 까마굽니다 (__)

아는 분의 도움으로 홈피를 이전하게 되었습니다 (__)

http://kkamagui.codesum.org

한번씩 들러주세요~ (__)

그럼 다들 좋은하루 되세요~

안녕하십니까 까마굽니다 (_ _)

//--------------------------------------------------------------------------------------
// 아래는 수정된 Bochs 릴리즈에 대한 정보에요~
//--------------------------------------------------------------------------------------
드뎌 Bochs의 수정을 대강 끝내고 Bochs의 binary를 릴리즈 했습니다.
Serial 쪽이 수정된 Bochs는

bochs.exe, Serial.ini

파일 두개로 이루어져 있으며
두 파일 모두 Bochs 인스톨 디렉토리에 덮어쓰시면 됩니다.

수정된 bochs는 serial.ini 파일 설정에 따라 실제 Serial을 사용하는 모드와
파일을 사용하는 모드가 있습니다.
serial.ini에 UseRealSerial = 0 으로 설정하시면 파일모드가 되며,
이때 SerialIn 및 SerialOut 옵션을 사용할 수 가 있는데요, 주석을 풀지 않으시면 기본적으로
bochs가 실행되는 폴더에

입력 파일은 SerialIn.txt, 출력파일은 SerialOut.txt

를 사용하게 됩니다. SerialIn.txt는 Trunc 되지 않으며, 따라서 여러번 입력이 가능하고,
SerialOut.txt는 Bochs가 실행되는 동안 계속 열려 있으며 처음 실행될때 TRUNC하게 됩니다.
SerialIn.txt 파일은 SerialOut.txt파일과는 달리, Serial Interrupt중 RD Interrupt가 Enable 되는
순간 open되고 Disable 되는 순간 close됩니다. 즉 Interrupt를 Disable 시켜놓으면 입력 파일을
수정할수도 있다는 이야기지요.

실제 Serial을 사용하려면 Serial.ini 파일에 UseRealSerial = 1로 설정하면 되며,
이때 Bochs가 실행되는 순간 Com1은 open되고 115200/8/1/N 으로 열리게 됩니다.
따라서 com1 및 com2를 크로스 케이블로 연결한 후, com2에 하이퍼터미널을 열어 확인하실
수 있습니다.

//--------------------------------------------------------------------------------------
// 아래는 커널 릴리즈에 대한 정보에요~
//--------------------------------------------------------------------------------------
네~ 또 커널을 릴리즈하게 됬는데요~

이번 릴리즈는 커널뿐만 아니라, 하드디스크 이미지( d.img )도 같이 릴리즈 하게 되었네요~
HowTo에 가보시면 d.img가 있구요~ release에는 Kernel이 있답니다~
이번에 제가 릴리즈한 bochs와 serial.ini파일을 같이 이용하시면 더 잼는 일을 할수 있답니다.
@0@/~

여튼 이번에 수정된 내용을 말씀 드리자면..
첫째는 램디스크의 추가입니다~. 4Mbyte짜리 램 디스크를 생성해서 ( rd0 ) root에 마운트 시
켰습니다. 그리고 램 디스크에 '/com1' , '/c'를 생성해서 각각 serial 및 hda0를 마운트 시켜놓았
구요. 그래서 조금더 테스트에 편리한 환경으로 만들었습니다.
둘째는 Application에 추가입니다. 수정된 bochs를 이용해서 serial로 Application을 전송해서
bochs의 하드에 옮겼거든요. 파일은 /c/ked.kmg 에서 보실수 있구요 제가 5일쯤 투자해서 만든
간단한 에디터 입니다. 초 허접하지요..
Application의 실행방법은 console에서 'loader /c/ked.kmg' 를 입력하시면 되구요 그러면
KKAMAGUI EDITOR 가 실행되서 화면에 나올겁니다.
셋째는 GUI Application에대한 약간의 수정인데요, 조금 반복되는 루프를 ASM으로 수정함으로
해서 약간의 속도 향상을 노렸습니다. 흐음 해보니 더 빨라진게 눈에 보여서 윈도우 MOVE 할때
빨간 사각형도 그리게 했습니다. ( 그런데 여전히 Bochs에서는 좀 느리군요.. ㅡ_ㅡ;;; )
그리고 키 입력을 받아서 좌측 상단에 바탕화면 윈도우에 그 키를 찍게 했구요, 윈도우의 글씨
색을 바꿔서 한번찍어봤습니다. 그외는 모두 동일하구요..

http://comeng.ce.knu.ac.kr/~c0038063

으흣~ 궁금하신점은 답글이나 QNA로 해주세요~ 그럼 (_ _)

안녕하십니까 까마굽니다 (__)

드디어 제 홈피에 게시판을 추가하는데 성공했습니다..

머 설치법을 몰라 한참을 삽질하긴 했는데.. 만들어 놓고 나니

허접해도 기분은 좋군요.. ㅎㅎ

아.. 한 3시간을 삽질한거 같은..

그럼 다들 좋은하루 되세요 (__)

ps) http://comeng.ce.knu.ac.kr/~c0038063

홈피~

안녕하십니까 까마굽니다 (__)

혹시 안부 게시판 말구

제가 어떤 게시판을 만들어서.. 다른분들이 글을 올릴수 있게 할수는 없나요??

그냥 궁금해서..

아시는분 계시면.. 답글을~

그럼 좋은하루 되세요 (__)

안녕하십니까 까마굽니다(__)

네.. 블로그를 쓴지는 얼마 안됬지만..

블로그의 좋은점을 톡톡히 보고 있습니다..

머 일단 개발로그 형태로.. 매일 이런게 남으니까..

내가 멀하고 있는건지 확실하게 알수가 있네요..

그리고 내가 하는 일을 적어놓으므로써, 머 필요할때는 다른사람들과

의견 교환도 가능할테니.. 이 또한 멋지고...

내가 글을 적으면서 이런 저런 문제점을 깨닫기도 하고..

아주 멋지네요..

앞으로 자주 이용해야 할듯...

근데.. 설마.. 이게 데이터가 어느날 갑자기 날아가고..

이러진 않겠지... ㅡ_ㅡ;;;

블로그도 가끔 백업 받아야 하나...

그런가요??

ㅡ_ㅡ;;;; 갑자기 겁이나네요..

개발로그를 하드에 텍스트로도 남기고..

여기도 남겨야 하는가..

서.. 설마.. ㅡ_ㅡ;;;;;

안녕하십니까 까마굽니다.(__)

오늘 전시회에 갔다가.. 하는일 없이 서있기만 하고..

다리만 부어서 왔다는.. ㅡ_ㅠ..

크윽.. 역시.. 전시회는 빡십니다 그려.. ㅋㅋㅋ

그래도 제 차례가 이제 끝났기 때문에..

낼 부터는 편해지겠죠.. 므핫~~

슬슬 놀아보까나~~

안녕하십니까 까마굽니다 (__)

오늘도 하루가 다 갔네요.. ㅋㅋㅋ

오후에는 전시회 준비를 한다고.. 여기와서..

노가다 약간하고 지금 밥 먹으러 갈라꼬 대기중이지요.. ㅎㅎ

아앗..

사람들이 왔군요~

밥 먹으러 가야징.. ㅋㅋㅋ

난주 또.. ㅎㅎㅎ

네.. 까마굽니다 (__)

게시판을못만들어 일케 블로그를 ㅋㅋㅋ

남기실 말씀이 있으시면

우측 상단에 있는 안부 게시판을 클릭해서남겨주시구요..

그럼 좋은하루 되세요 (__)

ps) 게시판을 홈피에 다는 그날까지.. ^0^/~ 홧팅..

+ Recent posts