Добавил:
Developer Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Экзамен Павлов.docx
Скачиваний:
63
Добавлен:
17.08.2022
Размер:
786.12 Кб
Скачать
  1. Понятие адресного пространства, правление свободной памятью.

Адресное пространство -это совокупность всех допустимых адресов каких-либо объектов вычислительной системы — ячеек памятисекторов диска, узлов сети и т. п., которые могут быть использованы для доступа к этим объектам при определенном режиме работы (состоянии системы).

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

Важной частью адресного пространства являются интервалы адресов памяти, к которым процесс имеет право доступа, как, например, 08048000–0804c000. Такие интервалы разрешенных адресов называются областями памяти (memory area). С помощью ядра процесс может динамически добавлять и удалять области памяти своего адресного пространства.

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

Виртуальная память (также известная как «файл подкачки») — это, по сути, часть свободного места на вашем жестком диске или твердотельном накопителе, выделяемая ОС для использования в качестве ОЗУ, когда в вашем обычном ОЗУ мало места для поддержания работы всех программ. Она предоставляет собой дополнительное "фиктивное" ОЗУ, которое дает возможность программам работать дальше, но поскольку доступ к HDD и SSD и их производительность ограничены в сравнении с реальным ОЗУ, то при активном использовании виртуальной памяти обычно наблюдается значительная потеря производительности.

Физическая память - это, понятно, та память, где физически хранятся данные программ. Когда-то давно, во времена DOS и первых версий UNIX в системе могла быть активной одновременно только одна программа, каждая считала себя первой и единственной и отсчитывала память с первых же ячеек памяти по физическим адресам. Однако потом появилась потребность в многозадачности, когда несколько программ работают параллельно, и возникла проблема - теперь память нужно было как-то делить между разными программами, причем как-то сохранить совместимость с программами, которые считают себя единственными занимающими память, потому что при многозадачности они просто писали бы свои данные в одни и те же ячейки физической памяти, т.е. мешали бы друг другу выполнять свою работу. 

Методы распределения памяти с использования дискового пространства:

  1. Страничное распределение виртуальной памяти

Адресное пространство процесса делится на страницы фиксированных разделов. Физическая память в системе тоже делится на страницы, аналогичные виртуальной памяти. Для каждого процесса ОС создает служебную структуру - таблицу страниц (дает однозначное отображение виртуальных страниц в физические).

Достоинства:

  • нет фрагментации

  • память используется оптимально

  • механизм не требует никаких действий со стороны программы

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

Недостатки:

  • при малых страницах высокие расходы при хранении таблицы страниц

  • нет возможности указать тип содержащейся информации, поэтому нельзя установить права доступа.