Организация адресного пространства Windows NT 4.0/2000

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    2,15 Мб
  • Опубликовано:
    2012-07-13
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Организация адресного пространства Windows NT 4.0/2000

Министерство образования и науки Российской Федерации

ГОУ ВПО “Магнитогорский Государственный Технический Универститет им Г. И. Носова”

Институт Энергетики и Автоматки









Курсовая работа

по дисциплине Теория вычислительных процессов

на тему “Организация адресного пространства Windows NT 4.0 / 2000”


Выполнил: студент гр. АВ-08-2

Забродский А.В.

Проверил   Калитаев А.Н.



г. Магнитогорск, 2011 год

Оглавление



Введение

Виртуальная память

Организация адресного пространства Windows NT4/2000

Файл подкачки

Технология PAE

Application Memory Tuning - /3GB switch

Address Windowing Extensions

Производительность, архитектурные ограничения, RAM

64-битные процессоры и адресные пространства

Практическая часть

Логика программы

Заключение

Список используемых источников

Введение


Компьютерная память является фундаментальным компонентом всех современных компьютеров и обеспечивает одну из важнейших его функций - хранение информации.

Первичная память (или основная память, или внутренняя память), зачастую называемая просто памятью, - единственная, доступная процессору напрямую: ЦПУ последовательно считывает и исполняет хранимые в ней инструкции; любые активно обрабатываемые данные так же хранятся в оперативное памяти.


Как видно из диаграммы, традиционно используется еще 2 подуровня первичной памяти, помимо оперативной большой емкости:

●          регистры процессора, расположенные внутри ЦПУ. Каждый регистр вмещает одно слово (обычно 32 или 64 бита);

●          кэш-память процессора, выступающая в роли буфера между сверхбыстрыми регистрами и значительно более медленным ОЗУ.

Оперативная память соединена с процессором через шину памяти, состоящую из двух компонентов: шина адреса и шина данных. ЦПУ сперва обращается к шине адреса, посылая число, называемое адресом памяти и определяющее расположение требуемых данных в ОЗУ. Затем процессор непосредственно считывает или записывает данные через шину данных. Так же в архитектуре может присутствовать устройство управления памятью, рассчитывающее реальный физический адрес и, среди прочего, обеспечивающее возможность применения виртуальной памяти.

 


Виртуальная память

виртуальная память адресный процессор ram

Виртуальная память - технология управления памятью, разработанная для многозадачных систем. Эта техника виртуализирует различные аппаратные устройства памяти (например, ОЗУ, жесткие диски) и позволяет программе быть спроектированной так, что:

●          для программы существует только одно “виртуальное” устройство, работающее как ОЗУ;

●          программа по умолчанию имеет исключительный доступ к этому ОЗУ как к непрерывному рабочему адресному пространству.

Системы с виртуальной памятью с точки зрения разработчика ПО обладают рядом преимуществ:

●          скрытие фрагментации;

●          упрощенная адресация памяти;

●          передача ядру ОС функций управления иерархией памяти.

В большинстве современных операционных систем, включая Windows, прикладные программы и многие системные процессы всегда обращаются к памяти, используя виртуальный адрес, автоматически преобразуемый в реальный на аппаратном уровне. Для осуществления этого преобразования часть ОС, отвечающая за управления виртуальной памятью, создает, хранит и обновляет таблицы преобразования виртуального адреса в физический. Этот компонент системы и сами таблицы располагаются в части оперативной памяти, недоступной для виртуализации.

Важным аспектом является то, что виртуальная память используется всегда, независимо от количества необходимой всем запущенным процессам оперативной памяти.

 

Организация адресного пространства Windows NT4/2000

 

Адресное пространство и процессы

Любой процесс, выполняемый в 32-битной версии Windows, получает в свое распоряжение набор виртуальных адресов (виртуальное адресное пространство) в пределах от 0 до 4 294 967 295 байт (432-1 = 4 ГБ) вне зависимости от реального количества установленной оперативной памяти.

В стандартной конфигурации системы по умолчанию 2 гигабайта этого пространства виртуальных адресов выделяются на непосредственные нужды процесса, другие 2 гигабайта - для общего использования всеми процессами и операционной системой. Обычно, “легкие” приложения вроде Блокнота, текстового процессора Microsoft Word, Adobe Reader используют только собственные 2 гигабайта.

