CPU和作業系統在程式設計中各自扮演什麼角色

時間 2022-04-03 09:25:12

1樓:匿名使用者

假定你說的程式設計是高層的程式設計,就是編出乙個helloworld這樣的程式。

軟體實際上是針對特定的作業系統的。

程式設計當然就是針對那個特定的作業系統編的。

比如針對windows程式設計。

本身windows作業系統就提供了大量的api,大量的windows的型別,讓程式設計師開發windows介面的程式。比如你使用到了某些控制項(按鈕,選單等),使用它的一些功能(繪製螢幕某快區域,接受鍵盤響應時間等等)

還有作業系統有具體的在某些方面的實現,比如程序排程,記憶體管理,檔案管理,訊息傳遞。這方面的功能,由於各作業系統各自有自己實現的方法,也讓你的程式設計有具體的變化。比如在多執行緒方面,windows是執行緒,symbian是活動物件。

等等。假如你是搞歌舞劇的,作業系統相當於大劇院,你使用它提供的各項功能,諸如燈光,公升降機,擴音器等等。你的劇可以在各大劇院上演。如果給你們乙個disco舞池或者京劇戲台(另乙個作業系統)你的劇(軟體)可能就不能上演了。

對於cpu來說,高層程式設計一般都可以考慮忽略,這裡我指你程式設計不是編作業系統,或者微控制器這模擬較「底層」的東西。也就是說,你幹的是「純」軟體的話,cpu你可以不考慮,在你程式設計中,一般不扮演角色。

如果硬是要給個角色的話,那麼就是大劇院的建築硬體,比如地面土壤,建築是水泥還是磚瓦。

為了支援多工處理,作業系統的處理器排程程式使用( )技術把cpu分配給各個任務,使

2樓:

為了支援多工處理,作業系統的處理器排程程式使用併發技術把cpu分配給各個任務,使多個任務巨集觀上可 以「同時」執行。

對於多道程式來說,最大的問題是程式之間不區分輕重緩急,對於互動式程式來說,對於 cpu 計算時間的需求並不多,但是對於響應速度卻有比較高的要求。

而對於計算類程式來說則正好相反,對於響應速度要求低,但是需要長時間的 cpu 計算。想象一下我們同時在用瀏覽器上網和聽**,我們希望瀏覽器能夠快速響應,同時也希望**不停掉。這時候多道程式就沒法達到我們的要求了。

於是人們改進了多道程式,使得每個程式執行一段時間之後,都主動讓出 cpu 資源,這樣每個程式在一段時間內都有機會執行一小段時間。這樣像瀏覽器這樣的互動式程式就能夠快速地被處理,同時計算類程式也不會受到很大影響。

3樓:口吾

為了讓作業系統能同時給多個使用者提供服務,它的處理器排程程式使用分時技術把cpu分配給各個任務。

4樓:

超執行緒是intel 所研發的一種技術

作業系統是怎樣把指令交給cpu執行的?

5樓:goole度娘

作業系統也是軟體,也是一大堆程式組成的,所以不要覺得它多麼神秘。

既然是程式,程式又是由一條條各種這台計算機所支援的指令構成的,執行

程式就是執行這一條條指令。

cpu執行指令過程

1)計算機每執行一條指令都可分為三個階段進行。即取指令-----分析指令-----執行指令

2)取指令的任務是:根據程式計數器pc中的值從程式儲存器讀出現行指令,送到指令暫存器。

3)分析指令階段的任務是:將指令暫存器中的指令操作碼取出後進行解碼,分析其指令性質。如指令要求運算元,則尋找運算元位址。

計算機執行程式的過程實際上就是逐條指令地重複上述操作過程,直至遇到停機指令可迴圈等待指令。

4)一般計算機進行工作時,首先要通過外部裝置把程式和資料通過輸入介面電路和資料匯流排送入到儲存器,然後逐條取出執行。但微控制器中的程式一般事先我們都已通過寫入器固化在片內或片外程式儲存器中。因而一開機即可執行指令。

6樓:匿名使用者

你去查一下 在《組裝原理》這本書上有很明了的解釋 有圖 一看就明白

作業系統的管理功能主要有哪些?

7樓:匿名使用者

作業系統的五大管理功能:

(1)作業管理:包括任務、介面管理、人機互動、圖形介面、語音控制和虛擬實境等;

(2)檔案管理:又稱為資訊管理;

(3)儲存管理:實質是對儲存「空間」的管理,主要指對主存的管理;

