Windows登錄檔究竟是什麼?

2021-07-01 23:37:01 字數 1523 閱讀 8532

1.定義

登錄檔是

windows作業系統

中的乙個核心

資料庫 ,其中存放著各種引數,直接控制著

windows

的啟動、

硬體 驅動程式

的裝載以及一些windows應用程式的執行,從而在整個系統中起著核心作用。

2.存放了什麼資料?

(1)軟、硬體的相關配置和狀態資訊

,比如登錄檔中儲存有應用程式和資源管理器外殼的初始條件、首選項和解除安裝資料等;

(2)聯網計算機的整個系統的設定和各種許可

;(3)

副檔名與應用程式的關聯

;(4) 

硬體 部件的描述、狀態和屬性,效能記錄和其他底層的系統狀態資訊,以及其他資料等。

具體來說,在啟動windows時,register會對照已有硬體配置資料,檢測新的硬體資訊;系統核心從

resister中選取資訊,包括要裝入什麼裝置驅動程式,以及依什麼次序裝入,核心傳送回它自身的資訊,例如版權號等;同時裝置驅動程式也向register傳送資料,並從register接收裝入和配置引數,乙個好的裝置驅動程式會告訴resister它在使用什麼系統資源,例如硬體中斷或dma通道等,另外,裝置驅動程式還要報告所發現的配置資料;為應用程式或硬體的執行提供增加新的配置資料的服務。配合ini檔案相容16位windows應用程式,當安裝—個基於windows 3.x的應用程式時,應用程式的安裝程式setup像在windows中—樣建立它自己的ini檔案或在win.ini和system.ini檔案中建立入口;同時windows還提供了大量其他介面,允許使用者修改系統配置資料,例如控制面板、設定程式等。

如果登錄檔受到了破壞,輕則使windows的啟動過程出現異常,重則可能會導致整個windows系統的完全癱瘓。因此正確地認識、使用,特別是及時備份以及有問題恢復登錄檔對windows使用者來說就顯得非常重要。

3.

登錄檔的資料結構

登錄檔由鍵(或稱「項」)、子鍵(子項)和值項構成。乙個鍵就是分支中的乙個資料夾,而子鍵就是這個資料夾中的子資料夾,子鍵同樣是乙個鍵。乙個值項則是乙個鍵的當前定義,由名稱、資料型別以及分配的值組成。乙個鍵可以有乙個或多個值,每個值的名稱各不相同,如果乙個值的名稱為空,則該值為該鍵的預設值。 

在登錄檔編輯器(regedit.exe)中,資料結構顯示如下,其中,command鍵是open鍵的子鍵,(預設)表示該值是預設值,值名稱為空,其資料型別為reg_sz,資料值為%systemroot%/system32/notepad.exe "%1 

資料型別 

登錄檔的資料型別主要有以下四種: 

顯示型別(在編輯器中) 資料型別 說明 

reg_sz 字串 文字字串 

reg_multi_sz 多字串 含有多個文字值的字串 

reg_binary 二進位制數 二進位制值,以十六進製制顯示。 

reg_dword 雙字 乙個32位的二進位制值,顯示為8位的十六進製制值。

Bundle 究竟是什麼?

bundle用於場景 在我印象中比較深刻的是,一般用於activity之間傳遞數值,也用於handler傳送訊息,如下 intent intent new intent bundle bundle new bundle bundle.putstring key value intent.putext...

分析EOF究竟是什麼

eof僅僅是一種狀態或者說條件,需要觸發。read呼叫遇到檔案結尾,觸發該條件,結果將返回0。針對eof,對於標準輸入裝置,普通檔案,管道檔案,網路套接字檔案是read如何觸發呢?下面程式將說明 server.c 是socket套接字服務端,目的為了網路套接字檔案是read如何觸發測試用的。serv...

分析EOF究竟是什麼

eof僅僅是一種狀態或者說條件,需要觸發。read呼叫遇到檔案結尾,觸發該條件,結果將返回0。針對eof,對於標準輸入裝置,普通檔案,管道檔案,網路套接字檔案是read如何觸發呢?下面程式將說明 server.c 是socket套接字服務端,目的為了網路套接字檔案是read如何觸發測試用的。serv...