查ICP網:全新的綜合網站備案信息查詢網
Copyright ? 2008-2028 www.mshuangcha.com [ 查icp] All Rights Reserved.
什么是fifo頁面置換算法代碼?
fifo(先進先出頁面置換算法)
基本思想:優先淘汰最早進入內存的頁面,亦即在內存中駐留時間最久的頁面。
該算法實現簡單,只需把調入內存的頁面根據先后次序鏈接成隊列,設置一個指針總指向最早的頁面。但該算法與進程實際運行時的規律不適應,因為在進程中,有的頁面經常被訪問。
實現過程:
假定系統為某進程分配了三個物理塊,并考慮有以下頁面號引用串:7, 0, 1, 2, 0, 3, 0,4,2,3, 0, 3, 2, 1, 2, 0, 1, 7, 0, 1。釆用FIFO算法進行頁面置換,進程訪問頁面2時,把最早進入內存的頁面7換出。然后訪問頁面3時,再把2, 0, 1中最先進入內存的頁換出。由下圖可以看出,利用FIFO算法時進行了12次頁面置換。
訪問頁面70120304230321201701物理塊1777222444000777物理塊200033322211100物理塊31110003332221缺頁否√√√√√√√√√√√√√√√
缺點:FIFO算法還會產生當所分配的物理塊數增大而頁故障數不減反增的異常現象,這是由Belady于1969年發現,故稱為Belady異常,如下圖所示。只有FIFO算法可能出現Belady異常,而LRU和OPT算法永遠不會出現Belady異常。