1. 程式人生 > >WIN32程式設計梳理總結——一些概念

WIN32程式設計梳理總結——一些概念

1.程序:

是具有一定獨立功能的程式關於某個資料集合上的一次執行過程,是系統進行資源分配和排程的獨立單位。程序是由程序控制塊(PCB)、程式段、資料段三部分組成。其中程序控制塊是存放程序管理和控制資訊的資料結構,是程序存在的唯一標誌。

程序是一個正在執行的程式 , 每個程序是由私有的虛擬地址空間 , 程式碼 , 資料和其它各種系統資源組成 , 程序在執行過程中建立的資源隨著程序的終止而被銷燬 , 所使用的系統資源在程序終止時被釋放或關閉。

一個程序也包含了一個或者多個執行在此程序內的執行緒。

2.執行緒:

執行緒是程序內部的一個執行單元。系統建立好程序後 , 實際上就啟動執行了該程序的主執行執行緒 , 主執行執行緒以函式地址形式 , 比如說 main 或 WinMain 函式 , 將程式的啟動點提供給 Windows 系統 ; 主執行執行緒終止了 , 程序也就隨之終止 。

作業系統建立程序後,會建立一個執行緒執行程序中的程式碼。通常我們把這個執行緒稱為該程序的主執行緒,主執行緒在執行過程中可能會建立其他執行緒。一般將主執行緒建立的執行緒稱為該程序的輔助執行緒。一個程序中的所有執行緒都在該程序的虛擬地址空間中 , 共同使用這些虛擬地址空間 , 全域性變數和系統資源 , 所以執行緒間的通訊非常方便 , 多執行緒技術的應用也較為廣泛 。

每個執行緒在建立時都會有它自己的訊息佇列

3.例項:

例項就是一個可執行程式在記憶體中的拷貝。一個可執行程式執行多次,在記憶體中就有多個記憶體拷貝。系統是通過例項控制代碼來識別一個可執行程式的拷貝。

4.控制代碼:

系統用來識別不同物件或者同類物件的不同例項的"編號"。它是一個無符號整數。幾乎所有對物件的引用都是通過控制代碼來進行的。如使用HINSTANCE、HWND、HCURSOR、HICON、HDC、HBRUSH、HPEN等。

5.資源:

構成應用程式的元素稱為資源:選單、工具條、點陣圖、字串等。

6.圖形裝置介面:

GDI(Graphic Device Interface)是Windows系統的重要組成部分。負責系統和使用者或者繪圖程式之間的資訊交換,並控制輸出裝置上圖形和文字的輸出。

7.控制元件:

對話方塊上的許多小視窗都是控制元件。如按鈕,編輯框等都是控制元件。

相關推薦

WIN32程式設計梳理總結——一些概念

1.程序: 是具有一定獨立功能的程式關於某個資料集合上的一次執行過程,是系統進行資源分配和排程的獨立單位。程序是由程序控制塊(PCB)、程式段、資料段三部分組成。其中程序控制塊是存放程序管理和控制資訊的資料結構,是程序存在的唯一標誌。 程序是一個正在執行的程式 , 每個程

測試階段性總結-------一些概念

在第一次聽到這些詞的時候,完全不知道他們在講什麼,後來就一點點不知道的記下來,自己去了解。想的就是在別人提到的時候,自己不至於是一個局外人。在這裡分享給和我一樣的小白哦,如果你是大神就不用繼續看啦。 單點登入 只需登入一次就可以訪問所有相互信任的應用系統。直接跳轉到業務頁面。主要為業務整合而設計。 配置

OpenGL程式設計中的一些概念理解

深度測試在視窗建立之前開啟是無效的。 播放視訊等有些情況,開了深度測試可能會導致不能顯示 glutMainLoop();開始主迴圈。如果有執行條件應該加在定義的函式中而不是寫在主函式中 例: v

java 加密的一些概念(慕課網視訊總結,僅對於自己梳理知識)

當您點開這個文章的時候,想要看一下我的總結,不妨看一下別人寫的吧。基本上都是翻譯視訊中的所有資訊。地址為:https://blog.csdn.net/u013991521/article/category/5787377 1.加密:把明文(也就是大部分人能看懂的字元)轉換成同位數的操作。可能不是

【測試分析總結】:測試術語的一些概念

bsp com www. 環境 執行 aid 腳本 檢查 簡單 1、【冒煙測試和回歸測試的區別】: 冒煙測試,是版本驗證測試;是微軟首先提出來的一個概念,和微軟一直提倡的每日build(構建版本)有很密切的聯系。具體說,冒煙測試就是在每日build(構建版本)建立後,對系統

JVM調優總結(二)-----一些概念

Java物件的大小     基本資料的型別的大小是固定的,這裡就不多說了。對於非基本型別的Java物件,其大小就值得商榷。     在Java中,一個空Object物件的大小是8byte,這個大小隻是儲存堆中一個沒有任何屬性的物件的

