(WIL) WEEK11 : pintOS Project 03 - 2 (Stack Growth ~ Swap In/Out)
Team4 Notion Link (정리가 잘 되어있진 않다...)
https://meokee-zzo.notion.site/W10-Pintos-Project03-TEAM-4-d2a1fcef42994df598abe3a229be2706
W10 Pintos: Project03 TEAM 4
Sequential Schedule
meokee-zzo.notion.site
정글에 오고, C 과정이 시작되고나서부터 항상 느끼는 점이있다. 빠르게 치고 나가는 특정 반 사람들보다 많이 느리게, 해당 프로젝트가 끝나가는 무렵에 비로소 해당 프로젝트 주차의 코드 구현, 작동 원리, 이 함수들을 왜 구현하며 어디에서 필요한 지, 이 함수와 저 함수는 역할이 비슷한 것 같은데 어떻게 다른 지 등이 두루뭉술하지만 여차저차 머릿 속에서 구조화된다. 빠르고 정확하게 과제에서 요구하는 핀트를 잡는 방법을 익히는 것이 어려운 것 같다.
특정 팀원에 크게 의존적이었던 프로젝트 1, 2와는 다르게 정글 과정의 가장 큰 꽃이라고 할 수 있는 2주 짜리 프로젝트 3은 정신적으로 많이 힘들었지만 결국 끝이 났다. 팀적인 활동에 있어서 얼마나 매끄럽게 흘러갔는 지는 크게 중요하지 않다. 어찌되었든 힘차게 계속 굴러갔던 몇몇 다른 팀과는 다르게, 우리 팀은 세 바퀴의 크기가 모두 같지만 그 재질이 제 각기 너무도 다른 느낌이었다. 힘차게 구른 적이 없었던 것 같다. 여러 블로그를 참조해야 했고, 각각 Fail이 나온 테스트 케이스를 서로의 코드를 참조하여 고쳐보고, 잘 굴러가는 팀의 코드를 묻고, 베끼며 어찌되었든 도착지에 도착을 했다. 세 명의 머리를 맞대고 로직을 짜고, 모두 다 같이 구현을 해서 141개(혹은 140개)의 테스트 케이스를 모두 통과한 다른 팀 만큼은 아니지만, 엑스트라를 제외한 모든 테스트 케이스를 통과했을 때의 기쁨은 앞으로 있을 pintOS 프로젝트4는 물론, 나만의 무기 프로젝트를 진행함에 있어서 큰 원동력이 될 수 있을 것 같다. 눈물 찔끔 흘릴 뻔했다. (T도 감정은 있다.)
컴퓨터(특히 운영체제)의 밑 바닥까지 파헤쳐가는 공부는 너무나도 어렵다. 사람마다 타고난 CPU 차이라고 합리화를 시키며 멘탈 관리를 했지만(일정 부분, 여전히 팩트이긴 할 것 같다.), 이 정도로 난이도 있는 공부는 지난 몇 년간의 개인의 학습법과 정글에 오고 난 뒤에 학업에 어떻게 임했는 지 그 습관에 따라 갈린 부분이 클 것이라는 생각이 많이 들었다. 물론 나도 정글에 온 뒤로 근 몇 년 중 정말 열심히 학업에 임했지만, 그 시행착오가 아주 많았고, 그리 크지 않은 주제에 대해 깊고 깊게 파고드는 방식의 공부가 익숙하지 않았던 것 같다. 역시 합리화일 수도 있지만, 정글에서 그 자체로의 결과물이 아주 아주 중요하지는 않을 것 같다. 하지만, 내 방법이 어떻게 틀렸는 지 깨닫고, 느리지만 계속 조금씩 수정해서 더 좋은 습관을 들이는 것, 이를 바탕으로 적어도 주니어(개발일을 하는 내내여야 하겠지만) 때에 어떻게 공부하고 자기개발을 해야할 지를 확실 시 하고 수료를 하는 것이 가장 중요한 목표가 되어야 할 것이다.
WIL에 기술적인 내용을 기술하지 않는 것은 그 이유가 있다. 머릿 속에 뒤죽박죽, 코드로도 뒤죽박죽 정리되어 있는 개념과 코드들을 갑자기 한 큐에 글 하나로 정리하지는 못 하겠다. 추후에, 아마도 수료 직후에는, 여태 근 한 달간 열심히 공부한 OS의 개념과 작동원리들에 대해 잘 정리해야 겠다는 다짐을 해본다.