Implicit list처럼 모든 Blocks을 사용하지 않고 free block list를 사용한다.왼쪽 그림은 Aloocated 된 block을 의미하고 오른쪽 그림은 Free block일때header 포인터의 바로 오른쪽에 next , prev pointer에 대
tiny server 구현하기에 앞서 Robust I/O package 에 대한 이해가 중요할 것 같아 정리가 잘된 블로그를 첨부함.https://2pound2pound.tistory.com/238
pintos source code 실행하기 앞서 환경 설정이 필요하다.Makefile에서 메타프로그래밍 빌드시스템을 설정한 뒤 make check를 실행하면 check라는 target을 생성하기 위한 dependency failed 에러가 발생한다. 이를 해결하기 위해
👀 참고 사항 기본적으로 system timer는 초당 100회의 ticks을 발생시킨다 (즉, 1 tick = 10ms )
현재 pintos의 스케줄러는 라운드 로빈으로 구현되어 있다. 이를 우선순위를 고려하여 스케줄링 하도록 수정한다.Ready list에 새로 추가된 thread의 우선순위가 현재 CPU를 점유중인 thread의 우선순위보다 높으면, 기존 thread를 밀어내고 CPU를
Priority donation 구현Multiple donation 구현Nested donation 구현우선순위가 높은 스레드가 우선순위가 낮은 스레드를 기다리는 현상Priority donation스레드가 두 개 이상의 lock 보유 시, 각 lock에 의해 도네이션이
rip
소스코드가 엄청 많을때 특정 함수의 이름은 알지만 어떤 소스코드에 있는지 모를때 다음과 같은 명령어를 쓰면결과로 어느 파일의 어느 소스코드에 어떤식으로 쓰이고 있는지 확인할 수 있다.pptvm_entry --> pagevm(ppt에선 vm) 이 spt(우리코드