Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- multi-oom
- 일지 시작한 지 얼마나 됐다고
- 핀토스 프로젝트 1
- 핀토스 프로젝트 2
- 아직도 실험 중
- 글리치
- 핀토스 프로젝트 4
- 마일섬
- 셋업
- 내일부터
- 황금 장미
- 핀토스 프로젝트 3
- 글루민
- 노가다
- 끝
- 바빠지나?
- 파란 장미
- PINTOS
- Project 1
- 가테
- 제발흰박
- 자 이제 시작이야
- alarm clock
- botw
- 핀토스 프로젝트
Archives
- Today
- Total
거북이의 쉼터
(2021.10.29) 프로젝트 2 매뉴얼 읽어보기 본문
일주일만에 동숲으로 힐-링하다가 다시 돌아왔다. (입대할 때는 몰랐는데 이거 재밌네...)
프로젝트 1이 성공적으로 끝났으니 이제 다음 프로젝트를 시작해야한다. 예전에는 분명 프로젝트 1을 올리지 않은 raw 핀토스 위에 프로젝트 2를 짜는 것이 가능했는데 이제부터는 허용되지 않는 모양이다.
You must build project 2 on top of your project 1 submission. Although no code from project 1 affects code for project 2, you still have to pass test cases for project 1 because this is an incremental project.
또 뭔가 extra project 같은 것이 생겼다. 이건 일단 기본 프로젝트 2를 끝낸 다음에 살펴보도록 하자.
매뉴얼에서 이야기하고자 하는 것은 프로젝트 1까지는 전부 kernel 영역에서 돌아가는 코드를 다루었기에, 이제부터는 user가 만든 프로그램을 운영체제가 받아 실행시킬 수 있어야 한다는 것이다. 본 프로젝트의 목적은 User 프로그램이 OS와 system call을 통해 상호작용하는 것을 구현하는 것이다. 해당 프로젝트가 끝나면 핀토스는 제한된 C언어로 짜여진 간단한 프로그램들을 실행시킬 수 있게 된다.
이를 위해서는 신경써야 할 것이 몇 개 있는데,
- User 프로그램이 가지는 제한적인 권한으로 발생하는 문제 (system call)
- 여러 User 프로그램이 돌아갈 때 가상화 문제 및 User 프로그램의 메모리 접근 (VM)
- 파일 입출력 및 사용 (파일 시스템)
등 여러 문제를 일괄적으로 관리해주어야 한다. 다행히 매뉴얼에서 일정 부분 무엇을 신경써야하는지 가이드가 있고, 무엇부터 구현하라는 안내가 있기에, 해당 안내에 따라 다음 포스팅부터 구체적인 가이드라인을 잡아보도록 하자.
'코딩 삽질 > KAIST PINTOS (CS330)' 카테고리의 다른 글
(2022.02.02) 복귀? (0) | 2022.02.02 |
---|---|
(2021.11.02) Argument Passing 가이드라인 (0) | 2021.11.02 |
(2021.10.23) Mlfqs - 기타 구현 및 디버깅 (0) | 2021.10.23 |
(2021.10.23) Mlfqs - Mlfqs 관련 함수 추가 (0) | 2021.10.23 |
(2021.10.19) Mlfqs - fixed point 실수 연산 (0) | 2021.10.19 |
Comments