Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Demkin_otvety_New (1).doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
2.21 Mб
Скачать
  1. Что такое фрагментация? Какие виды фрагментации бывают? Какие виды фрагментации проявляются в 3 основных схемах размещения файлов?

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

Фрагментация дискового пространства

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

Фрагментация данных

Возникает в результате фрагментации дискового пространства: так как на диске отсутствуют последовательные свободные блоки, то новые файлы невозможно записать целиком в одном месте, их приходится делить на фрагменты и записывать в разных частях диска, что замедляет чтение этих файлов и снижает общую производительность файловой системы. Более того: во многих файловых системах (например FAT32) начало файла записывается в начало кластера, следовательно, если сам файл или его часть по объёму меньше размера кластера, то оставшееся место в кластере остается неиспользованным. Поэтому фрагментированность диска обратно пропорциональна эффективности использования его пространства.

Виды фрагментации:

фрагментация отдельных файлов -- большой файл занимает блоки, разбросанные по файловой системе;

фрагментация связанных файлов -- файлы, читающиеся вместе, разбросаны по файловой системе;

фрагментация свободного места -- свободные блоки разбросаны по файловой системе.

  1. Какой максимальный адресуемый объем памяти для программы на 32-разрядной архитектуре? Почему объем доступной виртуальной памяти меньше максимального (куда девается разница)? На какие основные части делится виртуальная память работающей программы?

А дресуемый объём памяти. Объём адресуемой внешней памяти характеризуется шириной внешней шины адреса.

Уже достаточно давно пользователи столкнулись с проблемой размеще­ния в основной памяти программ, размер которых превышал имеющуюся в наличии свободную память. Решением этой проблемы было использование внешней памяти (дискового пространства). Программы разбивались на части (оверлеи), которые хранились в ОП и на диске. Перемещение их между ос­новной памятью и диском осуществлялось средствами ОС. Однако разбиением программы на части должен был заниматься программист. Это приводило к увеличению трудоемкости програм­мирования и к неэффективному использованию памяти.

Развитие методов организации вычислительного процесса в этом на­правлении привело к появлению метода, известного под названием вирту­альная память. Виртуальным называется такой ресурс, который для пользо­вателя (пользовательской программы) представляется обладающим свойст­вами, которыми он в действительности не обладает. Так, например, пользова­телю может быть предоставлена виртуальная оперативная память, размер ко­торой превосходит всю имеющуюся в системе реальную ОП. Пользователь пишет программы так, как будто в его распоряжении имеется однородная (одноуровневая) оперативная память большого объема, но в действительно­сти все данные, используемые программой, хранятся на нескольких разно­родных запоминающих устройствах, обычно в ОП и на дисках, и при необхо­димости частями перемещаются между ними.

Таким образом, виртуальная память — это совокупность программно-аппаратных средств, позволяющих пользователям писать программы, размер которых превосходит имеющуюся ОП. Для этого виртуальная память (ВП)

решает следующие задачи:

- размещает данные в запоминающих устройствах разного типа, на­пример, часть программы в ОП, а часть на диске;

- перемещает по мере необходимости данные между запоминающими устройствами разного типа, например, подгружает нужную часть программы

с диска в ОП;

- преобразует виртуальные адреса в физические.

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

Наиболее распространенными реализациями виртуальной памяти явля­ются страничное, сегментное и странично-сегментное распределение памяти, атаюке свопинг.

Страничное распределение

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

Вся оперативная память машины также делится на части такого же раз­мера, называемые физическими страницами (или блоками).

Размер страницы обычно выбирается равным степени двойки: 512, 1024 и т.д., это позволяет упростить механизм преобразования адресов.

При загрузке процесса часть его виртуальных страниц помещается в оперативную память, а остальные — на диск. Смежные виртуальные страни­цы необязательно располагаются в смежных физических страницах. При за­грузке операционная система создает для каждого процесса информацион­ную структуру — таблицу страниц, в которой устанавливается соответствие между номерами виртуальных и физических страниц для страниц, загружен­ных в оперативную память, или делается отметка о том, что виртуальная страница выгружена на диск (ВЗУ). Кроме того, в таблице страниц содержит­ся управляющая информация, такая как признак модификации страницы, признак невыгружаемое™ (выгрузка некоторых страниц может быть запре­щена), признак обращения к странице (используется для подсчета числа об­ращений за определенный период времени) и другие данные, формируемые и используемые механизмом виртуальной памяти.

При активизации очередного процесса в специальный регистр процессо­ра загружается адрес таблицы страниц данного процесса.

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

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

- дольше всего не использовавшаяся страница;

- первая попавшаяся страница;

- страница, к которой в последнее время было меньше всего обраще­ний.

На 32-х разрядной архитектуре максимальный адресуемый объём виртуальной памяти – 4 Гб. (2^32)

Файл подкачки - файл на жестком диске, используемый Windows для хранения данных, которые не помещаются в оперативной памяти.

Виртуальная память - это оперативная память вместе с файлом подкачки.

Объём виртуальной памяти складывается из объёма оперативной памяти и области подкачки (swap-а) именно поэтому объем доступной виртуальной памяти меньше максимального.

Методики эффективной организации файла подкачки

  • Одним из способов выделения места для swap‐файла (раздела) является кратное выделение памяти, когда объём этого файла равен объёму оперативной памяти, умноженному на 1, на 2, на 3.

  • Если на компьютере имеется более одного жёсткого диска, то для более быстрого обращения к файлу подкачки его желательно разместить на наименее нагруженном запросами чтения/записи физическом диске. Хорошим выбором будет физический диск, с которого не запускается ОС или приложения.

  • Следует учесть пропускную способность интерфейса жёсткого диска (IDE/SATA), а также характеристики самих дисков. Лучше разместить файл подкачки на диске, который имеет наибольшую скорость чтения/записи.

  • В Windows скорость чтения из небольших разделов больше у FAT32 по сравнению с NTFS[2], однако, благодаря более высокой устойчивости NTFS к сбоям и значительным объёмам современных винчестеров, разделы с FAT32 ныне редко используются.

  • При наличии на компьютере значительного объёма ОЗУ (1 и более гигабайт) и использовании большинства популярных ОС семейств GNU/Linux и MS Windows (кроме Windows Vista/7) можно полностью отключить подкачку. При использовании различных версий Windows Vista также можно отключить подкачку, однако, в силу ресурсоёмкости этой системы, желательно при этом иметь не менее 2 Гб физической памяти.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]