일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 황금 장미
- 마일섬
- alarm clock
- 바빠지나?
- 핀토스 프로젝트 3
- 내일부터
- 제발흰박
- botw
- 셋업
- Project 1
- 가테
- 아직도 실험 중
- 핀토스 프로젝트 1
- 자 이제 시작이야
- 글리치
- 일지 시작한 지 얼마나 됐다고
- 끝
- 핀토스 프로젝트
- PINTOS
- 노가다
- multi-oom
- 글루민
- 핀토스 프로젝트 2
- 핀토스 프로젝트 4
- 파란 장미
- Today
- Total
목록분류 전체보기 (128)
거북이의 쉼터
현타 오는게 지금까지 뭔가 많이 한 거 같은데 결과는 프로젝트 2의 복원에 불과하다. ㅋㅋㅋㅋ.... 이제 좀 본격적으로 프로젝트 3의 내용을 좀 짜보자. 이전 포스팅에서 조금씩 언급해온 stack growth를 구현하는 것이 해당 소주제에서 이뤄야 할 과제이다. pintos는 여지껏 stack은 단 한 개의 페이지로만 운영되어 왔다. 프로세스를 로딩할 때 argument가 들어갈 페이지를 제외하고는 할당해주지 않았었다. 그러나 이제부터는 stack의 공간을 추가적으로 할당할 필요가 있으면, 해당 페이지를 할당해주어야 한다. stack 공간을 할당할 때, 일반적인 실행 파일이 로딩되는 것과 다른 점은, stack 주소는 spt에 struct page로서 매핑이 되어 있음이 보장되어 있지 않다는 것이다. ..
왜 자도 잔 것 같지가 않지... 글이 안 써진다. 지금 구현되지 않은 것들에 대해 생각이 너무 깊어서 구현을 하려고 해도, 구현이 안된 것들이 발목을 잡는다. 그래서 몇 가지 규칙을 잡아놓고 구현을 하도록 한다. 메모리 누수는 되도록 신경 쓰지 않는다. 특히 struct frame의 free 여부는 잊어버리자. eviction과 관련되는 코드는 TODO 형태로 주석만 남겨놓고 구현하지 않는다. VM_FILE 종류는 신경 쓰지 않는다. Extra 프로젝트인 COW는 나중에 코드를 전부 뜯어고치는 한이 있더라도 신경쓰지 않는다. 그럼 시작하자. 매뉴얼의 남은 부분은 fork의 정상 작동을 위해 일반 페이지 테이블(pt)과 spt를 제대로 복사해야 하는 것과, 프로세스가 종료할 때 들고있는 자원을 반환하는 ..
보호되어 있는 글입니다.