본문 바로가기

Operating System/xv6

[xv6] introduce

xv6


xv6 MIT PDOS lab에서 2006년에 자체 개발한 연습용 운영체제이다이전에는 v6 (Unix Version 6)를 이용해서 실습을 했다고 하는데운영체제에 대한 집중적인 학습이 부족하여서 새로 만들었다고 한다그래서 v6, Intel x86 멀티 프로세서, ANSI C를 기반으로 xv6가 만들어지게 되었다.


스탠포드에서 만들어진 핀토스 (PintOs)도 굉장히 유명한 프로젝트이다핀토스도 물론 매우 공부가 많이 되는 프로젝트이긴 하지만 이론과 설명서 과제등의 구성을 봤을 때, xv6가 훨씬 더 완성도가 높다그래서 처음 운영체제를 공부하려고 하거나운영체제를 배웠지만 프로젝트를 빠르게 몇 개 해보고 싶을 때 xv6를 강력히 추천한다.


아래의 Course URL로 들어가면 6.828: Operating System Engineering 들어갈 수 있다딱히 링크로 들어가지 않더라도 MIT Open Course Ware’에 들어가서 찾아봐도 된다여기서 xv6프로젝트 수업자료 뿐만 아니라 Operating System 이론 수업 내용도 다 찾아 볼 수 있으니 공부를 많이 하고 싶은 사람들은 이용하면 될 거 같다.

Course URL : https://pdos.csail.mit.edu/6.828/2018/index.html


 

Xv6 material


Xv6 source code


Github에 들어가면 xv6 소스코드를 받을 수 있다.

git clone git://github.com/mit-pdos/xv6-public.git



text


Text bookprintout( 소스코드 복붙한거) book (개발 설명서 같은 책)이 있다. Printoutcscopectags를 이용해서 소스코드를 분석하면 되니 그리 필요하지 않지만 bookxv6 프로젝트를 하기에 매우 도움된다. 그러므로 book은 꼭 받아서 보면 좋다.


git clone git://github.com/mit-pdos/xv6-book.git


또는 아래 링크로 받으면 된다.

xv6 printout : https://pdos.csail.mit.edu/6.828/2018/xv6/xv6-rev10.pdf

xv6 book : https://pdos.csail.mit.edu/6.828/2018/xv6/book-rev10.pdf


homework


schedule에서 들어가면 일정표가 나와있고거기에 맞춰서 하나하나 다운받으면 되는데, hw 1에서 12까지 링크를 모아 놓았으니 아래 링크를 통해 받아도 된다.


Homework 1: Boot xv6

Homework 2: shell

Homework 3: system calls

Homework 4: lazy page allocation

Homework 5: xv6 CPU alarm

Homework 6: multithreaded programming

Homework 7: xv6 locks

Homework 8: uthreads

Homework 9: barrier

Homework 10: big files

Homework 11: crash

Homework 12: mmap





Revision History


2018.12.23 

 최초 업로드






'Operating System > xv6' 카테고리의 다른 글

[xv6]Homework 1: boot xv6  (1) 2019.08.09