為什麼需要作業系統

2021-08-21 15:11:55 字數 1226 閱讀 6251

對於乙個程式而言,它為了保障自己的程式執行流暢,勢必就會要求自己分配到的資源越多越好,但是計算機的資源總是有限的,大家都自顧自搶資源的話,要麼就是大家一起跑不動,要麼就是某幾個程式把別的程式的資源都擠占掉。

更麻煩的是,由於程式設計者不可能**到自己的程式會和什麼樣的別的程式同時在乙個電腦中執行,所以很有可能出現某個程式的臨時資料恰好和另乙個程式關鍵資料很相似的情況,於是就會發生這個程式破壞了那個程式資料之類的問題。

更更麻煩的是,我們的電腦硬體也是由不同的廠商製造的,它們的底層硬體系統也各有不同,無論是消費者還是軟體出產方肯定都不希望某個軟體在這個型號的電腦上能跑,換乙個就跑不了的情況。

因此,我們需要操作程式來作為乙個協調者——作業系統(operation system,os)。

總體而言,雖然作業系統本身也會占用一部分計算機資源,但是總體上它讓計算機執行更為穩定,同時也減少了軟體開發者的工作量,因為程式猿只需要考慮作業系統的標準介面,而不需要考慮硬體系統的底層差異。

當然,作業系統也會有額外的問題,比如說惡意程式和電腦病毒也能利用這些標準介面,還有作業系統為各類程式分配資源的演算法總是不可能完美,更不可能應對軟體無窮無盡的公升級,於是作業系統不得不不斷提供各種防火牆、監測程式和補丁來應對這類問題,於是就出現了那個你永遠幹不掉的公升級提示。此外作業系統也是商業公司提供的,他們總希望可以靠這個賺錢,於是你的電腦,要麼像蘋果那樣這也不許下,那也不許裝,要麼像微軟那樣動不動給你玩黑屏藍屏各種屏。

作業系統在計算機系統中承上啟下的地位:向下封裝硬體,向上提供操作介面。 

《為什麼電腦要裝作業系統才能用?直接裝應用程式不行嗎?》:

從ucOS談,為什麼需要作業系統?

1.作業系統可以顯著降低開發難度。作業系統幫我們協調多個程式之間的耦合關係,比如我們需要將串列埠的接收到的資料顯示在一塊lcd上。傳統做法是如圖1所示 圖1.無作業系統流程 該流程中當串列埠接收到資料再呼叫lcd顯示程式將資料顯示出來,而圖2展示了一種基於作業系統的方法。在該方法中串列埠接收資料和l...

為什麼嵌入式系統需要具有實時作業系統的特性

並非所有的嵌入式系統都需要實時作業系統,只有在一些特定的場合,對時間比較敏感的應用才會使用實時作業系統。實時作業系統必須及時響應所要求的任務,在限定時間內完成任務。非實時的作業系統,多時間不是很敏感,對所要求的任務只是會保證完成,但在什麼時候完成,或用多長的時間完成就不一定了。例如 手機它不需要實時...

對於作業系統,我們需要的是什麼

如果windows系統不夠安全,那麼那些黑客為什麼以攻破windows系統來證明自己的實力呢?為什麼不以攻破unix 類系統來證明自己呢?如果unix類系統是安全的,那為什麼同樣補丁,甚至核心補丁不斷呢?以上是我的夢醒囈語,其實,除去 和自由的因素,unix和windows,我都很喜歡。二者的優缺點...