如圖所示,系統中有三個程序get、pro和put,共用兩個緩衝區buf1和buf2。假設buf1中最多可放11個資訊,現已放入了兩個資訊;buf2最多可放5個資訊。get程序負責不斷地將輸入資訊送入buf1中,pro程序負責從buf1中取出資訊進行處理,並將處理結果送到buf2中,put程序負責從buf2中讀取結果並輸出。試寫出正確實現get、pro、put的同步與互斥的演算法(要求:(1)用類c語言描述,條理清楚,注釋恰當;(2)訊號量原語統一使用wait和signal。)
empty1=9;//表示空的buf1的數目
empty2=5;//表示空的buf2的數目
full1=2;//表示buf1滿的數目
full2=0;//表示buf2滿的數目
mutex1=mutex2=1;//互斥訊號源
main()
//cet程序
void cet()
} //pro程序
void pro()
} //put程序
void put()
}
作業系統lru演算法 每天一道高頻題 LRU快取機制
題目 lru least recently used 最近最少使用,最近最久未使用,是作業系統常用的,是作業系統常用的一種頁面置換演算法,選擇最近最久未使用的頁面予以淘汰 運用你所掌握的資料結構,設計和實現乙個lru 最近最少使用 快取機制,它應該支援以下操作 獲取資料get和寫入資料put 獲取資...
一道演算法題
兩個燒杯,乙個放糖乙個放鹽,用勺子舀一勺糖到鹽,攪拌均勻,然後舀一勺混合 物會放糖的燒杯,問你兩個燒杯哪個雜質多?一樣多吧 對的 為啥?是不是因為 糖和鹽本來就是均勻的 因為,就算不攪拌均,你放一勺過去,那邊放一勺不含雜質的過來,那麼都是一勺雜之 如果攪拌均勻的話也是一樣 小依 21 45 32 也...
一道演算法題
1.上午主要做了對翻譯任務的劃分,下午把 翻譯完畢。2.明天要講的演算法題 對乙個集合,求出其連續元素組成的子集中,和最大的子集 我對這道題的理解是 1 若集合中最小值大於0,意味著所有的都大於0,則最大的子集和,為所有值加起來 2 若集合中最大值小於0,意味著所有的都小於0,則最大的子集和,為集合...