計算機操作系統


一、操作系統引入

可能有很多同學都有碰到下面我說的這個場景,當我們花了8888大洋買了一台16G內存的專業吃雞電腦時,打開電腦發現自己的電腦內存只有15G不到,然后就開始了吃雞之旅。

但是如果你對你少掉的內存關心的話,你會發現並不是廠商為了節省造價成本,而這少掉的內存被某種東西給占用了,這種東西就是我們這篇文章的主角——操作系統。

二、什么是操作系統?

在了解操作系統之前,我們首先回顧下編程的目的,編程的目的是奴役計算機,取代人力。

現在想象一個這樣的場景,如果你是奴隸主(人),你在黑市上買了一個奴隸(計算機),你想讓這個奴隸干掃地的活,但是這個奴隸可能不明白掃地是什么意思,甚至可能都不知道你全程在逼逼啥。這個時候你可能會考慮買一個管家(操作系統),這個管家既能和你交流,也能和奴隸交流,然后你有任何命令都將由這個管家傳達給奴隸。

004-計算機操作系統-奴隸.jpg?x-oss-process=style/watermark

2.1 什么是文件?

現在讓我們來想象我們在計算機上打開一個文件的流程:首先我們需要開機,其次我們需要打開一個文件。可能我們所有人都會認為這沒啥,但是,這個時候你需要注意,文件它是什么呢?因為我們太習以為常了,所以我們忽略了這個問題:文件是什么呢?這個時候我不得不告訴你,你可以把文件理解成一個虛擬的單位,有了這個虛擬的單位,我們不再需要考慮機械手臂的運轉,你只需要文件可以雙擊打開、可以寫入數據、可以CTRL+S保存。

現在讓我們來思考文件這個虛擬的單位是誰提供的呢?如果有使用過linux系統的同學應該知道,linux系統中看不到任何一個文件的圖標,只有一行一行的代碼?(但是Linux一切皆文件)

004-計算機操作系統-linux界面.jpg?x-oss-process=style/watermark

linux系統既然看不到文件的圖標,那么windows系統的電腦上文件圖標是誰提供的呢?毫無疑問。這個時候我們可以得知windows系統電腦上的文件這個虛擬單位是windows操作系統提供的。也正是在啟動計算機的時候,計算機開啟了操作系統這個軟件(計算機除了硬件,就是軟件,軟件一般用來控制硬件)。但是需要注意的是,只要你想打開一個文件,歸根結底都是需要你去操作硬件的,只不過是操作系統不僅給我們提供了文件這個概念,並且把對文件打開的這個復雜操作封裝成了一個雙擊文件的接口給我們。

2.2 什么是應用程序?

剛剛和同學們聊了聊計算機打開文件的流程。我們知道了文件這個虛擬概念是操作系統給我們的。這個時候我們需要回過頭來看看我們的計算機,計算機創建的初心不是讓我們寫一個操作系統來控制硬件的。

計算機創建的目的是為了讓我們人奴役他們,讓它們替我們干活。那是不是說我們可以通過計算機開發一款ATM系統,讓它們每天24小時不停歇的吞錢、吐錢呢?毫無疑問是可以的。有了操作系統在計算機上的一切操作都將變得很簡單,那是不是說我們就需要在每台計算機上都寫一套操作系統呢?通過常識來看,我們是不需要的,我們只需要復制其他人的操作系統即可,但是在計算機創建初期是需要自己手寫操作系統的?但如今,如果真的讓我們寫一個操作系統出來,可能我們一輩子都使出吃奶的勁都無能為力。

應用程序其實很好理解,計算機只由硬件和軟件組成,應用程序一定不是硬件,那么軟件中除了操作系統我們都可以稱之為應用程序。說了這么多,其實就像讓你明白一件事:應用程序位於操作系統之上,它主要用來幫助人干各種各樣的工作,它不直接與硬件交互。

三、操作系統的定義

通過上面從文件到應用軟件的鋪墊,我們在這里直接給出操作系統的定義:操作系統位於計算機硬件與應用軟件之間,它是一個協調管理計算機資源和軟件資源的控制程序。它把對硬件的復雜操作,封裝成一個一個簡單的接口,供人們使用。

四、為什么要有操作系統?

為了明白為什么要有操作系統。我們在這里再給出一個計算機系統的組成:一套完整的計算機系統由計算機硬件、操作系統和應用程序組成,對這三個組件的解釋如下:

  1. 應用程序:應用程序位於操作系統之上,它主要用來幫助人干各種各樣的工作,它不直接與硬件交互。如快播、同花順和抖音等。
  2. 操作系統:操作系統一般用來控制硬件,把對硬件復雜的操作封裝成一個簡單又優美的接口,給用戶或應用程序使用。也就是說,但凡需要用硬件的地方,都需要用到操作系統。如Linux、Windows和ios等。
  3. 計算機硬件:以二進制的形式存儲數據。如CPU、內存和硬盤等。

004-計算機操作系統-計算機系統架構.jpg?x-oss-process=style/watermark

五、操作系統有什么用?

由於我們以后開發都是都是應用程序,應用程序無法操作硬件,但凡需要操作硬件,都是調用操作系統的接口。

六、操作系統和應用程序的啟動

操作系統的啟動:操作系統代碼由硬盤讀入內存(BIOS程序),CPU運行操作系統代碼(CMOS存儲器),運行成功后操作系統接管操作硬件的工作。

應用程序的啟動:應用程序代碼有硬盤讀入內存,CPU運行應用程序碼,運行成功即可使用應用程序。雖然應用程序的啟動和操作系統的啟動有着異曲同工之處,但是得明確一點:裝了操作系統之后才能裝應用程序,才有應用程序這個概念。因此上述應用程序對硬件控制的每一步操作,都依賴於操作系統的幫助。

七、QQ啟動的詳細流程(Windows)

  1. 雙擊Windows桌面的QQ圖標(qq.exe對應路徑的快捷方式)
  2. 雙擊圖標就是給操作系統發送指令,告訴操作系統QQ軟件對應的硬盤地址,並讓操作系統啟動這個路徑
  3. 操作系統接收到指令操控CPU發送指令給內存
  4. 內存接受指令后發送指令給硬盤,硬盤讀取QQ軟件代碼給內存,QQ啟動


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM