根据一些操作系统的教科书,为了更快地进行上下文切换,人们在TLB标签字段中为每个进程添加了ASID,因此我们不需要在上下文切换中刷新整个TLB。
我听说有些ARM处理器和MIPS处理器在TLB中确实具有ASID。但是我不确定Intel x86处理器是否具有ASID。
同时,似乎ASID通常具有比PID(32位)少的位(例如8位)。那么,如果在上述8位ASID情况下内存中的进程比2 ^ 8多,那么系统如何处理“ ASID溢出”?
x86 operating-system intel virtual-memory tlb
intel ×1
operating-system ×1
tlb ×1
virtual-memory ×1
x86 ×1