新聞 > 科教 > 正文

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

提問:為什麼電腦要裝作業系統才能用?為什麼不直接把舉個各種功能的程序直接裝載進計算機,直接運轉?

Q

&

A

鬼谷藏龍回答:

你的想法非常好,因為最早的計算機就是這麼幹的。

那為什麼後來不這樣了呢?道理不難理解,因為運行的程序多了。

你設想一下,比如說你用電腦的時候,你可能一邊開了word文檔寫東西,一邊打開網頁查資料,一邊開著PS處理素材,一邊開著圖片查看器看素材效果,一邊開著翻譯軟體翻譯外文,一邊還在插著耳機聽音樂,與此同時計算機的後台還在運行著殺毒監控程序、在線升級檢測程序、輸入法的詞庫收錄程序等等。

現在問題就來了,每個程序都需要計算機提供資源,包括CPU的運算資源,記憶體條的主存容量,硬碟的讀寫流量,網卡的網絡傳輸流量,主線的內部數據流量等等。

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

作業系統有話說……

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

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

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

因此,我們需要操作程序來作為一個協調者。一方面,作業系統提供一系列底層接口和上層標準,「抹平」不同電腦之間的硬體差異,這樣只要作業系統相同,硬體能達到軟體運行的最低標準,理論上這個軟體就能互通。

此外,作業系統可以為所有程序分配資源,一切程序要調用計算機資源都需要向作業系統申請權限,這樣就能最大程度利用計算機資源同時讓各種程序不互相衝突。

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

所見即所得,嗯

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

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

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

藍白當機畫面的……

所以說,解決一個問題總會帶來新的問題,不過好在新問題總是比老問題要輕一些。

一個AI

沒有作業系統,就會這樣:

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

責任編輯: 於飛  來源:果殼網 轉載請註明作者、出處並保持完整。

本文網址:https://tw.aboluowang.com/2016/0127/682757.html