
[목표]
11주차를 마무리합니다.
fork, wait, exec를 최대한 구현해봅니다.
발표 자료를 종합했다.
11주차 발표를 진행했다. 굉장히 다양한 주제들을 살펴볼 수 있었다.
오늘은 랜덤런치날로 다른 동료분들과 식사를 했다.

12주차 발제를 시작했다.
이번주차는 VM에 대해서 알아봅니다.
userprog를 하고 vm 진행할지, 지금까지 내용을 킵하고 vm을 진행할지 결정해야한다.
ifdef vm; 가 있을 것이다. vm이 정의됐을때, 활성화되는 목록들인 것이다.
→ 이거는 userprog하면서 알게되었음.
spt라는 개념이 나올것이다.
가상주소의 경로를 관리하는 것이다. pintos는 쓰레드 구조체로 관리를 해도된다.
실제 os에는 프로세스 단위로 만들어야 되지만, pintos는 스레드 단위로 관리 가능하다.
→ 왜냐하면, pintos는 원 프로세스, 원 스레드를 원칙으로 하기 때문이다.
userprog 기존과 동일하게 진행하면된다.
코드 구현시 GPT 사용을 최소화하는 것을 추천하지만, 개념같은 경우에는 GPT를 사용하는 것도 좋을 것이다.
KAIST 권영진 교수님 64비트 기준으로 진행하기 때문에 우리가 내용을 찾을 때는 해당 조건을 달아서 넣는 것을 추천한다.
팀별로 하나의 소스를 하는 것이 좋다. 팀당 유저 프로그램이 끝난 시점에서 머지된 소스코드 한개만 나오는 것이 좋은 시나리오이다.
이제 새로운 조를 만나면 3개의 소스 코드가 있을 것이다. 이제 어떻게 할 것인가?
→ 쉬운 방법은 하나의 소스 코드를 선택하고 진행하는 것이다.
→ 어려운 방법은 소스 코드를 테스트 케이스 별로 잘 만든 것들을 머지하는 경험을 해보는 것도 도움이 될 것이다.
회사에 가면 수많은 코드를 머지하면 무조건 오류가 많이 발생하기 때문에 미리 연습하면 면접시에도 도움이 많이 될 것이다.
유저 프로그램을 노션과 같은 진행도 관리를 했다면, 이번에도 그대로 해도되고 다른 방식으로 진행해도 된다.
Pintos가 쉬운것이 아닌거 맞다. 이번주 하는 것이 더욱 어렵다.
현업에 가면 Pintos와 비슷하다. 그러므로 그걸 미리 연습하는 것이 좋다. 아직까지 AI가 코드를 작성을 대신하는 단계는 아닌것 같다고 하십니다. 그러므로 개발자라는 직업이 아직까지 필요하다고 하신다.
중요한 건 내가 얼마나 자력으로 풀어 나갈 수 있는 지가 중요하다. 그리고 체화하는 것이 중요하다.
2주가 지나면 C언어를 다시는 안할 수도 있다. 그 다음은 나만무를 진행하기 때문에, 2주동안 Pintos에 집중하고 동료들의 협업을 하는 경험을 하면 좋겠다.
오늘 19시에 회식이 있다고 합니다. 회식하기 전에 동료 피드백을 하면 좋을 것 같다. 오늘은 바베큐 플래터이다.
잡담하면서 11주차 뭐했는지 확인, 휴식
가볍게 운동(종합)을 했다. 샤워를 하고 복귀했다.
먼저 회식전에 동료피드백을 하라고 해서 동료 피드백을 했다.
내 코드가 왜 안되는지 fork와 wait이 되는 코드와 비교를 해봤는데, 태생이 잘 못된 것 같다. args를 잘 못 받아오는 건지… 어쨋든 이번주 정리할 내용이 많으니 정리먼저 하려고 한다.
최종적으로 프로젝트2는 read, wire까지 마무리하며 종료했다.
먼저 이번 주차 프로젝트2 내용을 args 내용밖에 정리를 하지 못해서, 간간히 정리한 내용을 바탕으로 시스템 콜 내용을 정리해보도록하겠다.
Pintos 중간 주차 회식을 했다.
바베큐 플러터를 먹고, 스타크래프트를 했다. 다른분들은 술집갔다오기도 했다.



힘든 와중에 재밌는 시간이었습니다~