def FIFO(pages,cap): frame=[] p=0 c=0 for page in pages: if page not in frame: if len(frame) <cap: print("主页号"+str(frame)) frame.append(page) c+=1 else: frame[p%cap]=page print("主存业号"+str(frame)+" 淘汰"+str(frame[p%cap])) p+=1 c+=1 else: print("主存业号" + str(frame) ) print("缺页中断率为"+str(c/len(pages))) def LRU(pages,cap): frame=[] dp=0 c=0 for page in pages: if page not in frame: if len(frame)<cap: frame.append(page) frame.reverse() print("主存业号"+str(frame)) frame.reverse() c+=1 else: dp = frame[0] del(frame[0]) frame.append(page) frame.reverse() print("主存业号" + str(frame)+" 淘汰 "+str(dp)) frame.reverse() c+=1 else: frame.remove(page) frame.append(page) frame.reverse() print("主存业号" + str(frame)) frame.reverse() print("缺页中断率"+str(c/len(pages))) if __name__ == '__main__': pages1=[7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1] cap=4 # FIFO(pages1,cap) LRU(pages1,cap)
06-12
782
12-31
1465
12-27
3万+
12-16
4504
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交