2010-03-27 4 views
17

처음부터 자신의 x86 운영 체제를 작성하기 위해 공부할 최고의 운영 체제는 무엇입니까?학습을위한 최상의 교육용 운영 체제?

+1

저는 단지 궁금 해서요 ... 왜 그렇게하고 싶습니까? – intuited

+4

자신 만의 OS를 작성하는 것은 매우 간단합니다. 어떻게 작동 하는지를 배우는 좋은 방법입니다. –

+8

나는 당신이 정말로 당신의 질문을 이해하지 못해서 당신이 이해할 수있는 답을 줄 수 있는지 모르겠습니다. 나는 당신이 어떻게 운영체제를 쓰길 원하지 않는지 이해하지 못한다. 우리는 은하의 반대쪽에서 나와야합니다. – mudge

답변

9

제가 생각하기에, Minix은 그 정확한 목적을 위해 만들어졌습니다.

재미있게 보내세요!

+1

Tannenbaum의 이론과 실천이 담긴 책을 잊지 마세요. Minix가 쓰여진 이유는 다음과 같습니다. http://www.amazon.com/Operating-Systems-Design-Implementation-Second/dp/0136386776 – msw

+0

unlixos.org Ulix는 Intel x86 아키텍처 용 C 및 어셈블러로 작성되었습니다. Ulix는 이미 TH Nürnberg (Nuremberg Institute of Technology)에서 운영 체제 과정에서 세 번 사용되었습니다. – Talal

1

솔직히 x86 아키텍처 나 운영 체제에서 시작하지는 않지만, 기본은 Fox11 development kit과 같은 8 비트 스타터 키트와 같을 것입니다. 대학에서는 M68HC11 프로세서 (키트에 포함 된 것) 용 어셈블리에 내 첫 번째 (그리고 유일한) OS를 썼습니다.

처음부터 자신 만의 OS를 구축하고 싶다면 앞서 긴 길을 가졌습니다.

+0

나는 내가 들어오는 것을 안다. 나는 이미 그것에있다. 귀하의 의견을 보내 주셔서 감사합니다. – mudge

9

OS 전체를 한꺼번에 파악하는 것이 어려울 수 있습니다. 에있는 tutorials은 시작하기 위해 몇 가지 "베어 본"코드 샘플이 있습니다.

+0

신난다, 고마워. – mudge

2

대학의 OS 클래스는 Nachos OS 프로젝트를 사용하고이를 구현했습니다. 나는 C++ 버전을 만들었지 만, 이것도 자바 포트라고 생각합니다. 비록 그것이 많은 일 이었지만 매우 흥미롭고 많은 것을 배우는 것을 기억합니다.

+0

견과류! 나는 NachOS를 말할 것입니다. 우리는 UWaterloo에서 OS 클래스로 사용했습니다. Lemme은 커널 공간이 little-endian이고 사용자 공간이 big-endian 인 시스템은 약간의 mindfsck입니다. – MikeyB

0

나는 잠시 뒤로이 기사를 읽었습니다. 재미있을 수도 있습니다. 이 사람은 OS 개념을 가르치는 바로 그 목적을 위해 MINIX를 다시 썼습니다. 따라서 아마 공부하기 좋은 간단한 OS 일 것입니다. http://www.cs.vu.nl/~ast/brown/

그러나 Martin과 Cory가 언급했듯이, 씹기에는 큰 덩어리입니다.

0

오래된 OS를 공부하는 데는 많은 요점이 없습니다. 오랜 수명을 가진 경향이있는 현재 운영 체제는 거의 모든 것이 있습니다. Singularity

2

등 신선한 아이디어를 한번보세요. 운영체제의 작동 방식에 따라 달라지며, 마이크로 커널을 원한다면, 아마 Minix 3를 공부해야합니다. 모 놀리 식 커널 (monolithic kernel) 현재의 리눅스 커널은 시작하기 좋은 곳이다. (힌트 : arch/x86/boot를 보면 거기에 아주 흥미로운 코드가있다.) 그러나 저는 개인적으로 Intel 및 AMD 설명서를 읽은 다음 osdev.org 포럼 및 wiki에서 약간의 독서를해야한다고 개인적으로 생각합니다. 그들은 공부할 수있는 충분한 코드가 있으며, 일반적으로 초보자에게 도움이됩니다.

1

많은 다른 운영 체제 소스, 확실히 osdev 베어 본 자습서, 대상 하드웨어의 OS 조사 및 문서에 대한 백서를 읽는 가장 좋은 방법이라고 생각합니다.

필자는 개인적으로 l4-ka pistachio kernel을 보길 권합니다. C + +로 작성되었습니다. jimix 나 혈통 같은 체크 아웃 할 가치가있는 여러 개의 작은 프로젝트도 있습니다. 이 답변이 이미 많은 정보가 - -

베스트 osdev 포럼 및 위키 곁에 난 그냥 처음부터 86 커널의 내 버전을 썼다 http://forum.osdev.orghttp://wiki.osdev.org

2

보세요! (나의 OS class project를 위해) 그리고 그것은 내가 아마 기술 할 수 없었던 경험이었다. 위 링크에서 중요한 자원을 찾을 수 있습니다.