해결된 질문
작성
·
190
답변 1
2
안녕하세요 돈우님 ㅎㅎ
페이지 폴트 과정에서 가상 메모리가 page table 참조하다가 만약 실제 주소에 자리가 없으면 페이지 폴트가 일어난다고 이해했는데, 그럼 페이지 테이블에서 trap 발생하는것도 인터럽트인가요??
>> 네 맞습니다. 정확히는 page table miss >> trap 발동 등의 과정이 일어나게 됩니다.
스레싱이 발생하면 CPU 이용률이 줄어든다고 했는데, 그럼 스와핑이 일어날때 RAM에 있는 프로세스를 하드디스크로 보내자나요 즉 스와핑이 일어나고 있을때 CPU는 잠시 정지를 하는건가요??
>>
아닙니다.
먼저 스레싱은 페이지폴트율이 높은 것을 말하는데요.
페이지폴트가 발생이 되면 메모리 > HDD & HDD > 메모리가 발생하는데 이 때 HDD의 평균 대기시간 3ms, 검색시간은 5ms, 전송시간은 페이지당 0.05ms입니다. 즉, 페이지폴트가 발생하면 "페이징"에 걸리는 시간은 8ms(= 8,000μs)에 가깝습니다. 평균적으로 메모리 엑세스 시간이 0.2μs라면 약 40,000배 느려지게 됩니다.
(지금은 SSD라서 좀 더 빠를 수도 있지만요.)
즉, 이렇게 성능에 안 좋은 영향을 주는 페이지폴트가 계속해서 일어난다 = 스레싱이 되는 것인데요.
그렇기 때문에 CPU는 일을 하고 있지만 40,000배 느려져서 받아오는 메모리에 있는 명령어를 읽게 되므로 이용률도 떨어지게 되는 것입니다.
CPU는 계속 일하고 있습니다. ㅎㅎ
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.