Правильно ли выполнены замены страниц LRU и FIFO?
Я только учусь пейджингу, и мне было интересно, было ли правильно то, что я сделал для замены страниц, так как учебники, которые я нашел в Интернете, кажутся немного повсеместными. Я в основном ищу разъяснения о том, сделал ли я что-то не так, и хотел бы получить объяснение, а не прямую ссылку на что-то еще, где я должен далее интерпретировать вещи, которые действительно не помогают.
Я сделал один с 3 кадрами памяти для последовательности,0, 3, 1, 2, 3, 2, 0, 1, 0, 1, 3, 0, 2, 3, 1
Y = произошла ошибка, а N = нет ошибки.
ОБНОВЛЕНИЕ: Попробовал исправить мой FIFO, новая работа для FIFO
2 ответа
При выполнении fifo на каждом шаге мы копируем предыдущее состояние кэша. Обратите внимание, что слоты кэша располагаются слева направо по возрасту до самого младшего. В зависимости от попадания или промаха мы делаем одно из двух:
Если попал, то ничего не делать.
Если пропустите, удалите крайнюю левую запись в кэше. Добавить новую запись справа.
При выполнении lru все остается тем же, за исключением того, что при попадании мы перемещаем предмет попадания в самый правый слот. Это означает, что предмет попадания становится самым молодым среди своих сверстников.
Алгоритм замены страницы FIFO в 2-х минутном бангла! https://www.youtube.com/watch?v=QuucGuHkLcI&t=9s