본문 바로가기

PintOS

정글[Week_11-12]: Pintos의 VM 구현하기 2주에 걸쳐 Pintos의 project 3를 수행하였다. 이전에는 1 주당 한 번의 프로젝트를 수행하였으나, 분명 이번에는 2주를 준 이유가 있겠지.. 생각하였고, 이유는 진행하면서 깨닫게 되었다. 결론은.. 개념이 상당히 난해하고 이를 scratch에서 머릿속에 지도를 그려가는데 꽤나 곡선을 그렸다는 것이다. 부족한 RAM 공간을 가상으로 넓히다물리 법칙상 램의 속도는 CPU가 어찌 감당할 정도이나, 디스크.. Pintos에서 칭하는 file은 매우 느리다는 것이 특징이다. 문제는, 램의 용량은 상당히 한정적인 반면에 디스크는 대규모 정보를 저장이 가능하다. 기술이 발전하면서, 컴퓨터 설계 구조는 대규모 정보를 저장하는 디스크에는 실제 정보를 저장하되 곧바로 실행은 안되는 것과, 여기에 있는 실행 .. 더보기
정글[Week_10]: Pintos의 프로세스의 생애 주기 구현하기 Pintos 2주차에 접어들었다. 이번 주 차는 Process로 주제가 좀 더 확장되었다. 상용 프로세스와 다르게 Pintos는 각 프로세스에 스레드가 하나만 들어 있는데, 이번에는 스레드에 옷?을 입혀 프로세스로 만들고 이의 생애주기를 구현하는 프로젝트라 보면 되겠다. 프로세스는 유저 모드와 커널 모드를 왕복한다커널 모드와 유저 모드라는 단어들 들어 보았는가? 우리의 컴퓨터는 여러 응용 프로그램들이 가동되도록 설계되어 있는데, 이런 application들도 결국 프로그램이니 컴퓨터의 자원(cpu, 램, 디스크 등)을 필요로 한다. 만약 수 많은 app들이 제각각 컴퓨터에 자원을 차지하면 이는 컴퓨터 입장에서 치명적일 수 밖에 없다. 이러한 문제를 해결하기 위해... 개발자들은 app이 가동될 때 최소.. 더보기
정글[Week_09]: Pintos의 스레드 알고리즘을 설계하다 정글에서 꽃이라 불리는 과정, pintOS에글에서 꽃이라 불리는 과정, Pintos에 입문하게 되었다. 기대와 우려가 반반 섞이면서.. 팀원들과 함께, 빠진 로직을 하나하나 보강해 나가는 프로젝트이다. 카이스트에서 제공한 깃 페이지와, 미완성된 pintos 프로그램을 바탕으로, 빠른 학습력을 바탕으로 빈 곳을 메워야 한다. Pintos는 4개의 프로젝트로 나눠져 있다Pintos는 운영체제에 대한 이해를 목적으로 만든 프로젝트라고 한다. 팀원들은 Pintos가 분명 단계적인 수행 과정이 있을 것이라 생각하였고, 그분들의 서칭 능력 덕분에, 4개의 프로젝트로 나눠진다는 것을 확인할 수 있었다. 4개의 프로젝트는 다음과 같다:1. Threads: 스레드 알고리즘을 설계하여 테스트를 통과해야 한다.2. Use.. 더보기