크래프톤 정글 2기

[크래프톤 정글 2기] Day 83

KimCookieYa 2023. 6. 25. 13:52

회고

길었던 프로젝트 3가 끝나간다. 과제도 거의 끝나가는 추세이지만, 역시 마지막이 가장 어려운 법. Memory Mapped File 파트는 테스트 케이스가 무척이나 많아서 하나하나 예외처리를 해주어야 했다. 특정 테스트 케이스를 통과하기 위해서는 test_main()을 뜯어보며 어디서 에러가 발생했는지 추적했다. printf를 찍어보면서 어디서 터졌는지 쫓아가다 보면 시간을 꽤 많이 쓰지만, 문제의 원인을 발견하고 pass 할 때의 감동은 이루 말할 수 없다.
 
내일은 일요일. 핀토스 프로젝트 3의 마지막 날이다. 마지막으로 남은 Swapping을 조금 구현하다가 발표 준비를 할 계획이다. 시간 내에 구현하는 게 힘들겠지만, 그래도 최선을 다해봐야겠지.
 

Memory Mapped File

이 파트에서는 특히 트러블 슈팅 이슈가 많았다. 테스트 케이스가 굉장히 많기도 하고, 테스트 케이스를 뜯어보지 않으면 알 수 없어서 하나하나 뜯어보고 어디서 에러가 터졌는지 추적해야 했다. 그러다가 하나를 고치면 다른 하나가 터지기도 하고.. 지금까지의 Pint OS 중에서 가장 할 게 많은 파트였다.
 

Swapping

Swapping 파트를 구현해야 하는데, 힘이 쏙 빠졌다. 오후 9시부터 Swapping 구현을 시작했다. 스왑 테이블이란 것을 구현해야 하는데 어떤 자료구조를 사용해야 하는지 몰라서 처음부터 구현하려고 하다가 동료가 disk 구조체라는 것을 알려주었다. 또 쓸데없이 시간 낭비를 할 뻔했다.
 

오늘의 저녁

 

만고쿠