Исследование возможностей операционной системы Windows
p align="left">Paint.NET создан как проект старшекурсников по компьютерным наукам весной 2004 года. Рик Брюстер, один из основных разработчиков, в своём блоге сказал, что версия 1.0 была написана «за 4 месяца… и содержала 36 000 строк кода»[1]. Недавний релиз, версия 3.10 -- приблизительно 140 000 строк кода. Проект Paint.NET продолжался летом и по осенний семестр 2004 г., в результате чего появились версии 1.1 и 2.0.Двое выпускников Университета штата Вашингтон, которые работали над проектом в студенческие годы, продолжают его развитие и сейчас, являясь сотрудниками Microsoft. По состоянию на май 2006 года программа была загружена по крайней мере 2 миллиона раз, с темпом порядка 180000 в месяц. 3.3.3.4 WordPadWordPad представляет собой текстовый редактор для работы с небольшими документами. Он допускает несложное форматирования абзацев, а также использование различных шрифтов и начертаний. Текстовый редактор WordPad входит в базовый состав Windows 95,98, XP. Запуск происходит с использованием главного меню: (Пуск ?Программы ?Стандартные ?Текстовый редактор WordPad. Текстовый редактор WordPad реализует основные функции текстового редактора. Поддерживает технологию вставки объектов из других приложений Windows 95,98, XP. Выпускает файлы в формате Word. Стандартная программа WordPad на деле является очень упрощенной версией профессионального текстового процессора Word, выпускаемого компанией Microsoft. Microsoft Word - самый популярный на рынке программных продуктов текстовый процессор для Windows. Word предоставляет невиданные ранее возможности обработки текстов с помощью множества инструментов, что значительно облегчает выполнение форматирования. Последняя версия программы носит название Word 97, но в эксплуатации находятся также версии Word 95 и еще более ранняя версия Word 6.0. Текстовый редактор WordPad предоставляет возможности создания несложных форматированных текстов и является упрощенным вариантом профессионального редактора Word. Редактор WordPad запускается из основного меню Пуск выбором команды Программы - Стандартные - Текстовый редактор WordPad. Пользовательский интерфейс WordPad является стандартным для Windows-приложений и включает в себя строку меню, стандартную панель инструментов, панель инструментов для форматирования текста, размерную линейку и строку состояния. Важнейшие из команд редактора продублированы пиктограммами инструментальных панелей. 3.3.3.5 БлокнотПоставляемая в комплекте операционной системы Windows XP программа Блокнот (Microsoft Notepad) является простейшим текстовым редактором, предназначенным для редактирования стандартных текстовых файлов Microsoft Windows, имеющих расширение .txt. Блокнот поддерживает только простейшие режимы форматирования текста, вследствие чего является идеальным средством для создания и обработки файлов, содержащих код различных интерпретируемых языков, например HTML-документов, файлов CSS, PHP, PERL (при подготовке подобных программ и скриптов избыточное форматирование, которое могут внести в текстовый файл «профессиональные» редакторы, отрицательно сказывается на работоспособности кода). Созданные при помощи Блокнота файлы вы можете сохранять в кодировках Windows-1251, Unicode (UTF-8) и ANSI, что придает работе с текстом значительно большую гибкость и мобильность. Для запуска текстового редактора Блокнот необходимо выполнить следующие команды: Пуск->Все программы->Стандартные->Блокнот (Start->All Programs-> Accessories->Notepad). Интерфейс этой программы показан на рис. 11.1. Основное пространство рабочего окна редактора занимает область набора текста, в которой отображается мигающий курсор. Сразу после загрузки Блокнот автоматически создает пустой текстовый документ, имеющий по умолчанию название Безымянный (Untitled). Вы можете открыть для редактирования уже существующий текстовый файл, воспользовавшись пунктом Открыть (Open) меню Файл (File). Навигация по дискам и папкам в окне Открытие файла редактора Блокнот осуществляется так же, как и в программе Проводник, с помощью расположенных в верхней части окна кнопок навигации и меню Папка. По умолчанию в данном окне отображаются только текстовые файлы с расширением .txt. Чтобы открыть в текстовом режиме любой другой файл, например документ HTML, выберите пункт Все файлы (All Files) в меню Тип файлов (Files of type). Вы можете записать редактируемый файл на диск под прежним названием либо, если файл еще ни разу не был сохранен, поместить его в любую папку на диске как текстовый документ с расширением .txt, выбрав пункт Сохранить (Save) в командном меню Файл (File). Чтобы сохранить текущий файл с указанным вами именем и произвольным расширением, выполните команду Файл->Сохранить как (File->Save As). Для создания нового файла воспользуйтесь командой Файл->Создать (File->New). Помните, что программа Блокнот не поддерживает редактирование нескольких текстовых документов в одном рабочем окне, поэтому при создании пустого файла или открытии существующего содержимое старого, не сохраненного на диске файла, открытого в окне Блокнота в данный момент, уничтожается. Меню Вид (View) редактора Блокнот содержит только один пункт: Строка состояния (Status Bar). Если рядом с ним установлен флажок, в нижней части окна текстового редактора будет отображаться панель состояния, а на ней - количество строк в редактируемом документе и количество символов в каждой строке. По умолчанию набираемый в окне Блокнота текст компонуется в одну строку, которая переносится только по нажатию клавиши Enter. Если вы хотите, чтобы вводимый текст автоматически переносился в окне редактора на новую строку по словам в соответствии с шириной экрана, установите флажок напротив пункта Перенос по словам (Word Wrap) в командном меню Формат (Format). Текстовый редактор Блокнот не поддерживает оформление текстовых документов с применением шрифтовых выделений, а также форматирование текстовых блоков, однако вы можете изменить параметры базового шрифта, используемого в программе Блокнот по умолчанию. Изменение базового шрифта редактора Блокнот никак не отразится на форматировании или настройках текстового документа: гарнитура и размер данного шрифта влияют только на отображение файла на экране вашего компьютера. Например, если вы впоследствии откроете такой документ в редакторе Блокнот на другом компьютере, текст будет снова выведен на экран базовым шрифтом. Чтобы изменить настройки базового шрифта Блокнота, выберите пункт Шрифт (Font) в командном меню Формат (Format). В меню Шрифт (Font) одноименного диалогового окна вы можете выбрать гарнитуру шрифта, который планируете использовать в редакторе по умолчанию, в меню Начертание (Font Style) - стиль начертания: Обычный (Regular), Жирный (Bold), Курсив (Italic) и Жирный курсив (Bold Italic). И наконец, в меню Размер (Size) можно задать размер шрифта. Внешний вид выбранного шрифта отобразится в окне Образец (Sample). Стандарт Unicode позволяет создавать многоязыковые текстовые документы, набранные в редакторе Блокнот одним и тем же шрифтом. В меню Набор символов (Script) диалогового окна Шрифт содержится список национальных языков, символы которых поддерживает выбранный вами шрифт. После выбора соответствующего языкового скрипта из списка становится доступным содержащийся в нем набор национальных символов, и вы можете использовать их для создания многоязыковых документов. 3.3.4 Проверка диска на наличие ошибокПозволяет обнаруживать и исправлять различные ошибки на носителях информации. Эти ошибки могут возникнуть по разным причинам, например, из-за повреждений фрагментов магнитной поверхности жесткого диска. Еще одной причиной ошибок может служить внезапный сбой компьютера при записи информации на носитель. Часто заметить ошибки сразу бывает трудно и дальнейшая работа с таким носителем может только усугубить ситуацию. Программа проверки дисков запускается автоматически при старте Windows, если вы неправильно завершили ее работу в предыдущий раз. В предыдущих версиях Windows при этом запускалась версия для ДОС, которая работала не очень надежно. Особенностью Windows XP является то, что всегда запускается Windows-версия программы проверки, которую мы и рассматриваем. Вы также можете в любое время провести проверку диска самостоятельно. Нажмите кнопку Выполнить проверку (Check Now) в диалоге для запуска программы проверки. Будет запущена программа проверки дисков и появится ее рабочее окно (Рис. 9.2). Флажки в этом окне позволяют выбрать параметры проверки диска. Если установлен флажок Автоматически исправлять ошибки (Automatically Fix Errors), то программа будет сама принимать решение по исправлению найденных ошибок. Если установить флажок Проверять и восстанавливать поврежденные сектора (Scan for and attempt recovery of bad sectors), то кроме проверки диска на наличие логических ошибок в файловой системе, также будет проведена проверка на наличие физических ошибок поверхности жесткого диска. Обычно этот флажок не устанавливают, так как такая проверка занимает много времени. Но иногда полную проверку все же следует проводить. Установив нужные параметры, следует нажать кнопку Запуск (Start) для начала проверки. Проверка будет сопровождаться изменением прогресс-индикатора, расположенного в нижней части рабочего окна. По окончании проверки появится диалог с сообщением, что проверка завершена (Рис. 9.2). Если во время проверки были обнаружены ошибки, то вам будет предложено просмотреть отчет о проверке. Нажмите кнопку ОК, чтобы закрыть этот диалог. Отметим, что при запуске программы проверки диска с помощью главного меню, из группы стандартных служебных программ вам будет предложено вначале выбрать диск для проверки. При запуске же из папки Мой компьютер (My Computer) такого предложения не будет, так как диск уже выбран, когда вы открываете диалог настройки свойств диска. 3.3.5 Форматирование жёсткого дискаБольшинство пользователей ПК придерживаются мнения, что жесткие диски, впрочем, как и любой другой накопитель информации, должны быть отформатированы перед использованием. В вопросе форматирования есть некоторая путаница относительно того, что и как делает процедура форматирования жесткого диска, что мы и постараемся рассмотреть в этой статье. В современных жестких дисках используются методики, коренным образом отличающиеся от методов форматирования старых жестких дисков Форматирование жесткого диска включает в себя три этапа: · Форматирование диска на низком уровне (низкоуровневое форматирование). Это единственный "настоящий" метод форматирования диска. При этом процессе на жестком диске создаются физические структуры: треки, сектора, управляющая информация. Этот процесс выполняется заводом-изготовителем на пластинах, которые не содержат еще никакой информации. · Разбиение на разделы. Этот процесс разбивает объем винчестера на логические диски (C, D, и т.д.). Этим обычно занимается операционная система, и метод разбиения сильно зависит от операционной системы. · Высокоуровневое форматирование. Этот процесс также контролируется операционной системой и зависит как от типа операционной системы, так и от утилиты, используемой для форматирования. Процесс записывает логические структуры, ответственные за правильное хранение файлов, а также, в некоторых случаях, системные загрузочные файлы в начало диска. Это форматирование можно разделить на два вида: быстрое и полное. При быстром форматировании перезаписывается лишь таблица файловой системы, при полном же -- сначала производится верификация (проверка) поверхности накопителя, а уже потом производится запись таблицы файловой системы. Из выше сказанного следует, что два из трех шагов -- это форматирование, и такое двойное значение этого слова приводит к некоторому непониманию при использовании термина "форматирование". Также исторически сложившемся фактом является то, что всем известная программа MS-DOS format.com работает по-разному при форматировании жесткого и гибкого дисков. Гибкие диски имеют простую, стандартную геометрию и не могут разбиваться на логические диски, так что format.com запрограммирован на автоматическое выполнение сразу двух операций: как низкоуровневого так и высокоуровнего форматирования. В случае с жесткими дисками, format.com выполняет только высокоуровневое форматирование. Низкоуровневое форматирование выполнялось контроллером жесткого диска на старых винчестерах и заводом-изготовителем на новых винчестерах. В отличие от высокоуровневого форматирования, создания разделов и файловой структуры -- низкоуровневое форматирование -- означает базовую разметку поверхностей дисков. Для винчестеров ранних моделей, которые поставлялись с чистыми поверхностями, такое форматирование создает только информационные сектора и служебную серво-информацию и может быть выполнено контроллером винчестера под управлением соответствующей программы. Для современных винчестеров, которые содержат записанную при изготовлении сервоинформацию, полное форматирование означает и разметку информационных секторов, и перезапись сервоинформации. Низкоуровневое форматирование винчестера Низкоуровневое форматирование -- это процесс нанесения информации о позиции треков и секторов, а также запись служебной информации для сервосистемы. Этот процесс иногда называется "настоящим" форматированием, потому что он создает физический формат, который определяет дальнейшее расположение данных. Когда в первый раз запускается процесс низкоуровневого форматирования винчестера, пластины жесткого диска пусты, т.е. не содержат абсолютно никакой информации о секторах, треках и т.п. Это последний момент, когда у жесткого диска абсолютно пустые пластины. Информация, записанная во время этого процесса, больше никогда не будет переписана. Старые жесткие диски имели одинаковое количество секторов на трек и не имели встроенных контроллеров, так что низкоуровневым форматированием занимался внешний контроллер жесткого диска, и единственной нужной ему информацией было количество треков и количество секторов на трек. Используя эту информацию, внешний контроллер мог отформатировать жесткий диск. Современные жесткие диски имеют сложную внутреннюю структуру, включая изменение количества секторов на трек при движении от внешних треков к внутренним, а также встроенную сервоинформацию для контроля за приводом головок. Также современные накопители используют технологию "невидимых" плохих секторов, т.е. могут незаметно для пользователя и системы автоматически пропускать плохие сектора. Вследствие такой комплексной структуры данных, все современные жесткие диски проходят низкоуровневое форматирование только один раз -- на заводе-изготовителе. Нет никакого способа в домашних условиях произвести настоящее низкоуровневое форматирование любого современного жесткого диска, будь это IDE/ATA, IDE/SATA или SCSI винчестер. Причем это невозможно сделать даже в условиях хорошего сервисного центра (в сервисном центре можно произвести как бы "среднеуровневое" форматирование, которое может заменить информацию о пропускаемых сбойных секторах, но перезаписать физическое распределение секторов и служебную сервоинформацию не получится). Старые жесткие диски нуждались в неоднократном низкоуровневом форматировании на протяжении всей своей жизни, в связи с эффектами температурного расширения, связанного с применением шаговых моторов в приводе головок, у которых перемещение головок было разбито на сетку с фиксированным шагом. С течением времени у таких накопителей смещалось физическое расположение секторов и треков, что не позволяло правильно считать информацию, применяя шаговый двигатель в приводе магнитных головок. Т.е. головка выходила на нужную, по мнению контроллера, позицию, в то время как позиция заданного трека сместилась, что приводило в появлению сбойных секторов. Эта проблема решалась переформатированием накопителя на низком уровне, перезаписывая треки и сектора по новой сетке шагов привода головок. В современных накопителях, использующих в приводе головок звуковую катушку, проблема температурного расширения ушла на второй план, вынуждая производить лишь температурную рекалибровку рабочих параметров привода головок. Если вы все-таки захотите поэкспериментировать и запустить низкоуровневое форматирование на современном жестком диске, то единственное что вы можете получить, кроме потерянного времени, это потерю данных. Часть современных накопителей на команду низкоуровневого форматирования вообще никак не реагируют, а часть из них просто заполняет сектора какой-либо информацией, не трогая при этом служебную и сервоинформацию. Современный жесткий диск может быть восстановлен до значения "почти как новый" при помощи любой утилиты, записывающей нули или какую-либо другую информацию по всему объему накопителя, или, проще говоря, утилиту, "обнуляющую" жесткий диск. Высокоуровневое форматирование винчестера После завершения процесса низкоуровневого форматирования винчестера, мы получаем диск с треками и секторами, но содержимое секторов будет заполнено случайной информацией. Высокоуровневое форматирование -- это процесс записи структуры файловой системы на диск, которая позволяет использовать диск в операционной системе для хранения программ и данных. В случае использования операционной системы DOS, для примера, команда format выполняет эту работу, записывая в качестве такой структуры главную загрузочную запись и таблицу размещения файлов. Высокоуровневое форматирование выполняется после процесса разбивки диска на партиции (разделы), даже если будет использоваться только один раздел во весь объем накопителя. В современных операционных системах процесс разбиения винчестера на разделы и форматирования может выполнятся как в процессе установки операционной системы, так и на уже установленной системе, используя графический интуитивно понятный интерфейс. Например, в случае Windows XP, это можно сделать следующим образом: Щелкнуть правой кнопкой на значке Мой компьютер и выбрать управление, затем, раскрыв вкладку Запоминающие устройства выбрать пункт Управление дисками, после чего можно разбивать, форматировать, переразбивать разделы жесткого диска. Однако следует помнить, что изменения, внесенные как в разбивку диска, так и в форматирование, ведут к потере данных, находящихся на изменяемом диске. Различие между высокоуровневым и низкоуровневым форматированием очень огромно. Нет необходимости производить низкоуровневое форматирование для стирания информации с жесткого диска т.к. высокоуровневое форматирование подходит для большинства случаев. Оно перезаписывает служебную информацию файловой системы, делая винчестер чистым, однако, сами файлы при этом процессе не стираются, стирается только информация о местонахождении файла. Т.е. после высокоуровневого форматирования винчестера содержавшего файлы, мы будем иметь чистый диск, свободный от каких-либо файлов, но, используя различные способы восстановления данных, можно добраться до старых файлов, которые были на диске до его форматирования. Единственным условием успеха в восстановлении данных является то, что файлы на диске перед форматированием не должны были быть фрагментированы. Для полного стирания данных с винчестера, можно порекомендовать использовать утилиты, зануляющие диск (прописывающие например, нули, по всей поверхности накопителя), после чего придется заново разбивать винчестер на диски и форматировать его высокоуровневыми средствами, но при этом у вас будет полная гарантия в том, что никакие данные не уцелели. Все операционные системы используют различные программы для высокоуровневого форматирования, т.к. они используют различные типы файловых систем. Тем не менее, низкоуровневое форматирование, как процесс разметки треков и секторов на диске, одинаков. Различается только сама технология записи треков и секторов на диск. Это делают специальные устройства, называемые серво-врайтеры. 3.3.6 Очистка дискаЧасто причиной появления программных ошибок становится отсутствие достаточного объема свободного места на жестком диске. В таком случае необходимо очистить диск от временных файлов и другой ненужной информации. Существует несколько способов сделать это: очистить временные файлы Windows; очистить кэш временных файлов Интернета и уменьшить его размер (при использовании браузера Internet Explorer); отключить наблюдение за некоторыми дисками и уменьшить отводимый для этого объем винчестера; отключить спящий режим; деинсталлировать ненужные программы. Временные файлы Windows создаются в процессе работы операционной системы и выполнения прикладных программ. Наименьший контроль над ними имеют операционные системы Windows. Количество создаваемых ими временных файлов просто поражает, а еще больше удивляет отсутствие нормального механизма автоматического удаления таких файлов. Если вы до сих пор работаете с операционной системой Windows 95/98, то для очистки жесткого диска от ненужных файлов воспользуйтесь специальной встроенной утилитой (Пуск - Программа - Стандартные - Служебные - Очистка диска. Вручную можно освободить больше места, если удалить еще некоторые дополнительные файлы. Так, кроме очистки каталога Temp, который находится в системной папке Windows, можно без последствий удалить все файлы с расширениями BMP, TXT, TMP, ВАК, OLD, - и LOG.Временные файлы Интернета Если вы работаете с Интернетом, значит, ваш компьютер наполнен его временными файлами. Временные файлы Интернета являются своего рода кэшем, который позволяет ускорить загрузку страниц, считывая нужную некритичную информацию с локального диска (например, изображения). Чтобы очистить каталог с временными файлами Интернета, следует вызвать окно свойств Internet Explorer, выполнив команду Сервис - Свойства обозревателя в окне браузера. На вкладке Общие в области Временные файлы Интернета нажмите кнопку Удалить файлы. Таким образом вы освободите достаточно большой объем диска. Здесь же можно настроить объем диска, отводимый под кэш. Для этого нажмите кнопку Параметры. В открывшемся окне с помощью ползунка или вводом с клавиатуры укажите требуемый объем кэша. По умолчанию под кэш зарезервировано более 200 Мбайт. Это неоправданно много для домашнего компьютера, который подключается к Интернету достаточно редко. 3.3.7 Дефрагментация дискаДефрагментация -- процесс обновления и оптимизации логической структуры раздела диска с целью обеспечить хранение файлов в непрерывной последовательности кластеров. После дефрагментации ускоряется чтение и запись файлов, а следовательно и работа программ. Другое определение дефрагментации: перераспределение файлов на диске, при котором они располагаются в непрерывных областях. Длинные файлы занимают несколько кластеров. Если запись производится на незаполненный диск, то кластеры, принадлежащие одному файлу, записываются подряд. Если диск переполнен, на нем может не быть цельной области, достаточной для размещения файла. Тем не менее, файл все-таки запишется, если на диске много мелких областей, суммарный размер которых достаточен для записи. В этом случае файл записывается в виде нескольких фрагментов. Процесс разбиения файла на небольшие фрагменты при записи на диск называется фрагментацией. Если на диске много фрагментированных файлов, скорость чтения носителя уменьшается, поскольку поиск кластеров, в которых хранятся файлы, на жестких дисках требует времени. На флеш памяти, например, время поиска не зависит от расположения секторов, и практически равно нулю, поэтому для них дефрагментация не требуется. Дефрагментация чаще всего используется для таких файловых систем, как File Allocation Table для MS-DOS и Microsoft Windows, так как в программах для работы с ними обычно не предусмотрено никаких средств для предотвращения фрагментации, и она появляется даже на почти пустом диске и небольшой нагрузке. 3.4 Панель управления3.4.1.1 СистемаКомпонент «Система» в панели управления используется для просмотра сводной информации о компьютере. Здесь приведены основные сведения об оборудовании, например имя компьютера. Для изменения системных параметров используются ссылки в левой области окна «Система». Компонент «Система» предоставляет сводку основных сведений о компьютере, включая следующие: - Windows выпуск. Содержит сведения об установленной на компьютере версии Windows. - Система. Указывается общая оценка индекса производительности Windows для этого компьютера. Указаны тип, частота и количество процессоров, если на компьютере установлено несколько процессоров. Например, если установлено два процессора, то в строке будет указано «(2 процессора)». Также отображается объем установленной оперативной памяти (ОЗУ) и, в некоторых случаях, сколько памяти использует Windows. Дополнительные сведения об общей оценке компьютера и о том, что она обозначает, см. в разделе Что такое индекс производительности Windows? - Имя компьютера, имя домена и параметры рабочей группы. Указаны имя компьютера и сведения о рабочей группе или домене. Эти сведения можно изменить и добавить учетные записи пользователей, нажав кнопку Изменить параметры. - Активация Windows. Активация подтверждает подлинность установленной копии Windows, что способствует предотвращению пиратского использования программного обеспечения. Дополнительные сведения см. в разделе Активация Windows: вопросы и ответы. 3.4.1.2 Диспетчер устройствС помощью диспетчера устройств можно устанавливать и обновлять драйвера аппаратных устройств, изменять параметры этих устройств и устранять неполадки в их работе. С помощью диспетчера устройств можно выполнять следующие задачи: · Определять, правильно ли работает установленное на компьютере оборудование. · Изменять параметры конфигурации оборудования. · Указывать драйвера устройств, загруженные для каждого из устройств, а также получать сведения о каждом из драйверов устройств. · Менять расширенные параметры и свойства устройств. Устанавливать обновленные драйвера устройств. · Включать, отключать и удалять устройства. · Выполнять откат к предыдущей версии драйвера. · Просматривать устройства на основе их типа, их подключения компьютеру или используемых ими ресурсов. · Отображать или скрывать скрытые устройства, которые не обязательно должны отображаться, но могут требоваться для расширенного устранения неполадок. Как правило, с помощью диспетчера устройств можно проверять состояние оборудования и обновлять драйвера устройств на компьютере. Опытные пользователи, досконально понимающие структуру оборудования компьютера, могут также использовать диагностические возможности диспетчера устройств для устранения конфликтов устройств и изменения параметров ресурсов. Обычно для изменения параметров ресурсов не требуется использовать диспетчер устройств, поскольку ресурсы выделяются системой автоматически при установке оборудования. С помощью диспетчера устройств можно управлять устройствами только на локальном компьютере. На удаленном компьютере диспетчер устройств действует только в режиме «только чтение», который позволяет просматривать, но не изменять конфигурацию оборудования на этом компьютере. Драйвер устройства представляет собой программное обеспечение, с помощью которого Windows может взаимодействовать с отдельным устройством. Драйвер устройства устанавливается для обеспечения работы Windows с новым оборудованием. 3.4.1.3 Защита системыЗащита системы - это компонент, который регулярно создает и сохраняет информацию о системных файлах и параметрах компьютера. Защита системы также сохраняет предыдущие версии измененных файлов. Эти файлы сохраняются в точках восстановления, которые создаются непосредственно перед значимыми системными событиями, такими как установка программы или драйвера устройства. Они также создаются автоматически раз в неделю, если за предыдущую неделю не было создано других точек восстановления, однако можно создавать точки восстановления вручную в любое время. Защита системы автоматически включена для диска, на котором установлена ОС Windows. Защиту системы можно включить только для дисков, отформатированных с использованием файловой системы NTFS. Существует два способа воспользоваться преимуществами защиты системы. · Если компьютер работает медленно или с ошибками, то с помощью восстановления системы можно восстановить состояние системных файлов и параметров компьютера на предшествующий момент времени с использованием точки восстановления. Дополнительные сведения о восстановлении системы см. в разделе Восстановление системы: вопросы и ответы. · Если файл или папка были случайно изменены или удалены, можно восстановить их предыдущую версию, которая сохраняется как часть точки восстановления. 3.4.1.4 Дополнительно· Быстродействие. Позволяет задать параметры визуальных эффектов, использования процессора, оперативной и виртуальной памяти. · Профили пользователей. Профиль пользователя представляет собой набор параметров, благодаря которым внешний вид компьютера и его работа соответствуют желаниям пользователя. В нем содержатся параметры фона рабочего стола, экранных заставок, указателей, звука и другие параметры. Профили пользователей позволяют применять персональные параметры при каждом входе в ОС Windows. Профиль пользователя отличается от учетной записи пользователя, которая используется для входа в Windows. У каждой учетной записи есть по крайней мере один связанный с ней профиль пользователя. 3.4.1.5 Брандмауэр WindowsБрандмауэр представляет собой программный или аппаратный комплекс, который проверяет данные, входящие через Интернет или сеть, и, в зависимости от настроек брандмауэра, блокирует их или позволяет им пройти в компьютер . Брандмауэр поможет предотвратить проникновение хакеров или вредоносного программного обеспечения (такого как черви) в ваш компьютер через сеть или Интернет. Брандмауэр также помогает предотвратить отправку вредоносных программ на другие компьютеры. Следующая иллюстрация показывает работу брандмауэра. 3.4.1.6 ЭлектропитаниеСхема управления питанием - это набор аппаратных и системных параметров, управляющих потреблением и экономией питания компьютером. Схемы управления питанием позволяют сэкономить энергию, максимально увеличить быстродействие системы или обеспечить оптимальное соотношение между ними. Схемы управления питанием по умолчанию (сбалансированная и энергосберегающая) подходят большинству пользователей. Пользователи могут также изменить параметры существующей схемы управления питанием или создать собственную схему. 3.4.2 Диспетчер задачДиспетчер задач в операционных системах семейства Microsoft Windows -- утилита для вывода на экран списка запущенных процессов и потребляемых ими ресурсов (в частности статус, процессорное время и потребляемая оперативная память). Также есть возможность некоторой манипуляции процессами. Windows Task Manager в Windows NT можно вызвать, одновременно нажав клавиши Ctrl+Shift+Esc. В Windows NT и в Windows XP существует более известная комбинация клавиш -- Ctrl+Alt+Del. Диспетчер задач можно также запустить по названию taskmgr.exe или кликнув правым кликом по панели задач и выбрав соответствующий пункт в всплывающем меню. Рисунок 16 Диспетчер Задач (вкладка Приложения) Диспетчер задач -- встроенная в операционную систему утилита. Она содержит вкладки: · Приложения. Позволяет переключиться в нужное приложение, либо завершить его. · Процессы. Разнообразные данные обо всех запущенных в системе процессах, можно завершать, менять приоритет, задавать соответствие процессорам (в многопроцессорных системах) · Службы (начиная с Vista). Сведения обо всех службах Windows. · Быстродействие. Графики загрузки процессора (процессоров), использования оперативной памяти. · Сеть (отсутствует в случае отсутствия активных сетевых подключений). Графики загрузки сетевых подключений. · Пользователи (только в режиме администратора). Манипулирование активными пользователями. 3.4.2.1 Основные процессы:· CSRSS.EXE Процесс отвечает за окна консоли, за создание и удаление потоков, а также частично за работу 16-битной среды MS-DOS. Он относиться к подсистеме Win32 пользовательского режима (WIN32.SYS же относиться к ядру Kernel) и должен всегда выполняться. · EXPLORER.EXE Пользовательская среда, содержащая такие компоненты, как Панель задач, Рабочий стол и тому подобное. Его практически всегда можно закрывать и снова открывать без каких-либо последствий. · INTERNAT.EXE Загружает различные выбранные пользователем языки ввода, показывает на панели задач значок >, который позволяет переключать языки ввода. С помощью панели управления возможно без использования данного процесса безо всяких проблем переключать раскладку клавиатуры. · LSASS.EXE Этот локальный сервер авторизации отвечает за IP-директивы безопасности (интернет- протоколы) и загружает драйвер безопасности. Он запускает процесс, отвечающий за авторизацию пользователей. При успешной авторизации пользователя приложение создаёт и присваивает ему специальный протокол. Все запущенные далее процессы используют этот протокол. · MSTASK.EXE Отвечает за службу планирования Schedule, которая предназначена для запуска различных приложений в определённое пользователем время. · SMSS.EXE Диспетчер сеансов запускает высокоуровневые подсистемы и сервисы. Процесс отвечает за различные действия, например запуск Winlogon и Win32 процессов, а также за операции с системными переменными. Когда Smss определяет, что Winlogon или Csrss закрыты, он автоматически выключает систему. · SPOOLSV.EXE Обеспечивает создание очереди на печать, временно сохраняя документы и факсы в памяти. · SVCHOST.EXE Этот всеобъемлющий процесс служит хостингом для других процессов, запускаемых с помощью DLL. Поэтому иногда работают одновременно несколько Svhost. С помощью команды > можно вывести на экран все процессы, использующие Svchost. · SERVICES.EXE Процесс управления системными службами. Запуск, окончание, а также все остальные действия со службами происходят через него. · SYSTEM Выполняет все потоки ядра Kernel. · SYSTEM IDLE PROCESS Этот процесс выполняется на любом компьютере. Нужен он, правда, всего лишь для мониторинга процессорных ресурсов, не используемых другими программами. · TASKMGR.EXE Процесс диспетчера задач, закрывать который крайне не рекомендуется. · WINLOGON.EXE Отвечает за управление процессами авторизации пользователей. · WINMGTM.EXE Основной компонент клиентской службы Windows. Процесс запускается одновременно с первыми клиентскими приложениями и выполняется при любом запросе служб. В Windows XP процесс запускается как клиент процесса Svchost. 3.4.2.2 БыстродействиеДескриптор Дескриптор - лексическая единица (слово, словосочетание) информационно-поискового языка, выражающая основное смысловое содержание какого-либо текста. Используется при информационном поиске документов в информационно-поисковых системах. Файловый дескриптор -- это неотрицательное целое число. Когда мы открываем существующий файл и создаем новый файл, ядро возвращает процессу файловый дескриптор. Дескриптор сегмента -- служебная структура в памяти, которая определяет сегмент. Длина дескриптора равна восьми байтам. Дескриптор шлюза -- служебная структура данных, служащая для различных переходов. Используется только в защищённом режиме. В реальном режиме некоторым аналогом может служить дальний адрес. Длина дескриптора стандартна и равна восьми байтам. Приложение, которому требуется выполнить ввод/вывод, вызывает функцию open, чтобы создать дескриптор файла, применяемый для доступа к файлу. В операционной системе дескриптор файла реализован как массив указателей на внутренние структуры данных. Система сопровождает отдельную таблицу дескрипторов файлов для каждого процесса. При открытии файла процессом система помещает указатель на внутренние структуры данных для этого файла в таблицу дескрипторов файлов процесса и возвращает индекс таблицы в вызывающий оператор. В прикладной программе достаточно только присвоить этот дескриптор переменной и использовать его в последующих вызовах, которые запрашивают операции с файлами. Операционная система использует дескриптор как индекс таблицы дескрипторов процесса и переходит по указателю к структурам данных, содержащим всю информацию о файле. Таблица дескрипторов процесса используется для хранения указателей на внутренние структуры данных для файлов, открытых процессом. Процесс (приложение) использует дескриптор при обращении к файлу. В API-интерфейсе сокетов реализовано новое абстрактное понятие для сетевой связи -- сокет(IP-адрес плюс № порта, по), по которому устанавливается взаимодействие конкретных процессов на различных узлах сети. Как и файл, каждый активный сокет обозначается небольшим целым числом, называемым дескриптором сокета. Операционная система размещает дескрипторы сокетов в той же таблице дескрипторов, что и дескрипторы файлов. Поэтому в приложении не может присутствовать и дескриптор файла, и дескриптор сокета с одним и тем же значением. В операционной системе предусмотрена отдельная системная функция socket, вызываемая приложением для создания сокета; функция open используется в приложении только для создания дескрипторов файлов. Общий замысел, который лег в основу разработки интерфейса сокетов, состоял в том, чтобы для создания любого сокета было достаточно одного системного вызова. Сразу после создания сокета приложение должно выполнить дополнительные системные вызовы для указания точных сведений о его назначении. Этот принцип можно пояснить, рассмотрев структуры данных, сопровождаемые системой. Потоки и процессы Приложение - самодостаточный набор машинных инструкций, обеспечивающий решение конкретной задачи. Процесс обычно определяют как экземпляр (или копию) выполняемой программы (приложения). В Win32 процессу отводится 4Гбайта адресного пространства. В этом адресном пространстве расположен exe-файл, код и данные DLL-библиотек. Кроме того, процессу принадлежат такие ресурсы, как файлы, динамические области памяти и потоки (thread). Ресурсы, которые создаются при жизни процесса, обязательно уничтожаются при его завершении. В MSDN процесс определяется как контекст безопасности, в котором выполняется приложение. Обычно контекст безопасности связан с пользователем и приложения получают его уровень полномочий. (The security context under which an application runs. Typically, the security context is associated with a user, so all applications running under a given process take on the permissions and privileges of the owning user.) Для того чтобы процесс что-либо выполнял, в нем обязательно должен быть хоят бы один поток. Поток можно определить как такой фрагмент программного кода, который выполняется последовательно. Именно потоки отвечают за исполнение программного кода, помещенного в адресное пространство процесса. При создании процесса в Win32 первый (первичный - primary) поток создается системой автоматически. Далее этот поток может порождать другие потоки, которые в свою очередь могут порождать третьи и т.д. Таким образом, процесс может включать произвольное число потоков, которые можно создавать и уничтожать. Процесс завершается, когда завершается выполнение первичного потока. Приоритеты процессов и потоков. Операционная система распределяет процессорное время между потоками, выделяя каждому из них определенную долю времени (квант). Процессорное время выделяется по очереди каждому потоку, но при этом учитывается также приоритет потока. Когда прекращается выполнение первичного потока процесса, уничтожается и сам процесс. Многопоточные процессы организуются в тех случаях, когда требуется избежать "узких" мест. Например, если процесс ожидает завершения файловой операции, связи с другим компьютером или просто вывода на экран какого-либо сложного изображения, то он попросту простаивает. В этом случае можно организовать отдельный поток или потоки, которые будут выполнять код параллельно; повысить скорость функционирования процесса в целом за счет того, что некритическая часть кода выполняется потоками с более низким приоритетом; использовать на полную мощь многопроцессорный компьютер. В этом случае каждый поток может исполняться на отдельном процессоре. Интерфейс Win32 API позволяет управлять созданием и уничтожением потоков, распределением времени между потоками и приоритетами процессов и потоков. Процессы могут иметь классы приоритетов. Классы приоритетов процессов ABOVE_NORMAL_PRIORITY_CLASS Больше NORMAL_PRIORITY_CLASS, но ниже HIGH_PRIORITY_CLASS. BELOW_NORMAL_PRIORITY_CLASS Больше IDLE_PRIORITY_CLASS, но ниже NORMAL_PRIORITY_CLASS. HIGH_PRIORITY_CLASS Высший приоритет. Такой приоритет имеет, например, диспетчер задач Windows IDLE_PRIORITY_CLASS Низший приоритет (фоновый процесс). Такой процесс получит время только в том случае, если в системе нет других исполняемых потоков. Типичный пример - программа заставка. NORMAL_PRIORITY_CLASS Нормальный приоритет. Абсолютное большинство процессов, в том числе системных, имеют этот приоритет. REALTIME_PRIORITY_CLASS Самый высокий (реального времени) приоритет. Потоки этого процесса вытесняют все другие. Этот приоритет надо использовать с большой осторожностью и только на короткое время. К примеру, выполнение процесса с таким приоритетом «остановит» мышь или кеширование дисковых операций. Функция Win API SetPriorityClass позволяет изменить приоритет процесса на этапе выполнения приложения: BOOL SetPriorityClass( HANDLE hProcess, // дескриптор процесса DWORD dwPriorityClass // класс приоритета); Класс реального времени используется только для процессов, которые, например, обрабатывают высокоскоростные потоки данных и завершаются за короткое время. Так как процесс реального времени имеет приоритет более высокий, чем большинство процессов ОС, то неаккуратное его использование может привести к зависанию системы. Класс с высоким приоритетом также используется достаточно редко. Например, он может понадобиться в случае связи с каким-либо внешним устройством, которое, если не получит сигнал в течение короткого времени, отключается. Большинство процессов выполняется с нормальным приоритетом. Это означает, что процесс не требует какого-либо повышенного внимания со стороны ОС. Процессы с фоновым приоритетом получают время только в том случае, если у диспетчера задач нет других процессов. Примеры таких процессов - это программы-заставки, автосохранение или реорганизация данных и т.п. Интерфейс Win32 API предлагает всего 32 уровня приоритета с номерами 0..31. Windows распределяет процессорное время между потоками в соответствии с их приоритетом, а не приоритетом процессов. (Процесс в Windows считается инертным, т.е. сам по себе он ничего не выполняет, а имеет смысл только при наличии в нем хотя бы одного потока.) При создании нового потока ему назначается такой же приоритет, как и у породившего его процесса. Вместе с тем приоритет потока можно изменять (свойство TThread.Priority в Delphi или функция Win API SetThreadPriority) при его создании или в процессе выполнения: BOOL SetThreadPriority( HANDLE hThread, // дескриптор потока int nPriority // приоритет потока); THREAD_PRIORITY_ABOVE_NORMAL На 1 выше приоритета процесса THREAD_PRIORITY_BELOW_NORMAL На 1 ниже приоритета процесса THREAD_PRIORITY_HIGHEST На 2 выше приоритета процесса THREAD_PRIORITY_IDLE Приоритет 1 для классов приоритета процесса IDLE_PRIORITY_CLASS, BELOW_NORMAL_PRIORITY_CLASS, NORMAL_PRIORITY_CLASS, ABOVE_NORMAL_PRIORITY_CLASS или HIGH_PRIORITY_CLASS. Приоритет 16 для REALTIME_PRIORITY_CLASS. THREAD_PRIORITY_LOWEST На 2 ниже приоритета процесса THREAD_PRIORITY_NORMAL Приоритет потока совпадает с приоритетом процесса THREAD_PRIORITY_TIME_CRITICAL Приоритет 15 для классов приоритета процесса IDLE_PRIORITY_CLASS, BELOW_NORMAL_PRIORITY_CLASS, NORMAL_PRIORITY_CLASS, ABOVE_NORMAL_PRIORITY_CLASS или HIGH_PRIORITY_CLASS. Приоритет 31 для REALTIME_PRIORITY_CLASS Примечание. Для Windows 2000/XP параметр nPriority может принимать также значения - 7, - 6, -5, - 4, - 3, 3, 4, 5 или 6. За дополнительной информацией обращайтесь к разделу Scheduling Priorities в справочной системе MSDN. 3.4.3 Память3.4.3.1 Физическая памятьОдним из основных ресурсов любого компьютера является физическая память. Диспетчер памяти Windows наполняет память кодом и данными активных процессов, драйверов устройств и самой операционной системы. Так как в большинстве систем объем кода и данных, к которым производится обращение, превышает емкость физической памяти, то она демонстрирует, какой код и какие данные оказываются задействованы в тот или иной момент. Объем памяти влияет на производительность - когда данные или код, нужный процессу или операционной системе, отсутствует в памяти, диспетчер памяти вынужден подгружать его с диска. Помимо воздействия на производительность, объем физической памяти обуславливает ограничения других ресурсов. К примеру, объем невыгружаемого пула (буферов операционной системы, выделяемых из физической памяти) напрямую зависит от объема физической памяти. Кроме того, характеристики физической памяти определяют предел виртуальной памяти системы, объем которой примерно равен сумме емкости физической памяти и максимального объема всех настроенных файлов подкачки. Наконец, объем физической памяти косвенно сказывается на максимальном количестве процессов. Об этом я подробно расскажу в предстоящей публикации об ограничениях, связанных с процессами и потоками. Ограничения памяти в ОС Windows Server Особенности поддержки физической памяти в ОС Windows продиктованы ограничениями оборудования, условиями лицензирования, характеристиками структур данных операционной системы и вопросами совместимости драйверов. На странице "Ограничения памяти в различных выпусках ОС Windows" (на английском языке) веб-узла MSDN изложены ограничения памяти, характерные для различных версий Windows и номеров SKU в рамках каждой версии. Как видите, во всех серверных версиях ОС Windows разным номерам SKU соответствуют разные формы поддержки физической памяти, обусловленные условиями лицензионных соглашений. К примеру, 32-разрядная версия ОС Windows Server 2008 Standard поддерживает лишь 4 ГБ физической памяти, в то время как 32-разрядная версия Windows Server 2008 Datacenter - 64 ГБ. С другой стороны, 64-разрядная версия ОС Windows Server 2008 Standard поддерживает всего 32 ГБ физической памяти, а 64-разрядная версия Windows Server 2008 Datacenter - целых 2 ТБ. Систем с физической памятью объемом 2 ТБ не так уж много - участники рабочей группы по вопросам производительности ОС Windows Server знают пару таких, одна из которых в какой-то момент была собрана в их собственной лаборатории. Максимальный для 32-разрядных систем объем памяти - 128 ГБ - поддерживается версией Windows Server 2003 Datacenter Edition. Такое ограничение связано с тем, что в более мощных системах структуры, применяемые диспетчером памяти для отслеживания физической памяти, потребляли бы слишком большую часть пространства виртуальных адресов. Диспетчер памяти отслеживает страницы памяти при помощи массива, называемого базой данных PFN, и в целях оптимизации производительности отображает все содержимое этой базы в виртуальную память. Так как каждая страница памяти представлена структурой данных объемом 28 байт, в системе с физической памятью емкостью 128 ГБ для размещения базы данных PFN потребуется 930 МБ. В 32-разрядных ОС Windows предусмотрено пространство виртуальных адресов объемом 4 ГБ, зависящее от оборудования и по умолчанию распределяемое между текущим процессом пользовательского режима (например, блокнотом) и системой. В таких условиях база данных PFN объемом 980 МБ занимает почти половину из доступных 2 ГБ системной части пространства виртуальных адресов, а значит, на отображение ядра, драйверов устройств, системного кэша и других структур данных системы остается всего 1 ГБ (см. иллюстрацию). По той же причине в таблице ограничений объема памяти указаны пониженные лимиты для SKU при загрузке в режиме настройки систем с объемом памяти 4 ГБ (иначе называемом 4GT и включаемом параметрами загрузки /3GB или /USERVA файла Boot.ini и параметром /Set IncreaseUserVa программы Bcdedit). Дело в том, что для этого режима характерна такая схема разделения физической памяти, при которой процессам пользовательского режима достается 3 ГБ, а системе - всего 1 ГБ. В целях повышения производительности в ОС Windows Server 2008 для системных нужд резервируется более значимая доля адресного пространства. Для этого максимальный объем физической памяти, поддерживаемый в 32-разрядных версиях ОС, сокращается до 64 ГБ. Диспетчер памяти мог бы высвободить память путем выборочного отображения фрагментов базы данных PFN в системные адреса по мере необходимости, однако этот вариант слишком сложен и имеет потенциал снижения производительности, связанного с дополнительными операциями отображения и отмены отображения. Лишь недавно стали появляться системы настолько производительные, чтобы такой вариант можно было рассматривать как реалистичный. Впрочем, так как размер системной части адресного пространства не является ограничением для отображения всей базы данных PFN в 64-разрядных версиях ОС Windows, поддержка большего объема памяти реализована именно в них. Версия ОС Windows Server 2008 Datacenter поддерживает до 2 ТБ физической памяти. Такое ограничение не связано ни с особенностями реализации, ни с возможностями оборудования - все дело в том, что корпорация Майкрософт не объявляет о поддержке конфигураций, которые мы не в состоянии протестировать. На момент выпуска ОС Windows Server 2008 "рекорд" по объему памяти находился на отметке 2 ТБ - на этом и остановились. Ограничения памяти в клиентских версиях ОС Windows 64-разрядные клиентские версии ОС Windows поддерживают разные объемы памяти - от 512 МБ в Windows XP Starter до 128 ГБ в Vista Ultimate. В то же время, все 32-разрядные клиентские версии ОС Windows, в том числе Windows Vista, Windows XP и Windows 2000 Professional, поддерживают физическую память в объеме до 4 ГБ. 4 ГБ - это максимальный физический адрес, доступный в стандартном режиме управления памятью x86. Некоторое время назад поддержка памяти в объеме свыше 4 ГБ была бессмысленна - системы с таким объемом памяти, даже серверные, встречались чрезвычайно редко. К моменту разработки пакета обновления 2 (SP2) для ОС Windows XP появление клиентских систем с объемом памяти свыше 4 ГБ уже прогнозировалось, что заставило разработчиков приступить к интенсивному тестированию Windows XP на подобных системах. Кроме того, в пакете обновления 2 (SP2) для ОС Windows XP была реализована поддержка расширений физических адресов (PAE) по умолчанию для устройств, поддерживающих технологию No Execute, что, во-первых, необходимо для предотвращения исполнения данных (DEP), а во-вторых, обеспечивает возможность поддержки памяти в объеме более 4 ГБ. В ходе тестирования выяснилось, что многие системы аварийно завершают работу, зависают и отказываются загружаться. Происходит это из-за того, что некоторые драйверы устройств, в особенности аудио- и видеоустройств, которые, в основном, встречаются в клиентских системах, а не в серверах, запрограммированы на работу с физическими адресами в пределах 4 ГБ. Эти драйверы, оказываются, обрубают адреса свыше 4 ГБ, что приводит к повреждению содержимого памяти со всеми вытекающими последствиями. В серверных же системах, которые, как правило, оснащаются менее специфичными устройствами с относительно простыми и надежными драйверами, подобные проблемы обнаружены не были. Выявленные недостатки экосистемы драйверов заставили применительно к клиентским версиям ОС отказаться от работы с памятью в объеме свыше 4 ГБ, несмотря на то, что теоретически её адресация возможна. Фактические ограничения памяти в 32-разрядных клиентских системах Согласно официальным условиям лицензии, в 32-разрядных клиентских версиях ОС допускается установка памяти в объеме до 4 ГБ. Фактически же лимит поддержки объема памяти ниже - кроме того, он зависит от набора микросхем и характеристик подключенных устройств. Дело в том, что в таблицу физических адресов включается не только оперативная память, но и память устройств. При этом для совместимости с 32-разрядными операционными системами, которые не способны обрабатывать адреса свыше 4 ГБ, в системах x86 и x64 память устройств отображается ниже границы адресации 4 ГБ. Предположим, если в системе установлено 4 ГБ оперативной памяти, а окна в память сетевых адаптеров, аудио- и видеоустройств в сумме составляют 500 МБ, то 500 МБ из 4 ГБ оперативной памяти окажутся за границей адресации. Следовательно, оснащение 32-разрядной системы с клиентской версией ОС Windows памятью объемом 3 ГБ и выше, вполне возможно, не принесет желаемого эффекта. В ОС Windows 2000, Windows XP и Windows Vista RTM с объемом доступной памяти можно ознакомиться в диалоговом окне System Properties (Свойства системы), на странице Performance (Быстродействие) диспетчера задач. В ОС Windows XP и Windows Vista (в том числе с пакетом обновления 1 (SP1)) эти сведения можно также получить с помощью служебных программ Msinfo32 и Winver. С выходом пакета обновления 1 (SP1) для ОС Windows Vista некоторые из этих инструментов стали указывать объем установленной, а не доступной, памяти, о чем сказано в специальной статье базы знаний Microsoft. Как свидетельствует утилита Msinfo32, при загрузке моего ноутбука под управлением 32-разрядной версии Vista доступно 3,5 ГБ памяти из четырех установленных. Схему распределения физической памяти можно узнать с помощью служебной программы Meminfo. Как преодолеть ограничения Из трех основных ресурсов - процессора, памяти и дисковой подсистемы - характеристики памяти, как правило, оказывают наибольшее влияние на общую производительность системы. Чем памяти больше, тем лучше. Быть уверенными в том, что весь потенциал установленной памяти реализован, вам помогут 64-разрядные версии ОС Windows. Они, между прочим, предоставляют ряд других преимуществ по части производительности, о которых я расскажу в одном из предстоящих выпусков серии "Преодолевая ограничения Windows", посвященном виртуальной памяти и её ограничениям. 3.4.3.2 Виртуальная памятьВиртуамльная паммять -- технология, которая была разработана с целью увеличения общего объема памяти, организации множества адресных пространств памяти, их защиты и автоматизации процесса перемещения машинного кода и данных между основной памятью компьютера и вторичным хранилищем. В настоящее время эта технология имеет аппаратную поддержку на всех современных процессорах. В случае расположения данных на внешних запоминающих устройствах память может быть представлена, например, специальным разделом на жёстком диске (partition) или отдельным файлом на обычном разделе диска. Также существует термин swap (англ. swap, /sw?p/) также означающий виртуальную память (точнее способ её представления), или же означает подкачку данных с диска. Применение механизма виртуальной памяти позволяет: упростить адресацию памяти клиентским программным обеспечением; рационально управлять оперативной памятью компьютера (хранить в ней только активно используемые области памяти); изолировать процессы друг от друга (процесс полагает, что монопольно владеет всей памятью). Страничная организация виртуальной памяти В большинстве современных операционных систем виртуальная память организуется с помощью страничной адресации. Оперативная память делится на страницы: области памяти фиксированной длины (например, 4096 байт), которые являются минимальной единицей выделяемой памяти (то есть даже запрос на 1 байт от приложения приведёт к выделению ему страницы памяти). Процесс обращается к памяти с помощью адреса виртуальной памяти, который содержит в себе номер страницы и смещение внутри страницы. Операционная система преобразует виртуальный адрес в физический, при необходимости подгружая страницу с жёсткого диска в оперативную память. При запросе на выделение памяти операционная система может «сбросить» на жёсткий диск страницы, к которым давно не было обращений. Критические данные (например, код запущенных и работающих программ, код и память ядра системы) обычно находятся в оперативной памяти (исключения существуют, однако они не касаются той части, которая отвечает за использование файла подкачки). В семействе операционных систем Microsoft Windows место для хранения страниц на жёстких дисках должно быть выделено заранее. Пользователь может положиться на автоматический механизм или самостоятельно указать размер области виртуальной памяти на каждом из разделов диска. На указанных разделах операционной системой создаётся файл pagefile.sys требуемого размера, который и хранит «сброшенные» из оперативной памяти страницы. Сегментная организация виртуальной памяти Механизм организации виртуальной памяти, при котором виртуальное пространство делится на части произвольного размера -- сегменты. Этот механизм позволяет, к примеру, разбить данные процесса на логические блоки. Для каждого сегмента, как и для страницы, могут быть назначены права доступа к нему пользователя и его процессов. При загрузке процесса часть сегментов помещается в оперативную память (при этом для каждого из этих сегментов операционная система подыскивает подходящий участок свободной памяти), а часть сегментов размещается в дисковой памяти. Сегменты одной программы могут занимать в оперативной памяти несмежные участки. Во время загрузки система создает таблицу сегментов процесса (аналогичную таблице страниц), в которой для каждого сегмента указывается начальный физический адрес сегмента в оперативной памяти, размер сегмента, правила доступа, признак модификации, признак обращения к данному сегменту за последний интервал времени и некоторая другая информация. Если виртуальные адресные пространства нескольких процессов включают один и тот же сегмент, то в таблицах сегментов этих процессов делаются ссылки на один и тот же участок оперативной памяти, в который данный сегмент загружается в единственном экземпляре. Система с сегментной организацией функционирует аналогично системе со страничной организацией: время от времени происходят прерывания, связанные с отсутствием нужных сегментов в памяти, при необходимости освобождения памяти некоторые сегменты выгружаются, при каждом обращении к оперативной памяти выполняется преобразование виртуального адреса в физический. Кроме того, при обращении к памяти проверяется, разрешен ли доступ требуемого типа к данному сегменту. Виртуальный адрес при сегментной организации памяти может быть представлен парой (g, s), где g -- номер сегмента, а s -- смещение в сегменте. Физический адрес получается путем сложения начального физического адреса сегмента, найденного в таблице сегментов по номеру g, и смещения s. Недостатком данного метода распределения памяти является фрагментация на уровне сегментов и более медленное по сравнению со страничной организацией преобразование адреса. Свопинг Один из механизмов реализации виртуальной памяти, при котором отдельные запущенные процессы (обычно неактивные) перемещаются из ОЗУ на жёсткий диск, освобождая ОЗУ для загрузки других процессов. Основное отличие этого механизма от страничного заключается в том, что процессы перемещаются между ОЗУ и жестким диском целиком, поэтому иногда некоторые процессы могут полностью отсутствовать в ОЗУ. При наступлении условий активизации процесса он возвращается диспетчером памяти в ОЗУ. Существуют различные алгоритмы выбора процессов на загрузку и выгрузку, а также различные способы выделения оперативной и дисковой памяти загружаемому процессу. Фрагментация файла подкачки В процессе работы файл (раздел диска, или файл на разделе) подкачки может стать фрагментированым, то есть непрерывные виртуальные области памяти будут состоять из многочисленных отдельных (разрывных) областей в файле подкачки. При считывании и записи данных страниц много времени будет уходить на перепозиционирование головок жёсткого диска на начало очередной области. Это может привести к падению производительности всей системы. Использование свопинга особенно эффективно, если запущено много интерактивных приложений, которые потребляют большой объем ОЗУ, но при этом практически не занимают процессорное время. Методики эффективной организации файла подкачки Одним из способов выделения места для swap?файла (раздела) является кратное выделение памяти, когда объём этого файла равен объёму оперативной памяти, умноженному на 1, на 2, на 3. Если на компьютере имеется более одного жёсткого диска, то для более быстрого обращения к файлу подкачки его желательно разместить на наименее нагруженном запросами чтения/записи физическом диске. Хорошим выбором будет физический диск, с которого не запускается ОС или приложения. Следует учесть пропускную способность интерфейса жёсткого диска (IDE/SATA), а также характеристики самих дисков. Лучше разместить файл подкачки на диске, который имеет наибольшую скорость чтения/записи. В Windows скорость чтения из небольших разделов больше у FAT32 по сравнению с NTFS[2], однако, благодаря более высокой устойчивости NTFS к сбоям и значительным объёмам современных винчестеров, разделы с FAT32 ныне редко используются. При наличии на компьютере значительного объёма ОЗУ (1 и более гигабайт) и использовании большинства популярных ОС семейств GNU/Linux и MS Windows (кроме Windows Vista/7) можно полностью отключить подкачку. При использовании различных версий Windows Vista также можно отключить подкачку, однако, в силу ресурсоёмкости этой системы, желательно при этом иметь не менее 2 Гб физической памяти. Дополнительные сведения Из файла (раздела) подкачки зачастую можно извлечь конфиденциальную информацию, используемую при работе вычислительной системы. Поэтому при работе с секретными данными обычно производится очистка swap -- например, с помощью утилиты sswap из комплекта secure remove. Алгоритмы определения устаревших страниц При выделении места для новой страницы бывает необходимо удалить какую-либо страницу, в данный момент находящуюся в памяти. Правила замещения страниц служат для принятия решения о том, какую именно страницу следует удалить из памяти. Идеальным кандидатом является «мёртвая» страница, которая больше не потребуется кому-либо (например, относится к завершённому процессу). Если же таких страниц нет в памяти (или их количества недостаточно), используется правило локального или глобального замещения страниц: Правило локального замещения выделяет каждому процессу или группе взаимосвязанных процессов определённое количество страниц. Если процессу нужна новая страница, он должен заменить одну из собственных. Правило глобального замещения страниц позволяет брать страницы любого процесса, используя глобальные критерии выбора. Для реализации данного подхода необходимо выбрать критерий, по которому будет приниматься решение о страницах, хранимых в памяти. Наиболее часто используемые критерии поиска: Less Recently Used. Удаляются те страницы, доступ к которым производился наиболее давно. Считается, что в последующем к таким страницам будет происходить минимум обращений. Last Recently Used. Удаляются недавно освободившиеся страницы. Подразумеваются страницы только что завершившихся процессов. Недостатки В случае расположения данных виртуальной памяти на внешних запоминающих устройствах (например, жестких дисках), как чаще всего и происходит -- доступ к памяти замедляется (по сравнению с оперативными запоминающими устройствами). 4. Анализ Работая над отчётом по операционной системе Windows, я применила имеющиеся знания и получила новые в области программного обеспечения. В процессе работы мною было отмечено, что Windows - оптимальная операционная система для непрофессиональных пользователей. Для более опытных пользователей и профессионалов были созданы другие операционные системы. Windows имеет много возможностей для администрирования и выполнения повседневных задач. Я впервые столкнулась такими утилитами, как исправление ошибок локального диска, брандмауэром, дефрагментатором диска. Хотя все они всегда оставались на виду - в меню Пуск. Кроме того, я познакомилась с программой WordPad. Windows содержит множество программ и утилит, позволяющих оптимизировать процесс работы с ней. Но в силу того, что большинство пользователей не являются профессионалами, обладающими обширными знаниями, они не используются. В ОС Windows распространены пользовательские программы для выполнения различных прикладных задач. Но поле их деятельности ограничено, поэтому профессиональные пользователи предпочитают использовать другие специализированные программы. 5. Вывод Операционная система Windows - оптимальная среда для работы большинства пользователей. Она получила своё распространении благодаря широкому охвату полей деятельности потенциальных пользователей и простоте освоения. Наиболее удобной и используемой являлась версия Windows XP. Даже после создания новой версии Vista и её широкой рекламе, она не сдала своих позиций, поскольку новая ОС не отличалась высокой производительностью и требовала неоправданно много сетевых ресурсов. На смену Vista пришла новая система Windows 7, которая сочетала в себе функциональность XP и оформление и новые возможности Vista. Я, как пользователь версии 7 могу похвально о ней отозваться и только в её пользу провести сравнение с ранее мне известными версиями Windows. Я считаю, что для компьютеров позже 2008 года производства она является идеальной, т. к. их ресурсы позволяют использовать новые возможности системы, созданные для повышения функциональности, производительности и т. д. Для более старых компьютеров оптимальной является, несомненно, Windows XP. Поскольку компания Microsoft долго не радовала пользователей новыми версиями, а разрабатывала улучшения для существующей, XP сумела завоевать много сторонников.
Страницы: 1, 2
|