SW Jungle
-
정글 vs 나, 5개월의 회고.SW Jungle/daily 2024. 7. 30. 16:21
시작하며,정글에서 떠나는날 마지막으로 강의실에 남아정글에서 있었던 총 5개월을 회고하는 글을 작성하려고한다. 첫 정글처음 들어왔을땐 정신이 없었다. 알아서 방을 찾아가 짐을 풀고 강의실로 모여서 설명을 듣고 0주차 과제를 하는 스케줄이 휘몰아 쳤고, 공지로만 스케줄을 파악해야했기 때문이다. 뭔가 열심히 하려고 온건 맞는데, 정말 내가 뭘 얻고 싶어서 온건지는 딱 못정했었던것 같다. 오자마자 신기했던게 중학교 동창을 만나게 되었다. 사실 입소전 슬랙 프사 보고 서로 알고있었는데, 와서 보니 맞는거 같아서 우리는 바로 인사하고 서를 알아보고 금방 친해졌다. 기숙사도 옆방이고. 아무튼 동창 덕분에 정글 초반을 잘 버틸수 있었다. 왜냐하면 내 룸메는 일주일 늦게 오기로 해서 뭔가 쓸쓸했거든. 그리고 별거아닌 걸..
-
정글 최종 발표 일기SW Jungle/daily 2024. 7. 29. 14:34
다들 안녕하신가요? 5주동안 달려온 나만의 무기를 크래프톤 사옥에 가서 발표를 끝마친 날입니다. 사실 이글은 한참뒤에 쓰는 일기지만 뜻 깊었던 경험을 잊지 않기위해 작성해봅니다.2024.7.20 발표 전까지떨리는 마음으로 눈을 뜨고 비장한 마음으로 이른 아침에 무수히 많은 발표들을 했던 407호로 향했다. 발표현장을 상상하며 혼자 허공에 발표를 했다. 그전까지는 많이 떨렸었는데 연습을 반복하며 작은 자신감을 쌓아왔기 때문에 마음이 차분해지고 조금 덜 떨수 있지 않았나 싶다. 버스를 타고 다같이 이동하고 발표현장에 도착해서 노트북 연결 테스트, 시연을 위한 팀원들의 조용한 공간을 빠르게 찾고 정신 없었다. 특히 소리가 잘들리는지 프로젝터 해상도에 알맞는 우리 웹사이트의 화면 확대율은 몇인지 계속 줄 서가..
-
열심히 했다와 잘했다는 것.SW Jungle/daily 2024. 6. 29. 11:13
열심히 하는 것은 어떤 것을 잘해내기 위한 수단이다. -태리위인처럼 멋있게 써보고 싶었다 😎 나의 목표는 잘해내는 것이다. 하지만, 열심히 하는 것을 가끔 목표로 착각해열심히 했다는 것에 만족하거나 안심할 때가 있다. 그러나, 아니다.단순히 `시도한 시간 = 열심` 이라는 공식에서 빠져나와야한다.`해결하려고 시도한 종류 = 열심` 이라고 생각하자. 1. 생각의 출발항상 생각의 출발을 "어떻게 하면 되게 하지?" 로 출발하자.2. 되게 하는 방법 떠올리기 그리고 되게 하는 방법을 계속 떠올려 보자1. 일단 당장 되게 하는 방법 (최대한 쳐내고 진짜 내가 되게하고싶은 핵심 하나만 되는 방법)2. 이론상 내..
-
팀장에 지원하며.SW Jungle/daily 2024. 6. 14. 00:02
그동안 잘지냇는가 그동안 나는 한번도 운동을 안햇다 ㅎㅎ.나는 생각보다 같은 팀원에 영향을 많이 받는거같다. 팀원이 늦게 오니 나도 점점 늦게 오게 되더라.주변에 휩슬리지 않는 사람이 되자. 팀장에 지원할지, 하고싶은 형과 함께하기 위해 팀원을 할지 고민했었다.팀은 누구랑 할지 매우 고민도 많고 불만도 많았다.결국, 나는 용기내어 팀장에 지원했고 하고싶은 형과 팀원도 설득하여 같은 팀이 되었다.리더에 지원한 이유열정적인 사람들을 이끌어 보고싶었다. 지금까지 내가 팀장을 해왔던경험에서는 다들 똑같은 출발점이었다. 나랑 똑같이 알거나 내가 좀더 알거나. 정글 동료들은 나보다 더 깊게 아는 경험과 분야들이 있다. 나한테 없는 기술을 가진 사람들의 팀장이 되어 보고 싶었다. 더 잘 배우고 싶고 또 훗날 내가 일..
-
PintOS Project 3 VM swap in/outSW Jungle/TIL 2024. 5. 28. 02:42
핀토스 프로젝트 3 의 마지막 구현 과제인 (cow 제외) swap in/out 구현에 대한 이야기를 작성 해보려고 한다.기초적인 swap in out 에 대한 이야기와 내가 구현한 방법과 어이없는 실수로 인한 디버깅을 이야기 해보겠다. Swap in / out 이 뭔데요???운영체제의 메모리 관리 기법중 하나이다. 당장 사용할 (페이지폴트나서 요청받은) 새로운 물리 메모리가 필요한데 이미 (사용자 영역의) 물리 메모리가 꽉차서 더이상 새로운 물리 메모리 프레임도 할당 받지 못 할 때 안쓰는 다른 프레임을 하드 디스크의 스왑 영역에 보내버리고 그 공간을 지금 쓰고싶은 페이지에게 주는 것이다. Swap in / out Flow메모리가 꽉 차서 frame 할당 받는 것에 실패한다.현재 물리 메모리에 올라가있..
-
PintOS's Memory StructorSW Jungle/TIL 2024. 5. 21. 19:58
이번글에서는 핀토스 VM 프로젝트를 진행하며 공부하게된 페이징 기법과 핀토스의 메모리 구조에 대해 글을 써보려고한다. 더보기목차프레임 과 페이지페이징핀토스에서의 주소 변환핀토스의 메모리 구조프레임과 페이지프레임(frame): 물리 메모리를 일정한 크기로 나눈 블록이다. 페이지(page): 가상 메모리를 일정한 크기로 나눈 블록이다. 프레임과 페이지의 크기는 동일한 크기를 가지며 이 일정한 크기는 페이지 크기이다.일정한 크기 == 페이지 크기(사이즈) == 2^12 == 4096 주소 하나당 1byte의 크기를 저장 할 수 있다. 따라서, 4096개의 주소 * 1byte = 4kB 이므로, 페이지 하나는 4kB의 크기를 가진다. 페이지나 프레임이나 4096개의 연속된 행이 있는 리스트 라고 보았을 때 4..
-
pintos forkSW Jungle/TIL 2024. 5. 14. 06:17
sw사관학교 정글 과정중 pintos project 2 진행중에 구현한 fork 의 과정을 추척하는 글을 작성 해보려고 한다. 목차pintos에서의 forkfork 과정 추적1. userprogram 에서 fork 함수 호출 2. lib/user/syscall.c 에서의 처리 3. syscall-entry.S 4. userprog/syscall.c 의 syscall_handler 함수 5. userprog/process.c 의 process_fork() 6. threads/thread.c thread_create() 함수 7. do_fork 8. 다시 process_fork결론 pintos에서의 fork Pintos에서 'fork' 구현 목표는 부모 프로세스의 주소 공간을 정확하게 복사하여 자식 프로세스..