[Архив бюллетеней ^] [ Том 3, Число 1] [<Том 4, Число 1 >]
Информационный бюллетень внутренних систем 3, номер 2
http://www.sysinternals.com
Авторские права (C) 2001 Марк Руссинович
20 августа 2001 г. — в этой проблеме:
РЕДАКЦИОННЫЙ
НОВЫЕ ВОЗМОЖНОСТИ SYSINTERNALS
- Обозреватель процессов версии 5.1
- Обработка версии 2.0
- PsInfo версии 1.1
- PsExec версии 1.24
- PsLogList версии 2.07
- Макет источника Windows XP
- DebugView версии 4.13
- PageDefrag версии 2.1, Contig v1.41
- Sysinternals в Корпорации Майкрософт
ВНУТРЕННИЕ СВЕДЕНИЯ
- В Windows 2000 интерактивный DVD-диск
- Пометьте дату: Руссинович и Соломон преподают вместе в Остине
- Управление дисками командной строки
- Слайды WINHEC 2001 в Интернете
- Новые интерфейсы драйверов фильтров файловой системы в XP
- Сбой Windows с помощью штриха клавиши
- Предварительная выборка Windows XP
- Подключения Windows .NET
ЧТО ПРОИСХОДИТ
- Мои интерфейсы Itanium
СПОНСОР: WINTERNALS SOFTWARE
Информационный бюллетень Sysinternals спонсируется Winternals Software в Интернете http://www.winternals.com. Winternals Software является ведущим разработчиком и поставщиком расширенных системных средств для Windows NT/2K/XP. Продукты Winternals Software включают FAT32 для Windows NT 4.0, NTFSDOS Professional Edition (драйвер NTFS/write NTFS для DOS) и удаленное восстановление.
Winternals гордится объявить Defrag Commander версии 1.31, самый быстрый, самый тщательный корпоративный дефрагментатор доступен. Теперь вы можете управлять расписаниями дефрагментации во всей организации Windows из простой оснастки MMC , даже не устанавливая клиентское программное обеспечение в системах NT или Windows 2000. 10-системная лицензия доступна для онлайн-покупки только за $ 169, и агрессивные скидки на количество доступны. Посетите http://www.winternals.com/39 дополнительные сведения или скачайте и используйте бесплатную версию в течение 30 дней.
Здравствуйте!
Добро пожаловать в информационный бюллетень Sysinternals. В настоящее время информационный бюллетень имеет 33000 подписчиков.
Я использую компьютеры в нескольких разных емкостях: в качестве разработчика программного обеспечения; как пользователь; а также в качестве администратора систем (для моей собственной сети систем разработки и тестирования). Так как я хочу достичь самой широкой аудитории для бесплатных программ Sysinternals и коммерческих продуктов Winternals, большинство служебных программ нацелены на минимальную версию Windows NT 4 через Windows XP, а также многие также работают в Windows 95 через Windows Me. Большинство средств, которые я пишу, — это системный уровень, что означает, что они часто содержат специальный код регистра для одного или нескольких различных вариантов Windows. К сожалению, существуют значительные различия в пользовательском интерфейсе и ядре между строкой Windows NT и линией Windows 9x, а также даже различия между версиями из одной строки.
Я использовал для тестирования, имея несколько отладочных систем, все настроенные для нескольких вариантов Windows, которые я перечислил, и загрузка в версию, тестирование, а затем перезагрузка в следующую. Помимо медленного, тестирование иногда будет сложено путем вмешательства падения промежуточных тестовых сборок служебных программ, которые я не убирал должным образом. Хотя у меня по-прежнему есть коллекция многопоточных систем для отладки проблем, инновационный продукт под названием VMWare (www.vmware.com) сделал мои циклы тестирования быстрее и проще.
VMWare — это среда виртуальной машины, используемая для создания виртуальных компьютеров (гостей), работающих на основе Windows NT, Windows 2000 или установок Linux (узлов). Гость может запускать большинство вариантов Windows, DOS и Linux. Его отказ видеть версию операционной системы, работающей поверх другой, особенно при создании полноэкранной виртуальной машины, практически нет способа обнаружить, что вы не сидите на экране компьютера Linux вместо виртуального дисплея компьютера Linux, работающего на вершине Windows 2000, например. Виртуальная машина — это программное обеспечение, которое инкапсулирует операционную систему и приложения, работающие на виртуальной машине, чтобы при попытке и взаимодействии с оборудованием, которое они считают, присутствует, программное обеспечение виртуальной машины перехватывает доступ. Программное обеспечение виртуальной машины создает виртуальные устройства, которые служат тщательно контролируемыми суррогатами для реального оборудования или виртуального оборудования. Например, когда приложение, работающее на виртуальной машине, которое отображается в окне, записывает в память отображения виртуальной машины, программное обеспечение виртуальной машины обновляет содержимое окна, представляющего экран виртуальной машины, а не позволяет получить доступ к реальной памяти видео. Если виртуальная машина запущена в полноэкранном режиме, программное обеспечение виртуальной машины позволит таким образом напрямую управлять памятью видео.
Возможность виртуальной машины в одиночку делает VMWare полезной, так как вы можете иметь любое количество "тестовых систем" на жестком диске. Что делает VMWare еще более мощным является тот факт, что вы можете "приостановить" виртуальный компьютер, сохраняя его состояние на диск, а затем позже возобновить его в течение нескольких секунд, восстанавливая состояние, которое было при приостановке. Но это еще не все. Я использую функцию с именем "неизменяемые диски", которая запускает виртуальный компьютер с виртуальными дисками, содержащими определенное содержимое (например, с просто базовой установкой ОС), а затем отслеживаю изменения, чтобы отменить их и вернуться к начальному состоянию. Если я устанавливаю тестовые версии служебной программы, а затем необходимо убедиться, что я вернусь в чистое состояние, которое не отражает какие-либо изменения служебной программы, я просто отменяю изменения. Я также нахожу VMWare полезным в ролях администратора пользователей и систем. Всякий раз, когда я скачаю приложение, которое я не уверен, что я хочу сохранить, а не скомпрометировать мою систему разработки или заполнить его левым мусором при удалении приложения, я просто пробую его в виртуальной машине с непрестойным диском сначала.
Есть некоторые относительно незначительные недостатки в текущей версии, которые не позволили мне использовать мои реальные компьютеры отладки столько, сколько я делаю. Первым является то, что, поскольку виртуальные машины не поддерживают DirectX, вы не можете запустить отладчик SoftICE Numega, за исключением виртуальной машины с разрешением экрана 640x480. Во-вторых, виртуализация виртуальных портов vmWare ограничена таким образом, чтобы предотвратить отладку ядра с помощью Windbg или Kd между узлом и гостевым или между гостями. Последняя проблема должна быть устранена в следующем крупном выпуске VMWare, однако.
Что особенно интересно о VMWare заключается в том, что до тех пор, пока VMWare не продемонстрировала в противном случае, специалисты по компьютерам преимущественно придерживались убеждений, что невозможно виртуализировать архитектуру x86 в программном обеспечении достаточно хорошо, чтобы запустить неизмененную операционную систему без запретительного снижения производительности. Проблемы являются значительными, особенно в области виртуализации аппаратных устройств, и успех VMWare рассматривается как прорыв - так много, что VMWare недавно опубликовало "лучший из конференций" документ о том, как они реализовали виртуализацию устройств на ежегодной технической конференции USENIX. Вы можете прочитать статью по адресу http://vmware1.m0.net/m/s.asp?HB4162878203X1075673X73339X.
Говоря о технической конференции USENIX, я также совместно опубликовал документ, опубликованный там, высокопроизводительные веб-серверы на основе памяти: производительность ядра и пространства пользователей (http://www.sysinternals.com/files/webserver.pdf). В документе описываются некоторые инновационные исследования, которые я участвовал в работе в IBM Research. Вклад в работу состоит в области ускорения веб-сервера в режиме ядра, а помимо участия в архитектуре, я отвечал за большую часть реализации в Windows NT и Windows 2000. Проект был настолько успешным, что мы последовательно провели мировые записи SPECWeb для производительности веб-обслуживания, его выпустили как все еще развивающийся продукт IBM под названием IBM Netfinity Web Server Accelerator, и как Microsoft, так и сообщество Linux включили несколько ключевых идей в свои собственные продукты (такие как IIS для Windows 2000 и Tux в Linux).
Пожалуйста, передайте бюллетень друзьям, вы думаете, может быть заинтересован в его содержимом.
Спасибо!
-Метка
НОВЫЕ ВОЗМОЖНОСТИ SYSINTERNALS
ОБОЗРЕВАТЕЛЬ ПРОЦЕССОВ версии 5.1
Обозреватель процессов — это новое имя Для HandleEx, многоцелевая программа, которая показывает подробные сведения о процессах, библиотеках DLL, загруженных и открытых дескрипторах к открытым ресурсам операционной системы. Наряду с новым именем, последние версии обозревателя процессов представляют собой множество новых функций, включая эффективное автоматическое обновление, столбец использования ЦП, возможность изменять приоритеты процессов и сообщать идентификаторы сеансов обработки, если система является сервером терминала. Кроме того, она содержит гораздо больше сведений о процессах. Например, можно просмотреть список служб, выполняемых в процессе (если применимо), проверить переменные среды процесса и просмотреть командные строки процесса. Используя новый параметр сортировки с именем "дерево процессов", вы можете графически видеть связи процессов с родительскими дочерними элементами, что может помочь определить назначение процесса. Обозреватель процессов работает во всех версиях Windows 9x, а также Windows NT 4 через Windows XP.
То, что может быть не сразу очевидно в интерфейсе обозревателя процессов, — это возможность показать, какие процессы имеют определенный файл или каталог. Переключите экран для обработки режима и введите имя файла или каталога в диалоговом окне поиска. Функция поиска чаще всего используется для отслеживания процесса, который препятствует удалению или переименованию файла или каталога, но его можно использовать для перечисления процессов с определенными библиотеками DLL, загруженными также.
Скачать обозреватель процессов версии 5.1 по адресу http://www.sysinternals.com/ntw2k/freeware/procexp.shtml.
ДЕСКРИПТОР ВЕРСИИ 2.0
Дескриптор — это версия функции просмотра дескрипторов обозревателя процессов, которая позволяет просматривать дескриптора для ресурсов операционной системы, таких как файлы, которые открыты. В некоторых случаях использование handle — это более быстрый способ идентификации процесса с открытым файлом или каталогом, чем с помощью средства поиска обозревателя процессов, так как вы просто вводите часть имени файла или каталога в командной строке Handle. Помимо более эффективного поиска имен дескрипторов, Handle 2.0 теперь работает в Windows 95/98/Me.
Скачать Handle версии 2.0 по адресу http://www.sysinternals.com/ntw2k/freeware/handle.shtml.
PSINFO версии 1.1
Последнее дополнение к набору средств администрирования PsTools — PsInfo. PsInfo — это средство командной строки, которое сообщает характеристики оборудования и операционной системы компьютера. Например, он сообщает, что работает операционная система, включая номер пакета обновления, дату установки и окончания срока действия (если применимо), а также конфигурацию (например, контроллер домена, сервер-член). В нем также перечислены тип, скорость и количество ЦП на компьютере, а также объем физической памяти. Эта информация делает PsInfo удобной для идентификации системы или инвентаризации. Как и все средства в наборе PsTools, PsInfo выполняется на локальном или удаленном компьютере Windows NT, 2000 или XP.
Скачать PsInfo версии 1.1 по адресу http://www.sysinternals.com/ntw2k/freeware/psinfo.shtml.
PSEXEC V1.24
PsExec позволяет запускать процессы в удаленных системах без необходимости вручную устанавливать программное обеспечение в удаленной системе, если система находится в вашем сетевом районе. Сила PsExec заключается в поддержке перенаправленной консольной программы ввода-вывода, где она обрабатывает ввод клавиатуры и текстовые выходные данные программы удаленной консоли, как если бы она выполнялась в локальной системе.
Последняя версия PsExec поддерживает несколько запущенных процессов в одной удаленной системе, что позволяет удаленно открывать несколько командных строк в другой системе, например. Он также имеет новый параметр принудительного копирования, который позволяет указать, что PsExec должен скопировать файл на удаленный компьютер для выполнения, заменив любую существующую версию.
Скачать PsExec версии 1.24 по адресу http://www.sysinternals.com/ntw2k/freeware/psexec.shtml.
PSLOGLIST версии 2.07
PsLogList, другая служебная программа PsTools, дамп журналов событий из локальной или удаленной системы. В отличие от списка электронных данных, средство набора ресурсов Windows 2000 с той же целью, PsLogList отображает полную строку события записи, а при дампах удаленных журналов использует файлы строковых ресурсов журнала событий из удаленной системы вместо локального.
Версия 2.07 PsLogList включает переключатель командной строки, чтобы вы могли направлять его для дампа сведений о расширенной записи журнала событий (дополнительные сведения, которые могут быть связаны с записью), и новый коммутатор, чтобы просмотреть записи только из указанных последних дней.
Скачать PsLogList версии 2.07 по адресу http://www.sysinternals.com/ntw2k/freeware/psloglist.shtml.
МАКЕТ ИСТОЧНИКА WINDOWS XP
Вы когда-нибудь задавались вопросом, как корпорация Майкрософт упорядочивает исходный код, составляющий ядро Windows NT/2000/XP? Я тоже понял, что информация общедоступна. Когда корпорация Майкрософт выпускает новую сборку Windows 2000/XP, она выпускает несколько версий:
- версия юнипроцессора "бесплатная"
- бесплатная версия uiniprocessor, которая поддерживает более 4 ГБ физической памяти.
- версия с несколькими обработчиками "бесплатный"
- бесплатная версия с несколькими процессорами, которая поддерживает более 4 ГБ физической памяти.
- Проверенная версия мультипроцессора
- Проверенная версия мультипроцессора, которая поддерживает более 4 ГБ физической памяти
Для общей сложности 6 версий. Что отличает "бесплатный" от "проверенного" не тот факт, что "бесплатная" версия является бесплатной (ее нет), но что "проверенная" версия, которая включена в набор CD MSDN, включает код и данные, которые помогают с отладкой операционной системы и драйвера устройств. Бесплатная версия просто компилируется без дополнительного кода, включенного в инструкции условной компиляции.
Примеры дополнительно проверенного кода включают инструкции отладки печати, которые сообщают о том, что делает операционная система, более строгая проверка согласованности параметров, передаваемых в функции режима ядра, от драйверов устройств и операторов утверждения. Оператор assert проверяет предположение разработчика о условиях, которые применяются к области кода. Например, если указатель должен указывать на структуру данных с идентификацией сигнатурой, разработчик может вставить утверждение в это действие. Что происходит, когда предположение утверждения нарушается? Это зависит от утверждения, но в случае тех, кто включен в проверенную сборку, выводится отладочное выходное сообщение, а затем запускается точка останова отладчика, чтобы отладчик ядра активировал (или, если отладчик не активен, происходит сбой, который, надеюсь, создает файл дампа, который можно позже проверить).
Чтобы легко определить проблемы, пойманные утверждениями, утверждения, используемые в проверенной сборке, распечатают файл, функцию и номер строки расположения утверждения. Я могу показать макет дерева источника, извлекая эти строки с помощью служебной программы извлечения строк и упорядочив их в представление дерева Java.
Просмотрите макет источника Windows XP и узнайте больше о утверждениях http://www.sysinternals.com/ntw2k/info/xpsrctree.shtml (обратите внимание, что IE будет отображать предупреждение о медленной загрузке страницы. Закройте его, и вы увидите дерево).
DEBUGVIEW V4.13
DebugView — это служебная программа разработчика, которая позволяет записывать выходные данные отладки из приложений или драйверов в локальной системе или удаленный — даже из нескольких систем одновременно. В этом последнем выпуске добавлена совместимость с Windows XP RC 1. DebugView работает в Windows 9x, Windows Me, Windows NT, Windows 2000 и Windows XP.
Скачайте DebugView версии 4.13 по адресу http://www.sysinternals.com/ntw2k/freeware/debugview.shtml.
PAGEDEFRAG версии 2.1, CONTIG V1.41
Ранжирование в верхней части самых популярных скачиваемых файлов Sysinternals — PageDefrag и Contig. PageDefrag дефрагментирует основные системные файлы данных во время загрузки и Contig — это программа дефрагментации файлов командной строки. Последние версии этих средств имеют улучшенный механизм дефрагментации для Windows 2000, и каждый из них имеет некоторые собственные улучшения.
Помимо дефрагментации файлов реестра и разбиения на страницы, последняя версия PageDefrag также дефрагментирует файлы журнала событий. И аналогично Chkdsk в Windows 2000 PageDefrag теперь имеет 3-секундное подсчет в процессе загрузки, во время которого можно нажать любой ключ, чтобы пропустить дефрагментацию.
Что делает Contig уникальным, является тот факт, что его можно использовать для дефрагментации отдельных файлов, целых каталогов или всего диска. Contig направлен на оптимизацию определенных файлов, критически важных для производительности приложений, так как, в отличие от коммерческих дефрагментаторов, он не объединяет свободное пространство, чтобы предотвратить будущие фрагментации на диске. Помимо расширенного обработчика дефрагментации новый Contig имеет лучшее форматирование выходных данных как в неразглавных, так и в подробных режимах.
Скачать PageDefrag версии 2.1 в http://www.sysinternals.com/ntw2k/freeware/pagedefrag.shtml.
Скачать Contig версии 1.4 по адресу http://www.sysinternals.com/ntw2k/freeware/contig.shtml.
SYSINTERNALS AT WWW.MICROSOFT.COM
Еще раз вот последняя установка ссылок Sysinternals в статьях Базы знаний Майкрософт (KB), выпущенных с момента последнего бюллетеня. Это приводит к 27 общим числам ссылок на sysinternals.
сообщение 0x8000FFFF "Катастрофический сбой" с драйвером ODBC SQL Server
http://support.microsoft.com/support/kb/articles/Q243/3/49.ASPACC: сообщение об ошибке: компонент ActiveX не может создать объект
http://support.microsoft.com/support/kb/articles/Q296/2/05.ASPHOWTO: определение версии MSXML, используемой Internet Explorer
http://support.microsoft.com/support/kb/articles/Q296/6/47.ASPHOWTO: Устранение неполадок с ADODB. Ошибка 800a0bb9 из Набора записей DTC
http://support.microsoft.com/support/kb/articles/Q197/3/23.ASPINFO: руководство по устранению неполадок для 80004005 и других сообщений об ошибках
http://support.microsoft.com/support/kb/articles/Q183/0/60.ASPXADM: при заполнении хранилища почтовых ящиков возникают сообщения с идентификатором события 3036 и 3026
http://support.microsoft.com/support/kb/articles/Q296/1/36.ASP
ВНУТРЕННИЕ СВЕДЕНИЯ
В WINDOWS 2000 ИНТЕРАКТИВНЫЙ DVD-ДИСК
Дэйв Соломон и я написали "Внутри Windows 2000, 3-го выпуска", официальное руководство по внутренним и архитектуре Windows 2000, и мы рады объявить о предстоящем выпуске DVD-учебника "Внутри Windows 2000". На самом деле учебник состоит из 5 DVD-дисков с более чем 9 часов содержимого, состоящего из Дэйв, и я обучаю вас внутренней работе Windows 2000 в неформальном режиме.
В разделах, посвященных управлению памятью, процессам и потокам, хранилищу, файловым системам, сетям и т. д., каждый из них разбивается на 10–20 минут для удобного просмотра. Презентация включает десятки схем, демонстраций, снимка экрана и сводных списков, а каждый модуль завершает проверку вопросов, чтобы проверить и укрепить понимание.
Окончательные цены и дата выпуска еще не завершены, но если вы хотите получать уведомления о выпуске, отправьте сообщение электронной почты mailto:video@...
с словом "интерес" в теме. Или смотри http://www.sysinternals.com/video/ подробные сведения.
ПОМЕТЬТЕ ДАТУ: РУССИНОВИЧ И СОЛОМОН ПРЕПОДАЮТ ВМЕСТЕ В ОСТИНЕ
Если вы заинтересованы в DVD-наборе вы, безусловно, будете заинтересованы в возможности увидеть Дэйв и я преподаю NT внутренние живут. Перейдите в Остин, TX 11-13 декабря, чтобы услышать, что мы представляем наш 3-дневный класс Windows XP/2000/NT Internal Architecture. Класс основан на разделе "Внутри Windows 2000, 3rd Edition" и охватывает подсистемы среды, диспетчер системного вызова, системные потоки, запуск и завершение работы, внутренние элементы реестра, процессы и планирование потоков, управление памятью, безопасность, систему ввода-вывода, хранилище, NTFS и диспетчер кэша. Понимая внутреннюю работу Windows XP и 2000, вы можете воспользоваться преимуществами платформы более эффективной и более эффективной отладкой и устранением неполадок.
Когда сведения доступны, мы сообщите вам в бюллетене и на веб-сайте, поэтому оставайтесь на курсе!
УПРАВЛЕНИЕ ДИСКОМ КОМАНДНОЙ СТРОКИ
Под давлением системных администраторов корпорация Майкрософт, наконец, выпустила средство командной строки с возможностью сценариев для управления дисками в Windows 2000. DiskPart позволяет создавать тома или секции, создавать зеркальные отображения и разрывать зеркала, расширять тома и изучать сведения о дисках, томах и секциях. Хорошо, что DiskPart является бесплатным скачиванием из http://www.microsoft.com/downloads/release.asp?ReleaseID=31167.
СЛАЙДЫ WINHEC 2001 В ИНТЕРНЕТЕ
Если вы пропустили ежегодную конференцию по проектированию оборудования Windows (WINHEC), вы по-прежнему можете просматривать слайды из многих презентаций. Посетите http://www.microsoft.com/winhec/sessions/driver.htm список сеансов, описаний и сопутствующих ссылок на палубы Power Point. Представления общих интересов относятся к методам отладки драйверов, драйверам фильтров и минипорту NDIS и промежуточным драйверам.
НОВЫЕ ИНТЕРФЕЙСЫ ДРАЙВЕРОВ ФИЛЬТРА ФАЙЛОВОЙ СИСТЕМЫ В XP
Если у вас есть зеркальное отображение файлов в режиме реального времени, проверка вирусов или иерархический продукт управления хранилищем, основанный на драйвере фильтра файловой системы, вы хотите убедиться, что ваше описание изменений, внесенных корпорацией Майкрософт в Windows XP, которые влияют на вас.
Самое большое изменение связано с быстрыми подпрограммами ввода-вывода, специальными функциями, которые регистрирует драйвер файловой системы, чтобы система диспетчера памяти, диспетчера кэша и ввода-вывода могли выполнять операции ввода-вывода файловой системы и взаимодействовать с драйверами файловой системы, не создавая irPs. Это может быть сюрпризом для некоторых из вас, чтобы узнать, что есть 6 быстрых подпрограмм ввода-вывода, для которых драйверы фильтров файловой системы всегда обходятся. В их число входят:
FastIoAcquireFileExclusive
FastIoReleaseFile
FastIoAcquireFileForCcFlush
FastIoReleaseFileForCcFlush
FastIoAcquireFileForModWrite
FastIoReleaseFileForModWrite
Диспетчер памяти вызывает FastIoAcquireFileExclusive
и до и FastIoReleaseFile
после создания раздела, поддерживаемого файлом, и другие подсистемы в режиме ядра могут вызывать эти подпрограммы, чтобы временно предотвратить создание разделов. Диспетчер кэша вызывает FastIoAcquireFileForCcFlush
и FastIoReleaseFileForCcFlush
до и после очистки всех измененных данных кэшированного файла обратно на диск, а также вызовы FastIoAcquireFileForModWrite
диспетчера памяти и до и FastIoReleaseFileForModWrite
после записи грязных сопоставленных страниц файлов обратно в файл.
Вместо того чтобы вызывать быстрые функции ввода-вывода напрямую, подсистемы режима ядра используют суррогатные подпрограммы среды выполнения файловой системы (FsRtl). Подпрограммы среды выполнения для наиболее быстрых функций ввода-вывода вызывают драйверы фильтров, получая ссылку на объект устройства фильтра через вызов IoGetRelatedDeviceObject
целевого объекта файла, а затем вызывая соответствующую подпрограмму ввода-вывода фильтра, но подпрограммы выполнения, связанные с быстрыми вызовами ввода-вывода, только что перечисленные вместо этого вызовы IoGetBaseFileSystemDeviceObject
, которые возвращают объект устройства драйвера файловой системы. Причина того, что среда выполнения проходит фильтры для этих функций, по моему мнению, немного хромой: среда выполнения просто не доверяет драйверам фильтров. Если фильтр не передает эти вызовы базовому драйверу файловой системы, он вызывает повреждение данных файловой системы и почти наверняка сбой. Но есть много вещей, которые драйвер фильтра может сделать, чтобы вызвать сбои.
В Windows XP FsRtl представлена новая функция, которая фильтрует драйверы, FsRtlRegisterFileSystemFilterCallbacks
используемые для регистрации обратных вызовов для этих различных операций. Это позволяет драйверам фильтров файловой системы проверять эти операции и даже завершать их сбоем, а среда выполнения может гарантировать, что базовый драйвер файловой системы всегда вызывается при необходимости. Где можно найти документацию для функции? Установленный пакет файловой системы Windows XP, доступный для $995 от Корпорации Майкрософт: http://www.microsoft.com/ddk/ifskit/XPdefault.asp.
СБОЙ WINDOWS С ПОМОЩЬЮ РОСЧЕРКА КЛЮЧА
Несколько бюллетеней назад я рассказал вам, как можно добавить параметр в реестр Windows 2000, который позволяет инициировать сбой Bluescreen работающей системы с специальной последовательностью ключей, что позволяет анализировать системы, которые в противном случае не отвечают на входные данные. Как насчет способа аварийного сбоя Windows NT и Windows 2000, не устанавливая ничего в реестре?
Откройте окно командной строки, измените текущий каталог на корневой каталог загрузочного диска (диск с \winnt
ним) и введите dir /s
. Хотя это выполняется тип F7+ВВОД несколько раз, а затем прервать описание, введя ctrl-C. Вы сразу же столкнетесь с синим экраном или спонтанной перезагрузкой. Здорово, правда? К сожалению, в отличие от трюка, который я ранее сообщил, это не разработано поведение, а скорее ошибка, для которой можно найти отчет в http://www.WindowsITsecurity.com/articles/index.cfm?articleID=22037.
Для тех, кто пропустил бюллетень, включающий параметр аварийного нажатия клавиш, добавьте в реестр Windows 2000 или XP следующее значение реестра в соответствии с инструкциями в файле справки по средствам отладки Майкрософт:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\i8042prt\Parameters\CrashOnCtrlScrll DWORD 1
Перезагрузка и вы можете завершить работу системы, введя прокрутку-блокировку дважды, удерживая клавишу слева.
ПРЕДВАРИТЕЛЬНАЯ ВЫБОРКА WINDOWS XP
Корпорация Майкрософт сосредоточила Windows XP на улучшении взаимодействия с конечным пользователем, и пользователи считают большую часть опыта, с которой компьютер включается и подходит для использования. Поэтому разработчики Майкрософт потратили много усилий на повышение производительности процесса загрузки и запуска приложения. Это было решено несколькими способами: первое — это параллельное инициализация драйверов серийных и сетевых устройств, в отличие от Windows 2000, где они инициализируются последовательно. Во-вторых, Winlogon больше не ожидает, пока служба рабочей станции (которая сама ожидает сетевых служб) станет доступной, прежде чем представить диалоговое окно входа в систему и разрешить пользователю войти в систему. Наконец, они включили метод под названием "предварительная выборка" в процесс загрузки и запуск приложения. Я кратко рассмотрим, как работает предварительная выборка и указать вам на технический документ, опубликованный корпорацией Майкрософт по оптимизации загрузки.
Windows (все версии, кроме реального режима Win3.1) — это операционная система с запросом, где данные файлов и код "сбой" в память с диска в качестве приложения пытается получить к нему доступ. Данные и код неисправны в фрагментах страницы, где размер страницы определяется оборудованием управления памятью ЦП. Страница составляет 4 КБ на x86. Предварительная выборка — это процесс переноса данных и кодовых страниц в память с диска, прежде чем он требуется.
Чтобы узнать, что следует предварительно получить, диспетчер кэша XP отслеживает ошибки страниц, которые приложения несут при запуске. По умолчанию он трассирует первые 2 минуты процесса загрузки и первые 10 секунд запуска приложения. После сбора трассировки, упорядоченной по сбоям, принятых в файле метаданных таблицы ФАЙЛОВ NTFS (MFT) (если приложение обращается к файлам или каталогам в томах NTFS), файлы, на которые ссылается ссылка, и каталоги, на которые ссылается, он уведомляет компонент предварительной проверки планировщика задач, сигналируя именованный объект события. Планировщик задач выполняет вызов NtQuerySystemInformation с типом информации, указывающим запрос трассировки и считывает его. После выполнения последующей обработки данных трассировки планировщик задач записывает его в файл в папку \Windows\Prefetch
. Имя файла — это имя приложения, к которому применяется трассировка, за которой следует тире и шестнадцатеричное представление хэша пути файла. Файл имеет расширение .pf, поэтому примером будет БЛОКНОТ. EXE-AF43252301.PF.
Исключением из правила имени файла является файл, который хранит трассировку загрузки, которая всегда называется NTOSBOOT-B00DFAAD.PF
(сверток шестнадцатеричного совместимого слова "BAADF00D", который программисты часто используют для представления неинициализированных данных). Все ошибки, принятые в процессах системы или простоя, считаются частью загрузки, что имеет смысл, так как это происходит в системном процессе, который драйверы устройств загружают и инициализируют.
При запуске загрузки или приложении диспетчер процессов вызывает диспетчер кэша, чтобы предоставить ему возможность предварительной выборки. Диспетчер кэша ищет в каталоге предварительной выборки, чтобы узнать, существует ли файл трассировки для сценария предварительной выборки. Когда диспетчер кэша вызывает NTFS для предварительного получения всех ссылок на файл метаданных MFT, он считывает содержимое каждого из каталогов, на которые ссылается ссылка, и, наконец, открывает каждый файл, на который ссылается диспетчер памяти, и использует диспетчер памяти для чтения в любых данных и кодах, указанных в трассировке, которая еще не находится в памяти. Диспетчер памяти инициирует все операции чтения асинхронно, а затем ожидает их завершения перед продолжением запуска приложения.
Как эта схема обеспечивает преимущество производительности? Ответ заключается в том, что во время обычной загрузки или запуска приложения порядок сбоев происходит таким образом, что некоторые страницы передаются из одной части файла, а затем несколько из другого файла, а затем некоторые из каталога и т. д. Это переход вокруг соответствует непосредственно переходу на диск, и корпорация Майкрософт узнала, что время поиска диска является доминирующим фактором замедления загрузки и запуска приложения. Поиск практически устраняется при предварительной выборке данных из определенного файла или каталога сразу перед переходом на другой.
Чтобы свести к минимуму поиск еще дальше, каждые три дня или таким образом планировщик задач упорядочивает список файлов и каталогов в том порядке, на который они ссылаются во время загрузки или запуска приложения, и сохраняет список в файле с именем \Windows\Prefech\Layout.ini
. Затем он запускает системный дефрагментатор с параметром командной строки, который сообщает дефрагментатору дефрагментировать на основе содержимого файла вместо выполнения полной дефрагментации. Дефрагментатор находит непрерывную область на томе достаточно большого размера, чтобы хранить все перечисленные файлы и каталоги, а затем перемещать их в область, чтобы они хранились друг за другом.
Это основы схемы предварительной выборки XP, которая майкрософт значительно ускоряет процесс загрузки (на самом деле вы можете увидеть, что загрузка XP гораздо быстрее, чем Windows 2000). Дополнительные сведения о предварительной выборке и других улучшениях быстрой загрузки см. в техническом документе http://www.microsoft.com/hwdev/fastboot/. Кроме того, Дэйв Соломон и я начал работать над XP-редакцией "Внутри Windows 2000" (для публикации в середине весны), и вы найдете еще более подробное описание там.
ПОДКЛЮЧЕНИЯ WINDOWS .NET
Те из вас, которые пропустили меня в TechEd, могут услышать меня на конференции Windows .NET Connections в Скоттсдейле, Аризона 3 октября. Я предоставляю презентации в Windows NT/2000 для анализа аварийного дампа и изменений ядра в Windows XP. Другие докладчики на конференции включают коллегу Windows 2000 Magazine, которые вносят вклад в редакторы Марк Минаси и Шон Daily. Сообщите мне, если вы присутствовали, что вы слышали о конференции из бюллетеня.
Вы можете просмотреть абстракты для моих переговоров и найти ссылку на сайт Windows .NET Connections на сайте http://www.sysinternals.com/ntw2k/info/talk.shtml.
ЧТО ПРОИСХОДИТ
МОИ ИНТЕРФЕЙСЫ ITANIUM
Корпорация Майкрософт предоставила мне систему Itanium, чтобы я смог перенести служебные программы Sysinternals в Win64. Компьютер имеет некоторые впечатляющие спецификации, кстати: 2 733 МГц процессоров и 8 ГБ (!) ОЗУ. В следующий раз я скажу вам о моем опыте переноса, включая изменения, которые я должен был внести в различные служебные программы, чтобы они работали на Win64.
Благодарим вас за чтение бюллетеня Sysinternals.
Опубликовано в понедельник, 20 августа 2001 г. 7:03 по ottoh