/*
請求頁式儲存管理的頁面置換演算法----lru演算法:lru是least recently used 近期最少使用演算法
使用上面的演算法把在固定大小記憶體的近期最少的資料刪除。
/*輸出結果
請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
set key1 value1
請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
set key2 value2
請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
look
2 1 0 0
請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
get key1
value1
請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
set key3 value3
請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
set key4 value4
請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
set key5 value5
請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
look
4 1 3 2
請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
set key1
noe請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
get key1
noe請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
look
1 3 5 4
請輸入 set如set key value. get如get key. look檢視每個key的新鮮度嗎,越小越新鮮。 quit退出
*/
#include#include#include#include#define wulisize 4 //物理塊大小
typedef struct page
page; /* 頁面邏輯結構,結構為方便演算法實現設計*/
page b[wulisize]; /*記憶體單元數*/
void init()
} return tag;
}void empty()
void lru(char *key,char *value)
else //無相同key
else//無空閒
}}void timego()
void set()
void getvalue()
if (hang == wulisize)
printf("no key to value"); }
void look()
void main()
}while(sel!=0);
}
Lru演算法在Android中的應用
對於lru演算法的理解 lru演算法,將命中率不高的空間釋放掉,保留命中率較高的空間。這種演算法有一種實現方式 建立的物件通過佇列儲存起來,如果對乙個物件進行了訪問,就將這個物件放到佇列的開頭,新加入的物件也會放在佇列的開頭 也就是說,佇列開頭一定是新加入的或者是常用的物件 當佇列長度超過了限額時,...
在linux檢視記憶體的大小
用free m檢視的結果 free m total used free shared buffers cached mem 504 471 32 0 19 269 buffers cache 183 321 swap 996 0 996 檢視 proc kcore檔案的大小 ll h proc kc...
在Qt中如何固定視窗的大小
一種方法是設定它的最大大小和最小大小,並且使它們的值相等,都等於當前你設定的視窗尺寸。簡單的示例 setminimumsize 370,150 setmaximumsize 370,150 其他如height和width一般可以不理會。一種方法是使用setfixedsize 這樣一句話就可以解決問題...