第二種方法完成楊X偉交給的不可能的任務
昨天發現,父子進程之間共享的打開文件的文件讀寫指針也是共享的。在讀文件時,這個指針會自動向後移動。文件讀與指針向後移是一個“原子”操作,可以用來作為“信號燈”用。程序見附件。
這個“信號燈”方案的效率比那個“過山車協議”方案的效率高太多了,必須在打印語句之後加上很大的延時才能看到好看的進程切換花紋。這個是因為UnixV6的優先權設定是剛響應過外設的進程有極高的優先權,總是能搶占處理機,然後又打印,又響應外設。這樣他就永遠是很高優先權的進程,永遠先占用處理機。只有給它加很長的延時讓它占用處理機較長時間後其優先權才降下來別的進程才有機會占用處理機。這一點有幾個中國著名的操作系統專家就顯得狗屁不通了,以前看過一本解釋微軟瘟痘士的書,自吹那書是微軟請他們到洗丫頭看源代碼而作的。結果連這種優先權的設定方法都沒看懂。太丟中國人的臉了。
我上邊的說法沒錯。那個剛執行打印語句的進程進入睡眠等待外設完成操作時,是帶“信號燈”入睡的。而那個沒拿到“信號燈”的進程則在不斷請求“信號燈”,占用大量處理機時間,但沒“信號燈”又不能往下走,只使其優先權不斷下降。那個打印語句的進程一被外設喚醒,立即以極高的優先權占用處理機,又執行下一條打印語句,又帶着“信號燈”入睡。如此惡性循環,貧者逾貧富者逾富。
能用兩種方法做出這個不可能的任務,算不算《計算機操作系統課實驗課》的附加題給附加分啊。岑某文書記說我的學習成績又不是“很”好,我實在需要拿些附加分才能領到紗紙啊。
哈哈。
據網上考古,岑某文書記現在已經是“計算機科學與技術學院”的副院長了。哈哈。有牠在,我看習主席的“中國夢”要成為“南柯夢”“黃粱夢”了。也許是“包子夢”“糭子夢”“烤鴨夢”。反正不是“牛油果夢”。
https://groups.google.com/forum/#!topic/chanzhaiming/GbHao5Jyzbs
我的新屎坑:https://groups.google.com/d/forum/chanzhaiming