С реальными страницами в физической памяти или файле подкачки ассоциируется только та часть адресного пространства, которая непосредственно используется процессом.

 


Файл подкачки

Физическая память - ограниченный ресурс, в то время как память виртуальная, с небольшим преувеличением - ресурс бесконечный: в системе одновременно могут быть запущены сотни процессов, каждый со своим собственным четырехгигабайтным виртуальным адресным пространством, два гигабайта которого исключительно самому процессу. Когда объем используемой всеми процессами памяти превышает количество доступной RAM, операционная система выгружает страницы (части размером 4 КБ) некоторых виртуальных адресных пространств на жесткий диск компьютера, освобождая тем самым оперативную память. Эти выгруженные страницы хранятся в одном или нескольких файлах с именами pagefile.sys на жестком диске (по одному на раздел).

Распространенной рекомендацией по выбору размера файла подкачки является объем в полтора раза превышающий количество установленной RAM-памяти. Это верно лишь для систем с малым объемом физической памяти. Например, не имеет особого смысла выделять 96 ГБ объема жесткого диска компьютера с 64 ГБ оперативной памяти под файл подкачки. Причиной же установки такого большого количества оперативной памяти является желание избежать использования файла подкачки весьма негативно влияющего на производительность.

Аргумент о возможности сохранения дампа всей памяти в пользу размера файла подкачки равного объему оперативной памяти является заблуждением по следующим причинам:

●          дамп всей памяти редко помогает в диагностике причины неисправности. Обычно памяти ядра или другого небольшого участка достаточно;

●          для старых версий Windows, работающих с объемами оперативной памяти больше 2 ГБ, полный дамп памяти невозможен;

●          некоторые компьютеры имеют большой объем памяти и относительно небольшой жесткий диск. Резервирование существенной части свободного места под файл подкачки для таких систем неоправданно.

Если максимальный и минимальный размеры файла подкачки не совпадают, изначально система создает файл минимального размера, увеличивающийся в объеме до максимального по мере необходимости. Для большинства систем это означает, что файл подкачки будет сильно фрагментирован, что повлечет за собой еще большее падение производительности. Установка одинаковых минимального и максимального размеров может не помочь полностью избавиться от фрагментации, но существенно ее снизит.

При активной выгрузке страниц в файл подкачки и загрузки из него, для лучшей производительности необходимо создать файл подкачки на том разделе диска, который используется меньше остальных, предварительно дефрагментировав его. Это гарантирует последовательность файла подкачки на диске, минимизацию ресурсных затрат на его чтение/запись. Несмотря на это, лучшим способом поднятия производительности является увеличения объема оперативной памяти.

 

Технология PAE

Address Extension (PAE) - режим работы встроенного блока управления памятью x86-совместимых процессоров, в котором используются 64-битные элементы таблиц страниц (из которых для адресации используются только 36 бит), c помощью которых процессор может адресовать 64 ГБ физической памяти, вместо 4 ГБ, адресуемых при использовании 32-разрядных таблиц. Также, в новых моделях процессоров в PAE-режиме старший бит элемента таблицы страниц отвечает за запрет исполнения кода в странице. Таким образом виртуальные адреса могут быть спроецированы в физические, находящиеся за границей в 4 ГБ.

Использование этой технологии не изменяет размеров виртуального адресного пространства процесса (оно по-прежнему остается равным 4 ГБ), но позволяет большему количеству виртуальных адресных пространств находится в оперативной памяти.

Существует утверждение о том, что активация PAE-режима негативно сказывается на производительности процессора. Действительно, некоторая документация подтверждает падение производительности при активации режима, но не называет конкретных цифр; вероятно, что они незначительны. К тому же, если частота процессора не является узким местом в конфигурации ПК, разница не будет заметна или вряд ли измерима (например, между 2.0 МГц и 2.1 МГц). К слову, многопроцессорность или многоядерность системы - тоже негативный фактор в производительности каждого из процессоров или ядер; тем не менее, система в целом работает быстрее, но не в несколько раза. С другой стороны, в большинстве ПК слабейшим местом является производительность жестких дисков, и размещение виртуальных адресных пространств в добавленной оперативной памяти наверняка компенсирует названные выше затраты процессора.

