windows是一個大型的系統軟件,分成很多個部分,由很多名程序員分別完成的。每個程序員可能都有自己擅長的一種編程語言,各自使用自己擅長的語言(可能是c、c++、vb…………)編寫程序完成自己所負責的那部分程序功能,然后再編譯,組合成最后的windows操作系統軟件。整個過程類似工廠里面生產大型設備,各自完成不同部件之后再組裝。
嘉陵網站建設公司成都創新互聯,嘉陵網站設計制作,有大型網站制作公司豐富經驗。已為嘉陵近1000家提供企業網站建設服務。企業網站搭建\外貿網站制作要多少錢,請找那個售后服務好的嘉陵做網站的公司定做!
根據幾年前微軟在美國公布的內容,windows本身屬于微內核系統,windows98總共大概不到10萬行代碼(具體是2萬還是5萬記不清了),而windows2000則已經有20余萬行代碼,其中80%是用c++編寫,其余部分有c和匯編,底層接口用匯編編寫。
微內核系統從概念上是指“只包括操作系統的基本功能,例如內存管理和進程管理等等”,就連對各個文件系統的支持也不算在內,不過具體windows是不是這樣設計我就不清楚了。
所以一個微內核系統的操作系統能夠有20萬行代碼已經很多了。
之所以微軟選擇了c++而不想linux一樣選擇c,其根本原因就是windows操作系統本身是微內核系統,所以擴展性及以后的維護要求非常重要,所以c++的類的概念就能在這里很好的利用,但是畢竟c++的效率不如標準c及匯編,所以在一些明顯以效率為重的地方用的還是標準c及匯編。
編寫完畢后,windows上的其他用戶態程序(包括所有驅動程序、計算器、游戲等等所有你現在拿鼠標能夠操作的東西)另行開發,例如:掃雷游戲就是用vb寫的。
程序分為 操作系統和應用程序.
應用程序的運行建立在操作系統基礎上,所以可以說操作系統是底層的程序, 而相對的,應用程序就算高層的程序了.
所謂的“底層編成”就是指一些核心的編成(抽象說就是離操作系統近).
"windows底層編程"就是基于window操作系統的核心的編成.
WINDOWS系統是C++語言編寫的。
WINDOWS本身屬于微內核系統,WINDOWS2000則已經有20余萬行代碼,其中80%是用C++編寫,其余部分有C和匯編,底層接口用匯編編寫。微軟選擇C++的根本原因是WINDOWS操作系統本身是微內核系統,所以擴展性及以后的維護要求非常重要,所以C++的類的概念就能在這里很好的利用。
擴展資料:
操作系統是人使用計算機硬件溝通的平臺,沒有良好的人機操作性,就難以吸引廣大用戶使用。Windows操作系統能夠作為個人計算機的主流操作系統,其優異的人機操作性是重要因素。
Windows操作系統界面友好,窗口制作優美,操作動作易學,多代系統之間有良好的傳承,計算機資源管理效率較高,效果較好。
硬件的良好適應性是Windows操作系統的有一個重要特點。Windows操作系統支持多種硬件平臺對于硬件生產廠商寬泛、自由的開發環境,激勵了這些硬件公司選擇與Windows操作系統相匹配,也激勵了Windows操作系統不斷完善和改進,同時,硬件技術的提升,也為操作系統功能拓展提供了支撐。
參考資料來源:百度百科-Windows操作系統
任何底層組件
都必須是編譯執行的語言
因此大部分核心的組件都是c
c++
以及
匯編的產物
但是越新的windows
越表層的組件
都是向解釋語言
.net靠攏
vista開始
windows將慢慢用wpf取代當前的windows
form
directx也會被分拆
被.net取代
所以在未來你可能很難用c或者cpp(我們所謂的unmanaged
code)在win平臺編程了
一個Windows應用程序具有以下的特性: 事件驅動程序設計、消息循環與輸入、圖形輸出、用戶界面對象、資源共享、動態鏈接庫等等。
1、事件驅動的程序設計
傳統的MS-DOS程序主要采用順序的、關聯的、過程驅動的程序設計方法。一個程序是一系列預先定義好的操作序列的組合,它具有一定的開頭、中間過程和結束。程序直接控制程序事件和過程的順序。這樣的程序設計方法是面向程序而不是面向用戶的,交互性差,用戶界面不夠友好,因為它強迫用戶按照某種不可更改的模式進行工作。
控制臺應用程序與Windows應用程序的根本區別在于前者是通過調用系統函數來獲得用戶輸入的,而Windows程序則是通過系統發送消息來處理用戶輸入的。
2、消息循環與輸入
事件驅動圍繞著消息的產生與處理展開,一條消息是關于發生的事件的消息。事件驅動是靠消息循環機制來實現的。輸入消息:包括鍵盤和鼠標的輸入。這一類消息首先放在系統消息隊列中,然后由Windows將它們送入應用程序消息隊列中,由應用程序來處理消息。
3、圖形輸出
Windows程序不僅在輸入上與DOS程序不同,而且在程序輸出上也與DOS有著很大不同,主要表現為:DOS程序獨占整個顯示屏幕,其他程序在后臺等待。而Windows的每一個應用程序對屏幕的一部分進行處理。
DOS程序可以直接往屏幕上輸出,而Windows是一個多窗口的操作系統,由操作系統來統一管理屏幕輸出;每個窗口要輸出內容時,必須首先向操作系統發出請求(GDI請求),由操作系統完成實際的屏幕輸出工作。
擴展資料
Windows多任務的操作系統,各個應用程序共享系統提供的資源,常見的資源包括:設備上下文,畫刷,畫筆,字體,對話框控制,對話框,圖標,定時器,插入符號,通信端口,電話線等。
Windows要求應用程序必須以一種能允許它共享Windows資源的方式進行設計,它的基本模式是這樣的:向Windows系統請求資源;使用該資源;釋放該資源給Windows以供別的程序使用。
在Windows應用程序設計中,CPU也是一種非常重要的資源,因此應用程序應當避免長時間的占用CPU資源(如一個特別長的循環);如果確實需要這樣做,也應當采取一些措施,以讓程序能夠響應用戶的輸入。主存也是一個共享資源,要防止同時運行的多個應用程序因協調不好而耗盡內存資源。