본문 바로가기

잡다한 IT/운영체제

TLB miss 와 Cache miss 차이점

https://stackoverflow.com/questions/16662834/is-cache-miss-a-kind-of-interrupt-fault


운영체제를 공부하던 중 TLB miss 와 Cache miss 차이가 뭔가 알아보다가 찾은 글.


TLB miss는 exception이 발생하고, exception 핸들러가 OS에게 '소프트웨어적'으로 도움을 요청하는데

이때 발생하는 오버헤드가 크다. 따라서 TLB 는 fully associative 를 사용하고

TLB miss handling 을 가속화하기 위해서 HW page walker 를 이용한다.


Cache miss는 반면에 set-associative 를 많이 쓴다. fully를 쓰면 비용이 너무 커지기 때문에.

그렇다면 Cache miss 는 TLB 처럼 exception 이 발생하지 않는것인가? 라는 고민을 했는데


위의 글에서 Cache Miss 는 processor가 '하드웨어적'으로 자체 처리할 수 있게 define 되어있다고 한다.

processor 가 바로 접근할 수 있는 낮은단계의 cache 나 main memory에 있기 때문에.

반응형

'잡다한 IT > 운영체제' 카테고리의 다른 글

디바이스 드라이버와 디바이스 컨트롤러 차이  (0) 2018.04.21
polling 과 busy waiting 차이점  (0) 2018.04.17
임베디드 관련 공부  (0) 2018.04.05
캐시  (0) 2018.04.04
페이지 테이블, 가상 메모리  (0) 2018.03.31