人工智慧的數學基礎之線性代數的一些概念總結

有一組向量可以通過線性組合得到其他向量,他們所有線性組合的集合就稱為向量的線性生成空間。也就是說在裡面的所有向量都可以由這組向量線性組合得到。維度就是基的數量。 基不一定是兩兩垂直並不一定是正交的,而是隻要滿足這一組基之間是線性無關的就夠了。 線性無關並不一定導致垂直,但垂直一定是線性無關的

Docker一些概念和誤區總結

進入 point exit 虛擬機 停止 虛擬 狀態 entos shell 1:每個業務最好只跑一個業務,且此業務是主進程:,這是容器技術的初衷和本意!!! 2:每個docker容器需要一個前臺進程一直運行,因為docker容器並不是虛擬機,是利用linux的cgrou

組合語言程式設計 第2章概念梳理

組合語言程式設計 第2章概念梳理 8086 14個暫存器: AX,BX,CX,DX (通用暫存器) SI,DI,BP,SP (基址和變址暫存器) CS,SS,DS,ES (段暫存器) IP,FLAGS (指令指標和標誌暫存器) 通用暫存器: AX,BX,CX,D

組合語言程式設計 第3章概念梳理

組合語言程式設計 第3章概念梳理 基礎概念部分:{      字資料在記憶體當中的儲存:高-高 低-低     字資料的低位位元組存放在低地址記憶體單元     字資料的高位位元組存放在高地址記憶體單元  

iOS程式設計遇到的一些難點問題總結

最近做的一個專案,雖然不大,但剛開始接觸iOS程式設計,遇到和克服的問題還不少,記錄下來,溫習一下,或者對別人也會有一點幫助。 這個專案採用的是swift和objective C,CPP混合程式設計的方式,有些模組之前在別的平臺已經實現了,想直接拿過來用。另一方面是對swi

JVM調優總結(一)-- 一些概念

資料型別     Java虛擬機器中,資料型別可以分為兩類:基本型別和引用型別。基本型別的變數儲存原始值,即:他代表的值就是數值本身;而引用型別的變數儲存引用值。“引用值”代表了某個物件的引用,而不是物件本身,物件本身存放在這個引用值所表示的地址的位置。 基本型別包括

總結一些PLSQL開發的程式設計習慣

太多了,想到的一些記錄以下,提醒自己。歡迎補充: 1、多用包(PACKAGE) 引用TomKyte的話就是“什麼時候用包?任何時候!” 他的理由是實際業務中很少有一個儲存過程或函式能獨立完成一個業務場景,必定是一堆有邏輯關聯的儲存過程、函式、型別等才能完整

Java中類的一些概念總結

Java語言中寫一個方法和c語言中寫一個函式完全類似。類中的方法可分為例項方法和類方法(方法型別前面加關鍵字static)。  方法過載是指一個類中可以有多個方法具有相同的名字,但方法的引數必須不同,即或者是引數的個數不同,或者是引數的型別不同。  構造方法是一種特殊的方法,它的名字必須與它所在的類的名字完

並發一些概念

then 處理器 同步 訪問 同步問題 bsp volatile 安全問題 使用 進程之間通訊用什麽:   套接字、信號處理器、共享內存、信號量、文件。 線程之間通訊用什麽: 線程的好處:   降低開發維護成本,提高程序性能,提高資源利用率和系統吞吐量。 線程帶來的風險:

HttpClient 該知道一些概念

繼承 exc ear exce pve lencod style phrase pat HttpClient 該知道不該知道的一些事一、簡介:Apache開源項目: http://hc.apache.org/基於HTTP協議提供強大的支持,構建HTTP客戶端應用程序執行HT

領域驅動設計(DDD)- 請先搞清楚一些概念

責任 可能 升級 是你 ora ext 計數 方法 避免 開發一個新系統   一般我們開始開發一個商業系統都需要做什麽?讀需求文檔去查找功能點,拆解任務。多數情況下,拆解項目是為了評估工作,做評估、分配任務到個人、設計數據庫結構,然後就開始了Coding。 所以,這種方

總結一些PHP文件函數有哪些

exe time() nbsp cut 常用 dir() writeable 一個 table 簡單整理一些PHP的操作文件常用函數: filetype() 獲取文件類型函數 is_dir()  判斷給定的文件名是否是一個目錄   is_executable()  判斷

關於閉包的一些概念和誤區

特點 關於 count() st2 turn 引用 局部變量 函數返回 urn 像這種內層函數引用了外層函數的變量(參數也算變量),然後返回內層函數的情況,稱為閉包(Closure)。 閉包的特點是返回的函數還引用了外層函數的局部變量,所以,要正確使用閉包,就要確保引用的局

mysql 鎖與事務的一些概念

http har .html ins lock 重復 pda sel delet mysql InnoDB引擎 共享鎖(S) select ... lock in share mode, 加了共享鎖的數據, 其它地方只能加共享鎖, 不能加排他鎖. 排他鎖(X) sele