国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Vista > 正文

Windows Vista里面延遲刪除技術的變更

2024-07-26 00:36:02
字體:
來源:轉載
供稿:網友

  在 Windows 2000/XP/Server 2003 里面,包括Microsoft在內的各個軟件廠商在碰到文件被占用無法馬上替換問題的時候,都會使用MoveFileEx API函數讓系統在注冊表

  Key:HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/session Manager
Value:PendingFileRenameOperations

  鍵值下面建立一個延遲刪除列表,系統在下次啟動的時候,CSrss.EXE進程將根據這個列表對文件進行延遲更新或者延遲刪除操作。

注:PendingFileRenameOperations是一個REG_MULTI_SZ類型的注冊表鍵值,不能直接通過注冊表編輯器編輯,否則會造成延遲刪除列表被破壞。要查看這個鍵值的內容,可以使用注冊表編輯器或者使用我以前開發的 PendMove 工具,

  對于Windows xp和Windows Vista兩個操作系統在安裝完需要重啟的補丁以后的PendingFileRenameOperations鍵值數據以后會發現,Windows XP是利用PendingFileRenameOperations控制被占用文件進行被占用文件的升級和刪除操作的。而Windows Vista并沒有使用這個鍵值控制被占用文件的升級和刪除操作。那么Windows Vista 補丁程序是怎么實現的延遲刪除呢?

  首先,需要明確的一點就是Windows Vista 新增的 Restart Manager 機制并沒有完全被使用如果按照以前的說法,Windows Vista 在安裝完補丁程序以后基本上是不需要重啟的,但是現在看來每次打補丁都必須重啟系統,至少進幾個月的補丁都是這樣的。

  那么Windows Vista是如何得知被占用文件的目標文件和源文件信息,如何進行升級的呢?

  在進行一番搜索以后,發現Windows Vista是利用一個/多個xml文件記錄數據信息,在一個特別的目錄里面存放臨時文件和升級文件的。我們知道,以前打完Windows 補丁,都會在Windows目錄下出現在$KB目錄,但是Windows Vista好像沒有這個內容,看不見嗎?不是看不見,是因為根本就沒有生成。

  實際上,Windows Vista 是利用 %SystemRoot%/WinSxS 目錄來存放臨時文件、備份文件和配置信息的,Windows 會在適當的時候根據配置文件來完成文件的更新操作。

  打開 %SystemRoot%/WinSxS 目錄,會看到兩個XML文件,pending.xml 和 cleanup.xml。前者記錄了文件的新版本信息和舊版本信息,后者用途好像是用于清理環境的。

  根據XML文件的描述,很容易得知:

%SystemRoot%/WinSxS/Backup 目錄存放舊版本的文件
%SystemRoot%/WinSxS/Temp 目錄存放需要升級到的新版本文件
注意:Windows Vista 的升級機制又不同于以前版本的Windows,是增量升級哦。也就是只需要下載不同的片段內容,Windows Vista 會根據片段內容和原始文件進行拼接以后,生成新的文件。
  最后留一個問題給大家:Windows Vista 之前的操作系統是利用 CSRSS.EXE 實現文件更新的,那么Windows Vista呢?

  本文轉自:http://blogs.itecn.net/,作者:smallfrogs


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 界首市| 西青区| 什邡市| 金堂县| 手游| 商洛市| 瑞昌市| 静宁县| 吉首市| 平果县| 武威市| 卢湾区| 石屏县| 科尔| 昂仁县| 青浦区| 漠河县| 泗阳县| 云安县| 汝城县| 安阳市| 太谷县| 南投县| 凌云县| 左贡县| 武穴市| 临漳县| 池州市| 新兴县| 浦北县| 祁连县| 利辛县| 定州市| 淮安市| 无锡市| 湟中县| 长沙县| 陆河县| 托克逊县| 岳阳县| 彭水|