代码import numpy as np
import datetime
class Page:
def __init__(self,id:int):
self.id = id
self.arrive = datetime.datetime.now()
class PageReplacement:
def __init__(self,mode:str,maxpage:int,pagenum:int):
self.mode = mode
self.pagenum = pagenum
self.pages = [Page(np.random.randint(0,maxpage)) for _ in range(np.random.randint(20,50))]
if mode.lower()=='both':
self.FIFO()
self.LRU()
self.printstates()
elif mode.lower()=='fifo':
self.FIFO()
self.printstates()
elif mode.lower()=='lru':
self.LRU()
self.printstates()
else:
raise Exception('Error! Unavailable mode {}'.format(mode))
def FIFO(self):
states = []
state = []
firstin = 0
for page in self.pages:
if len(state)