E D R , A S I H C RSS

ToastOS

Toast Operating System

A Brief History


The war was brief, but harsh. Rising from the south the mighty RISC OS users banded together in a show of defiance against the dominance of Toast OS. They came upon the Toast OS users who had grown fat and content in their squalid surroundings of Toast OS Town. But it was not to last long. Battling with SWIs and the mighty XScale sword, the Toast OS masses were soon quietened and on the 3rd November 2002, RISC OS was victorious. Scroll to the bottom for further information.

작업 환경

MS-DOS

볼랜드 C++ 3.0 컴파일러

TASM 터보 어셈블러

에뮬레이션 환경

Bochs 1.3 - Win32


작업 환경이 win 2000 pro로 들어가면서 바뀌었습니다.

이미 익숙해진 환경 바꿀 생각없다. 나중에 VM을 깔면 바꾸겠지만 지금은 너무 익숙하다.

대략적인 구성

필요한 기능만 간략적으로 구현하기로 했다.

진행중인 구성요소

* 파일 시스템

* 멀티 태스킹

* Execute Loader d

* Memory Alloc Architecture

경 커널 재 배치 완성 축


음..우선 전에 플로피 1번 섹터에서 부트섹트를 읽어 들여 부트 로더를 만든다고 까지 얘기한 것 같다.그럼 커널로더는 무엇일까? 부트 로더가 할 수 없는 기이한 일들을 커널 로더가 한다. 우선 보호모드로들어가는 것과 커널을 실행가능한 상태로 재배치 시키는 일등을 한다. 왜 그런 일을 할까? 부트로더가512kb밖이 되지 않아 그런 일들을 할 수 없기 때문이다. 위에 사진에서 보면 퍼런 글씨로 kernel loader라고나오는데 전에 CAU Operating System 어쩌구...가 먼저 나온다..다만 VMWARE를 쓰기때문에 그런 글씨가 안나온다. 여하튼 커널 로더가 가지는 의미는 우선 부트로더를 만들기 위해 어쩔수 없이 썼던 짜증나는 어셈을 이제 안써도 된다...ㅋㅋ 사실 어셈은 계속 써야 된다... 다만 이제 어쎔을 주로 쓰지 않고 C에서 인라인 어쎔을 쓸것이다. 이제 Boland C 3.1 버전의 컴파일러로 커널로더와 커널을 제작하게 될 것이다. 그럼 위와 같은 것을 그냥 해주면 되는거 아니냐? 라고 반문하는 사람이 있을 것이다.. 그렇다. 그냥 해주면 된다. 우선 컴파일할때 -S라는 옵션을 두어서 어셈블리 소스를 만들고 나서 그리고 그렇게 만들어진소스의 extern들을 링크 시키고 그런 다음 EXE파일을 실행가능한 재배치상태로 만들고 나서 부트로더와 같이뒤집어 씌우면 된다.
간단하지 않은가?

또하나 이제까지 삽질한 이유중하나가 플로피의 속도가 느리기 때문에 커널로드를 한번 읽고서는 재대로 실행하지못한다는 것 -> 이것때문에 정말 많은 삽질을 하게 되었다.

이제 어셈에서 씨로 OS를 제작할 수 있다. ㅋㅋㅋ

아차 나는 boland C 3.1버전을 쓰지만 gcc를 쓰는 사람은 MAKE PLAIN BINARY FILE이라는 PDF가 있을 것이다.찾아서 읽어보면 아주 평평한 바이너리파일을 만드는 법을 배울것이다. 참고로 C에서 평평한 바이너리 파일을 만들기 위해 몇가지 주의사항이 있다. 그 PDF파일에 적혀 있으니 읽어보도록...

세부 페이지 목록

InsideCPU 인사이드 CPU

REAL_LIBOS 과도기적인 이전의 프로젝트


다른 분들 메모

DeleteMe) bochs에서 플로피 이미지파일 추출 안하고, 직접 디스켓으로 부팅하는거 성공하시면 정보좀 흘려주세요~ ^^; --혀뉘

나의 메모

오늘 mkboot와 부트 섹터 끝~ 오호호 낼 부터 커널하고 커널 배치 만들어야쥐..아...삽질 삽질...괴로워~~~ 다시 시작하자!! 왜 이리 어쌤은 어려운가!


And now... introducing the better alternative... RISC OS

RISC OS OWNS YOU ALL! http://www.hashriscos.org LET THE RISC OS VERSUS TOAST OS WAR COMMENCE!
IRC

RISC OS burns TOAST!

owned.


Get the butter.. this could get messy

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-05-27 07:09:19
Processing time 16.0131 sec