Week 15: Advanced Memory Management 2

Week 15: Advanced Memory Management 2

memcpy를 대신해주는 H/W는 없을까? copy하는 size가 수십k를 넘어가면 CPU가 직접 copy하는 것보다 request 날리고 interrupt걸리는게 더 저렴할수도 있겠는데.. Cache synchronization이 복잡해지나?

 

shadow page table: paravirtualization?? 정확히 어떻게 구현되게 되는지는 잘 모르겠다. 누가 maintain하는건지.
여튼 요점은 Guest virtual address와 host physical address를 바로 mapping하는 page table을 추가로 관리하는것.
Intel VT-d technology: Guest virtual address를 바로 host physical address로 변환할 수 있도록 page table에 entry가 추가됨
Entry: [ Guest Virtual Address | Guest Physical Address | Host Physical Address ]

 

VMM Memory Compression:
Host OS와 여러 Guest OS들 사이에 중복되는 memory들, 예를들면 libc code와 같은 것들을 여러 copy가지고 있지 않고 하나만 가지고 있게 하는것. 한 OS안에서는 잘 관리가 되고 있는데 (COW와 같은 여러 technique들) 여러 OS들 사이에서는 HostOS가 GuestOS의 memory를 tracking할 수 없다는게 함정. 그래서 scavenger process를 두로 주기적으로 메모리를 검사해서 중복되는 page를 검사한다. 그런데 Host OS가 Guest OS의 메모리를 제대로 분석하지 못한다는 것은 redundant한 overhead를 크게 늘릴수 있을 것 같은데.. 예를 들어서 GuestOS의 process가

이런짓을 하면 하루종일 merging이랑 copying을 하고 있을 듯.

 

Recoverable Virtual Memory???????
Cooperative Caching:
Distributed Virtual Memory: On read page fault에서 첫 줄 지움
???????????

 

 

Leave a Reply