Стоит учесть, что с активацией PAE-режима, 32-битная система не всегда становится способной к адресации 4 ГБ физической памяти. Это связано с определенными ограничениями аппаратной архитектуры (подробнее - <#"551338.files/image003.gif">

Офицерский режим:

1.         Создание “мьютекса офицера”;

3.         Ожидание первого солдата.

Режим рядового:

1.         Подключения к соседу слева. Им может быть как офицер, так и рядовой.

2.         Старт потока ожидания команды “открыть огонь”;

3.         Старт потока ожидания следующего рядового.

При получении команды “открыть огонь”, рядовой запоминает свой номер, увеличивает его на единицу и, если не является крайним, передает дальше.


Дойдя до последнего солдата в цепочке, номер запоминается крайним рядовым, уменьшается на единицу, и начинается его передача обратно. Получивший номер второй раз солдат запоминает его и начинает вести обратный отсчет. Отсчет ведется в секундах, начальное кол

ичество секунд рассчитывается по формуле: полученный номер + 2.


Когда счет доходит до 0, рядовой производит выстрел.

 


Заключение

В данной работе мною рассмотрены основы виртуализации памяти, некоторые аспекты реализации виртуальной памяти в Windows NT4/2000 и их ограничения, а так же способы их обхода. Я постарался уделить особое внимание практическим аспектам (увеличение производительности; обход ограничения четырех гигабайт и т. п.) наряду с их теоретическим объяснением.

В практической части решена задача Майхилла о стрелкàх, получен опыт синхронизации Windows-приложений и их потоков.

 


Список используемых источников


1 Virtual memory // Wikipedia, the free encyclopedia [Электронный ресурс] / Wikimedia Foundation - Электорн. дан. - 2001-2011 - Режим доступа: http://en.wikipedia<http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FVirtual_memory&sa=D&sntz=1&usg=AFQjCNE98yo-7XPNds2foNAI36c-x8fLUw>org <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FVirtual_memory&sa=D&sntz=1&usg=AFQjCNE98yo-7XPNds2foNAI36c-x8fLUw><http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FVirtual_memory&sa=D&sntz=1&usg=AFQjCNE98yo-7XPNds2foNAI36c-x8fLUw>wiki <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FVirtual_memory&sa=D&sntz=1&usg=AFQjCNE98yo-7XPNds2foNAI36c-x8fLUw><http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FVirtual_memory&sa=D&sntz=1&usg=AFQjCNE98yo-7XPNds2foNAI36c-x8fLUw>Virtual <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FVirtual_memory&sa=D&sntz=1&usg=AFQjCNE98yo-7XPNds2foNAI36c-x8fLUw><http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FVirtual_memory&sa=D&sntz=1&usg=AFQjCNE98yo-7XPNds2foNAI36c-x8fLUw>memory <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FVirtual_memory&sa=D&sntz=1&usg=AFQjCNE98yo-7XPNds2foNAI36c-x8fLUw>, свободый. - Загл. с экрана;

Computer Data Storage // Wikipedia, the free encyclopedia [Электронный ресурс] / Wikimedia Foundation - Электорн. дан. - 2001-2011 - Режим доступа: <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ>:// <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ>en <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ><http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ>wikipedia <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ><http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ>org <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ><http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ>wiki<http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ>Computer <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ><http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ>data <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ><http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ>storage <http://www.google.com/url?q=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_data_storage&sa=D&sntz=1&usg=AFQjCNF7AZFP0U3Cj9G8PN4ht4gA4Oc-BQ>, свободый. - Загл. с экрана;

General Windows Information: RAM, Virtual Memory, PageFile and all that stuff // Bruce Sanderson - Электорн. дан. - 2010 - Режим доступа: <http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng>:// <http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng>members <http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng><http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng>shaw <http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng><http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng>ca <http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng><http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng>bsanders <http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng><http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng>WindowsGeneralWeb<http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng>RAMVirtualMemoryPageFileEtc <http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng><http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng><http://www.google.com/url?q=http%3A%2F%2Fmembers.shaw.ca%2Fbsanders%2FWindowsGeneralWeb%2FRAMVirtualMemoryPageFileEtc.htm&sa=D&sntz=1&usg=AFQjCNHTkDi_U_nD_CNbGjMTDgFU25Y4ng>, свободный. - Загл. с экрана.

Похожие работы на - Организация адресного пространства Windows NT 4.0/2000

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!