Trouble understanding "Virtual cache" Hi, I'm having trouble understanding what virtual cache actually means. I understand that to get a cache hit (physical cache) you index to the cache set and compare all the tags in that set with the tag in the cache address you are looking for. I also understand how the memory management unit and the Transition look-aside buffer work for virtual memory. Page tables map, virtual addresses of each process, to physical addressees in memory. But what does virtual cache mean? I mean if you give physical cache addresses a virtual address what are you achieving? And also do virtual cache addresses get mapped using the same MMU as real memory? I've read Wikipedia and such but I just can't understand why this would be useful. Thanks!