思政教育

代碼裡的星火

【代碼裡的星火】以需求促發展 培養大局觀念

一、引言

操作系統是控制應用程序執行的程序,是應用程序和計算機硬件間的接口。通過對“操作系統的演化”内容的學習,可以發現操作系統的演化曆程就是人們不斷解決高級的需求與系統落後性能間的矛盾的過程。在這個過程中,研發人員始終以人民使用需求為目标,不斷解決操作系統性能上的瓶頸。進程是操作系統中最基本的概念,在多道程序環境下能讓程序并發執行,對進程的有效調度是操作系統正常運行重要保證。然而操作系統的高并發的特性要求在任何時刻進程調度算法都能對各類進程做出正常的響應,這要求設計者必須具有大局觀。大局意識要求我們看待問題要從整體和全程出發。在學習幾種進程調度算法的同時,逐漸培養全局觀念。

二、理論知識的課程思政切入點

1.操作系統的演化——以需求促發展

20世紀40年代後期到50年代中期的計算機處于人工操作階段,并沒有裝配操作系統,程序員需要通過輸入設備将機器代碼載入計算機。人工操作會引發CPU閑置和工作超時被強制停止的問題,發生某些錯誤時用戶還不得不将任務全部重新開始。這種操作模式稱為串行處理,用戶必須順序訪問計算機。為了提高計算機資源利用率,第一個批處理操作系統(同時也是世界上第一個操作系統)于 20世紀50年代誕生。此時程序員隻需将作業按順序組織成批,并将整個批作業放到輸入設備上,由監控程序完成調度功能。由于簡單批處理系統仍然采用串行處理,I/O操作仍需消耗CPU大量等待時間,存在嚴重内存浪費。為解決這一問題,又引入了多道批處理系統,以減小I/O操作對内存的浪費,但此時的系統還不允許用戶直接與計算機進行交互。直至分時系統的引入,基本解決了這個問題,分時系統通過采用時間片輪轉的方式保證用戶同作業交互的及時性,實現了人機交互,極大地提高了資源的利用率。在實時性和可靠性高的領域還用到了實時系統,能及時響應外部請求。近年來,操作系統朝向并行化、網絡化、便捷性、融合性方向發展。

圖1 早期的批處理系統

操作系統的演化史可以看作發現問題、分析問題、提出方法和解決問題的過程,在這個過程中,高效、實用始終作為其發展需求,是“需求”驅動了操作系統的發展。對我們來說,如果需要知識,那就翻開書本;需要膽量,那就敢于上台;需要健康的身體,那就積極鍛煉……隻有明确需求,努力才能抓住方向。我們經常說未來可期,在那之前我們應該明白自己需要什麼,樹立合适的目标,以夢為馬,不負韶華。

2.“進程調度”算法的優化——培養大局觀念

多道批處理系統可提高CPU的利用率,但諸多進程互相競争使用CPU會導緻系統紊亂的現象。先來先服務型的調度算法(FCFS)看起來是最簡單且公平的,但會導緻一些短作業進程等待長時間,而短作業優先調度算法(SPN)又可能讓長作業“餓死”。如果把以上兩者綜合起來呢?就得到最高響應比優先調度算法(HRRN),這個算法是上述兩種算法的折中。但若碰到需緊急處理的任務,就需要最高優先數優先的算法,賦予急需完成的進程較高優先級。另外,還有反饋算法,優先考慮短進程,同時能給長時間處于等待狀态的長進程較高優先級。

圖2 進程的三狀态模型

可以發現,大局觀始終貫穿進程調度算法的設計。首先,大局觀蘊含着兩點論與重點論的統一。為了使系統效率最優化,調度算法既要優先執行急迫的進程,也要照顧長時間得不到資源的進程。俗話說,“不謀全局者,不足謀一域”,将1%重要的事做到100%,對全局起到作用也不會超過1%。在學習與工作中,任務很多時候是 “蜂擁而至”的,有時出于迫不得已或為了保證完成的質量,我們必須抓住任務的主要方面,在解決主要方面後,再兼顧次要方面。其次,全局觀還蘊含着普遍與特殊的結合。調度算法除了“循規蹈矩”地賦予進程優先級進行調度外,還要考慮緊急情況下的進程調度,既要考慮對一般情況的處理,又要對特殊情況給予适當照顧。為了最大化系統效率,某個進程可能會放棄某個時刻的資源占用,将資源讓給那些更需要被執行的進程。在集體中,大局觀有助于讓我們遠離個人至上主義、小團體至上主義,正确處理個人利益與集體利益的關系。大局意識作為中共十八屆六中全會提出的全黨要進一步強化的“四個意識”之一,要求全黨自覺從大局看問題,正确處理中央與地方、局部與全局、當前與長遠的關系,自覺從黨和國家大局出發辦事。再次,大局觀意味着不片面、不極端。并發度可以提高操作系統效率,但并發度過高會降低進程推進速度,增加系統開銷。這說明了任何事物包含對立統一的兩方面,也包含折中與平衡的哲學思想。我們在追求完美的同時也應該明白天下沒有完美的事物,解決問題時,能把握一定的尺度,不絕對、不極端,形成完善的人格。概括地講,大局觀要求我們看待問題從整體和全過程出發,整體包括兩點論與重點論的統一、普遍與特殊的結合、集體利益為重、不極端不片面,全過程即既要以史為鑒,又要展望未來,兼顧當下與長遠,隻有這樣我們看待問題才會更深刻、更長遠,才能在重要時刻做出正确決策。

三、結語

2021年,是“兩個一百年”奮鬥目标交彙之年,也是“十四五”規劃開局之年,中國正踏上新的發展征程。而國際上,中國仍受到包括美國在内國家的無端制裁、诽謗、幹預。少年強則國強,我們應把迎難而上、堅忍不拔、奮發有為和踏實做人的品質作為個人的發展需求,永懷愛國、愛黨之心,時刻以國家和人民的利益為大局。隻有這樣,不論将來從事什麼職業,身處哪片土地,我們總能為中華民族偉大複興貢獻出屬于自己的力量,實現人生價值。


2019級計算機科學與技術一班 劉贊華