(4)裝置管理:實質是對硬體裝置的管理,其中包括對輸入輸出裝置的分配、啟動、完成和**;

(5)程序管理:實質上是對處理機執行「時間」的管理,即如何將cpu真正合理地分配給每個任務。

五大型別作業系統各自的特點分別是:

(1) 批處理作業系統的特點有:a. 使用者離線使用計算機。

使用者提交作業之後直到獲得結果之前就不再和計算機打交道。作業提交的方式可以是直接交給計算中心的管理操作員,也可以是通過遠端通訊線路提交。提交的作業由系統外存收容成為後備作業。

b.成批處理。操作員把使用者提交的作業分批進行處理。每批中的作業將由作業系統或監督程式負責作業間自動排程執行。

c.多道程式執行。按多道程式設計的排程原則,從一批後備作業中選取多道作業調入記憶體並組織它們執行,成為多道批處理。

(2) 分時作業系統的特點有:a. 互動性:

首先, 使用者可以在程式動態運**況下對其加以控制。其次,使用者上機提交作業方便。第三,分時系統還為使用者之間進行合作提供方便。

b. 多使用者同時性:多個使用者同時在自己的終端上上機,共享cpu和其他資源,充分發揮系統的效率。

c.獨立性:客觀效果上使用者彼此間感覺不到有別人也在使用該台計算機,如同自己獨佔計算機一樣。

(3) 實時作業系統的特點有:a. 實時時鐘管理(定時處理和延時處理)。

b. 連續的人-機對話,這對實時控制往往是必須的。

c.要求採取過載保護措施。例如對於短期過載,把輸入任務按一定的策略在緩衝區排隊,等待排程; 對於持續性過載,可能要拒絕某些任務的輸入; 在實時控制系統中,則及時處理某些任務,放棄某些任務或降低對某些任務的服務頻率。

d.高度可靠性和安全性需採取冗餘措施。雙機系統前後臺工作,包括必要的保密措施等。

(4) 網路作業系統的特點有:a. 計算機網路是乙個互連的計算機系統的群體。

b. 這些計算機是自治的,每台計算機有自己的作業系統,各自獨立工作,它們在網路協議控制下協同工作。

c.系統互連要通過通訊設施(硬體、軟體)來實現。

d.系統通過通訊設施執行資訊交換、資源共享、互操作和協作處理,實現多種應用要求。

(5) 分布式作業系統的特點有:a.計算機網路的開發都遵循協議,而對於各種分布式系統並沒有制定標準的協議。當然,計算機網路也可認為是一種分布式系統。

b.分布式系統要求乙個統一的作業系統,實現系統操作的統一性。

c.分布式作業系統對使用者是透明的。但對計算機網路,若乙個計算機上的使用者希望使用另一台計算機上的資源,則必須明確指明是哪台計算機。

d.分布式系統的基礎是網路。分布式系統已不僅是乙個物理上的鬆散耦合系統,同時還是乙個邏輯上緊密耦合的系統。

e.分布式系統還處在研究階段。而計算機網路已經在各個領域得到廣泛的應用。

作業系統跟cpu架構de關係,作業系統和cpu有什麼關係

這麼簡單的跟你說吧 作業系統都是用高階語言編寫的,無論是windows還是安卓或者linux。在系統程式設計的時候是不用怎麼太考慮硬體的,用高階語言編寫的程式交給具體的硬體執行的時候,硬體是不能直接識別的,還需要機器語言進行翻譯 編譯 不同架構的處理器對應的機器語言是有差異的,同一種作業系統專門針對...

關於電腦主機板 cpu和作業系統搭配問題

這個提問比較大,要完全回答需要幾千字,這裡只從提問最後一句話作為突破口來簡要回答。搭配問題要說很大一篇,這裡只能提要一下,最近組裝機領域,英特爾釋出到了桌面九代酷睿,amd釋出到了桌面三代銳龍,前者的主機板是b360,z390等,後者的主機板是b450,x570等。這個只能慢慢積累性記憶,命名學就是...

筆記本的作業系統和CPU,膝上型電腦的CPU 顯示卡和作業系統,都有什麼型別,各個型別之間的區別又是什麼?

僅就相容性來說,還是xp好。現在搞軟體工程用的軟體 我是指必須的那些 基本在xp時代就有了很成熟的版本,相容性還是xp好,也沒必要用vista。vista對一些軟體不相容是事實,不過我個人用起來問題還不是太多,最基本的東西都還是能用。vista的各個版本,僅就相容性來說,我沒看出來有什麼不同,家庭普...