Джон Сэвилл (jsavill@windowsitpro.com) — директор по технической инфраструктуре компании Geniant, имеет сертификаты CISSP, Security and Messaging MCSE для Windows Server 2003 и звание MVP
В. Почему быстродействие виртуального диска фиксированного размера выше, чем у динамического виртуального диска?
О. При создании виртуального диска фиксированного размера объем создаваемого файла виртуального жесткого диска (VHD) — такой же, как у VHD. Например, если создан фиксированный VHD на 40 Гбайт, в файловой системе будет создан VHD-файл объемом 40 Гбайт.
Динамический VHD занимает пространство в файловой системе только по мере записи данных в VHD, поэтому при создании динамического VHD на 40 Гбайт формируется файл размером лишь в несколько сотен Кбайт. Начальный размер файла зависит от заданного размера динамического диска. В начальном файле хранится только поисковая таблица, которая используется для сопоставления виртуального диска с физическим. Для большого VHD требуется более крупная поисковая таблица, поэтому начальный размер VHD-файла будет больше. Поисковая таблица занимает примерно 0,0008 % от всего размера VHD.
Когда данные записываются в динамический VHD, операционная система сначала ищет пространство на физическом диске, содержащем VHD, и обновляет поисковую таблицу; только затем производится запись данных. Из-за этого многоэтапного процесса операция записи задерживается.
Фиксированный VHD выделяет все пространство заранее, поэтому его быстродействие выше, чем у динамического VHD. В действительности, производительность фиксированного виртуального диска почти такая же, как при прямом доступе виртуальной машины к физическому диску или логическому тому LUN; одновременно обеспечиваются преимущества переносимости и резервного копирования VHD.
В. Как найти причину катастрофических сбоев компьютера с «голубым экраном»?
О. В случае сбоя компьютера в каталоге Windows создается файл дампа памяти (memory.dmp). С помощью утилиты dumpchk.exe можно исследовать его содержимое и установить причину сбоя. Перед использованием утилиты нужно загрузить и установить символьный пакет для операционной системы с сайта. После того, как символы будут установлены, загрузите с сайта инструменты отладки Debugging Tools for Windows. Имеются версии для 32- и 64-разрядных операционных систем.
После того, как символьный пакет и инструментарий отладки будут установлены, можно исследовать файл дампа памяти с помощью команды
dumpchk -y %windir%\symbols %windir%\memory.dmp
Ниже приводится результат выполнения команды. Обратите внимание на строку Probably caused by, в которой указана вероятная причина сбоя.
C:\Program Files\Debugging Tools for Windows (x64)>dumpchk -y %windir%\symbols %windir%\memory.dmp Loading dump file C:\Windows\memory.dmp Microsoft (R) Windows Debugger Version 6.9.0003.113 AMD64 Copyright (c) Microsoft Corporation. All rights reserved. Loading Dump File [C:\Windows\memory.dmp] Kernel Summary Dump File: Only kernel address space is available Symbol search path is: C:\Windows\symbols Executable search path is: Windows Server 2008 Kernel Version 6001 (Service Pack 1) MP (4 procs) Free x64 Product: Server, suite: Enterprise TerminalServer SingleUserTS Built by: 6001.18000.amd64fre.longhorn_rtm.080118-1840 Kernel base = 0xfffff800`02a61000 PsLoadedModuleList = 0xfffff800`02c26db0 Debug session time: Sun Sep 21 12:30:02.588 2008 (GMT-5) System Uptime: 2 days 22:08:26.619 Loading Kernel Symbols . ............................................................................... . ................................................................... Loading User Symbols PEB is paged out (Peb.Ldr = 000007ff`fffd6018). Type «.hh dbgerr001» for details Loading unloaded module list . ..... ******************************************************************************* * * * Bugcheck Analysis * * * ******************************************************************************* Use! analyze -v to get detailed debugging information. BugCheck A, {167, 2, 0, fffff80002a9e835} Page c27fa not present in the dump file. Type «.hh dbgerr004» for details PEB is paged out (Peb.Ldr = 000007ff`fffd6018). Type «.hh dbgerr001» for details PEB is paged out (Peb.Ldr = 000007ff`fffd6018). Type «.hh dbgerr001» for details Probably caused by: ntkrnlmp.exe ( nt!CcZeroEndOfLastPage+1b5 ) Followup: MachineOwner