Реферат: Память. Виды памяти - текст реферата. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Реферат

Память. Виды памяти

Банк рефератов / Информатика, информационные технологии

Рубрики  Рубрики реферат банка

закрыть
Категория: Реферат
Язык реферата: Русский
Дата добавления:   
 
Скачать
Microsoft Word, 740 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникального реферата

Узнайте стоимость написания уникальной работы

1. Для чего нужна память? Какие бывают виды памяти? (Глава, необходимая для понятия предназначения памяти вообще) Компактная микроэлектронная “память” широко применяетс я в современной аппаратуре самого различного назначения. Но тем не менее разговор о классификации памяти, её видах следует начать с определения места и роли, отведённой памяти в ЭВМ. Память является одной из самых глав ных функциональных частей машины, предназначенной для записи, хранения и выдачи команд и обрабатываемых данных. Следует сказать, что команды и д анные поступают в ЭВМ через устройство ввода, на выходе которого они пол учают форму кодовых комбинаций 1 и 0. Основная память как правило состоит и з запоминающих устройств двух видов оперативного (ОЗУ) и постоянного (ПЗ У). ОЗУ предназначено для хранения переменной информации; он о допускает изменение своего содержимого в ходе выполнения вычислител ьного процесса. Таким образом, процессор берёт из ОЗУ код команды и, после обработки каких-либо данных, результат обратно помещается в ОЗУ. Причем возможно размещение в ОЗУ новых данных на месте прежних, которые при это м перестают существовать. В ячейках происходит стирание старой информа ции и запись туда новой. Из этого видно, что ОЗУ является очень гибкой стру ктурой и обладает возможностью перезаписывать информацию в свои ячейк и неограниченное количество раз по ходу выполнения программы. Поэтому О ЗУ играет значительную роль в ходе формиро вания виртуальных адресов . ПЗУ содержит такой вид информации, которая не должна изме няться в ходе выполнения процессором программы. Такую информацию соста вляют стандартные подпрограммы, табличные данные, коды физических конс тант и постоянных коэффициентов. Эта информация заносится в ПЗУ предвар ительно, и блокируется путем пережигания легкоплавких металлических п еремычек в структуре ПЗУ. В ходе работы процессора эта информация может только считываться. Таким образом ПЗУ работает только в режимах хранени я и считывания. Из приведённых выше характеристик видно, что функциональ ные возможности ОЗУ шире чем ПЗУ: оперативное запоминающее устройство м ожет работать в качестве постоянного, то есть в режиме многократного счи тывания однократно записанной информации, а ПЗУ не может быть использовано в качестве ОЗУ. Это заключение, в свою о чередь, приводит к выводу, что ПЗУ не учас твует в процессе формирования виртуальной памяти. Но бесспорно, ПЗУ имее т свои достоинства, например сохранять информацию при сбоях, отключении питания (свойство энергонезависимости). Для обеспечения надежной работ ы ЭВМ при отказах питания нередко ПЗУ используется в качестве памяти про грамм. В таком случае программа заранее “зашивается” в ПЗУ. 2. Микросхемы памяти. (Где, находится информация при работе компьютера?) Как было сказано ранее, в современных компьютерах использ уется так называемая электронная память. Для построения ОЗУ, ПЗУ, регист ровых ЗУ в настоящее время широко применяют полупроводниковые интегра льные микросхемы, которые изготавливают по специальной полупроводнико вой технологии с применением интегральных схем (ИС) и больших интегральн ых схем (БИС) на основе кремния с высокой степенью интеграции. Рис.1 Рис.2 На рисунках 1 и 2 изображены микросхемы памяти как функцион альных узлов: рис. 1 ОЗУ, рис. 2 ПЗУ. Основной составной частью микросхемы ОЗУ является массив элементов памяти, объединённых в матрицу накопителя. Эл емент памяти (ЭП) может хранить один бит информации. Каждый ЭП обязательно имеет свой адрес. Для обращения к ЭП нео бходимо его “выбрать” с помощью кода адреса, сигналы которого подводят к соответствующим выводам микросхемы. ПЗУ построено аналогично, а функци и ЭП в микросхемах ПЗУ выполняют перемычки в виде проводников. Это был краткий экскурс в так называемые “ресурсы” машинн ой памяти, необходимый для более глубокого понимания как функционирова ния компьютера, так и основной темы проекта. 3. Виртуальная память: Что это такое? Для чего это нужно? (Рассматривает вопрос организации ВП) Итак, мы вплотную подошли к проблеме вирту альной памяти : что это такое и для чего это нужно? Дело в том , что с развитием и появлением новых компьютерных технологий, машины нес омненно преобразились в лучшую сторону: в мире профессиональных програ ммистов уже не существует понятия “ОЗУ на ферритовых сердечниках” или “ накопителей на магнитных лентах”. Что и говорить, с изобретением персона льного компьютера, даже простой непрофессиональный пользователь получ ил возможность использовать ПК для собственных целей и нужд. Фирмой Intel™ и другими производителями вычислительной техники были выпущены компьют еры достаточно простые в обращении (по сравнению с огромными ламповыми IBM1401 или “Унивак П”). Компьютеры нового поколения* — — — — * Фирмой Texas Instruments ® выпущена мо дель 486DX475Mhz. имели процессоры Intel™ 80386, 80486, с 16ти и 32х разрядными шинами, огромным быстродейс твием (2566Mhz). Эти персоналки большой шаг вперед в развитии компьютерных тех нологий. Вместе с этим у пользователя появилась тенденция “оседлать” бы струю машину заставить её делать как можно больше. Как экономить машинно е время и в то же время производить больше? Ответ на этот вопрос был найден посредством организации мультипрограммной работы ЭВМ. Этот метод был признан очень удобным, так как при органи зации мультипрограммного цикла: 1. Машина не простаивала зря: при одновременном выполнении нескольких пр ограмм и команд в работе процессора появлялась новая функция анализ и ра спределение машинного времени, отведённого на выполнение каждой прогр аммы; 2. За каждый машинный такт (вследствие с очередностью или уровнем приорит ета, общим временем, требующимся на выполнения команды) выполнялась одна или несколько команд. Действительно, метод мультипрограммной работы оказался потрясающе эфф ективным, но для его успешной реализации требовалось очень много операт ивной памяти, так как всякая программа, которая может быть вызвана впосл едствии, оставляет небольшую (а иногда и очень большую!) свою часть резиде нтной в оперативной памяти. Возможны два варианта: сохранить большую час ть ОЗУ свободной, по надобности загружая в ОП ту или иную программу, требу ющую непосредственного выполнения и, после этого, отработав с данной про граммой, отчистить содержимое ОП для загрузки новой программы. Второй ва риант состоит в том, чтобы сразу загрузить в ОП Машины все требующиеся пр ограммы, таким образом заполнив её до основания и потом дать процессору команду на выполнение. Первый вариант не является примером мультипрогр аммной организации. Второй вариант является. Итак, несомненно, второй ва риант наиболее подходящий, но здесь мы сталкиваемся с проблемой нехватки оперативной памяти . В современных ком пьютерах емкость ОЗУ (аналог RAM) не превышает 1MB, 384KB из которых зарезервирова ны под ПЗУ, ППЗУ, BIOS... Итого остаётся 640KB “чистой” оперативной памяти но в ней поместятся две три программы и не более. Хорошо видно, что внедрение более рационального решения сталкивается с единственной проблемой памяти. Но можно ли каким-то образом решить эту п роблему? Именно на этом этапе на помощь пользователю приходит виртуальная память, которая позволяет модифициро вать ресурсы памяти, сделать объём оперативной памяти намного больше, дл я того чтобы пользователь, поместив туда как можно больше программ, реал ьно сэкономил время и повысил эффективность своего труда. “Открытие” ви ртуальной памяти (далее ВП) внесло огромную контрибуцию в развитие совре менных технологий, облегчило работу как профессионального программист а, так и обычного пользователя, обеспечивая процесс более эффективного р ешения задач на ЭВМ. Возникает много вопросов: как устроена ВП, как она фун кционирует, каким образом при использовании ВП ресурсы обычной физичес кой памяти “увеличиваются” во много раз, используются ли для этой цели к акие-либо “подручные” средства (устройства)..? Действительно, возникает м ножество интереснейших вопросов, ответы на которые будут даны в следующ их параграфах. Почему виртуальная память также носит на звание математической, кажущейся ? Как мож но реорганизовать ОЗУ таким образом, чтобы её объём удвоился, утроился? П реимущество ВП состоит в том, что объем ОЗУ не может быть увеличено ни практически, ни теоретически. (Это попросту не возможно ни какими средствами нельзя оптимизировать или преобразовать ячейки памяти, для того, чтобы, скажем, помещать туда два бита информации вместо одного). Но как же построена ВП? Дело в том, что при работе машины, исп ользующей виртуальную память, обязательно используется Внешнее Запоми нающее Устройство (ВЗУ), которое обычно представляет собой накопитель на гибком магнитном диске или жестком диске типа “винчестер”. (Последнее у стройство используется чаще). Действительно, использование виртуальной памяти обязательно подразум евает обращение к диску так как при разработке и внедрению систем с таки м методом организации памяти, было представлено, что ячейки оперативной памяти и памяти на диске будут представлять собой едино е целое . По своей сути ВП не такая уж сложная структура нап ротив, недостаток оперативной памяти компенсируется наличием свободно го дискового пространства которое задействовано в роли ОП. Необходимо понимать, что часть программ, которые мы не с могли разместить в ОП из-за её нехватки, (см. нач. § 3) теперь будут размещены на диске и это будет эквивалентно размещен ию в оперативной памяти. Виртуальная память представляе т собой совокупность всех ячеек памяти оперативной и внешней, имеющих ск возную нумерацию от нуля до предельного значения адреса. Использование ВЗУ очень удобно, так как в это время пользователь опериру ет с общим адресным пространством и ему бе зразлично какая физическая память при этом используется внешняя или вн утренняя. При работе ВП всего лишь подразумевается различие между вирту альными адресами и физическими. Интересно проследить за формированием адресного пространства при использовании ВП. Как же адресное поле может быть увеличено? Дело в том, что при работе машины с ВП, используются методы страничной и сегментной организации памяти, смысл которых рассмотрен в следующих параграфах. 4. Виртуальная Память при страничной организации (Страничная организация ВП, формирование виртуальных адресов) Как было сказано ранее, для более эффективного функционир ования ЭВМ используется динамический мет од распределения памяти. Это значит, что процесс распределения памяти ос уществляется непосредственно в ходе решения задачи с учетом предыдуще го состояния машины и описания массивов данных. Например процесс компил яции с языков высокого уровня отводит определённую область памяти под к аждую переменную, массив, структуру. В настоящее время процесс динамичес кого распределения памяти осуществляется методом отно сительной адресации (с использованием виртуальных адрес ов), в виде страничной и сегментной организации памяти. Рассмотрим первую форму организации ВП при её страничной организации (СО). Нужно отметить очень важный пункт, что при СО, все ресурс ы памяти, как оперативной, так и внешней представляются для пользователя единым целым. Пользователь работает с общим адресным пространством и не задумывается какая память при этом ис пользуется: оперативная или внешняя, а эта общая память носит название в иртуальной (моделируемой). Виртуальная память разбивается на страницы, к оторые содержат определённое фиксированное количество ячеек памяти. П ри этом одна страница математической памяти не может быть больше или мен ьше других все страницы должны быть одинаковы по количеству ячеек. Типич ные размеры страниц 256, 512, 1024, 2048 Байт и более (числа кратные 256). Рис.3 Так называемая физическая память, которая включает в себя ОЗУ и ВЗУ так же разбивается на страницы объем которых должен соответст вовать размерам ВП, иначе, из-за неправильности размеров, ячейки физичес кой памяти не будут совпадать с ячейками ВП, что приведёт к путанице и “за висанию” системы. На рисунке 3 изображен способ формирования страниц ВП из физической памяти. Ячейки ОЗУ разбиваются на страницы одинакового об ъема (например 1024 Байт), каждая из которых может содержать какую-либо инфор мацию. В ВЗУ, представленным накопителем типа “винчестер”, процессор рез ервирует определённые сектора с которыми впоследствии будет работать ВП. Всё это складывается вместе и представляет собой единую структуру ВП . При работе пользователя, одна из его программ может наход ится в ОП (реально в микросхеме на рис. 3), а другая в ВЗУ (на диске). При этом со вершенно не заметно, что пользователь работает с матема тическими адресами, поэтому в процессе операций процессо р может обращаться только к ОП (или СОП Сверхоперативная память) в случае выполнения первой программы, или к диску, если выполняется вторая програ мма. Но при работе второй программы, операционная система должна организ овать перепись той страницы, где находится вторая программа, в Оперативную Память . Пользователь не задумывается над этим, но в этот момент ст раница ВП с диска, как бы накладывается на свободную* страницу ОП. Таким об разом, при выполнении даже одной программы, различные части этой програм мы могут находится в ОП (СОП) или на магнитных носителях, а одни и те же ячей ки общей физической памяти могут называться различными адресами. Адресная часть команды в пользовательских программах до лжна содержать адрес математической страницы и адрес слова, которое дол жно находится в этой странице (искомое слово). При распределении памяти м ежду различными частями программы, процессор берёт на себя функции прео бразования адреса, находящегося в математической странице, в адрес физи ческой страницы. По этому адресу располагается требуемое слово, которое может хранится как в ОП, так и во внешней памяти. Совокупность адреса физи ческой страницы и адреса слова внутри этой страницы образует физически й адрес операнда. Соответствие между номерами физических и математически х страниц устанавливается специальной программой операционной систем ы, которая носит название менеджер (диспетчер) памяти. Как правило эта про грамма является резидентной и управляет всеми ресурсами машинной памя ти. Для 286х процессоров используют менеджер himem.sys , а для 386х и 486х машин emm386.sys и qemm.sys С помощью таких программ формируется так называ емая страничная таблица, которая помещается в сверхоперативную память, обладающую наибольшим быстродействием. Эта таблица является неотъемле мой частью организации ВП с СО, так как в ней содержится вся информация о с траницах, на данный момент находящихся в памяти. В страничной таблице на ходятся адреса программ, уровень их приоритета и т. д. Содержание странич ной таблицы будет подробно описано ниже. Рассмотрим пример преобразования виртуальных адресов в физические. Пусть виртуальная память содержит 8 страниц по 2048 Байт в каждо й странице. Для компактности примера, предположим, что физическая память имеет ёмкость 4 страницы (по 2 Кб соответственно). При обращении к физическ ой памяти для проведения каких 14ти битовый виртуальный адрес 3х битовый 11ти битовый адрес в пр еделах выбранной ВС номер ВС Рис.4 — — — — — * Эта страница необязательно может быть свободной. Подроб ности о стратегиях замены (своппирования) страниц см. в § 8 либо операций (записи или выборки операндов, выполнения к оманды или осуществления передачи управления), программой формируется 14 ти битовый адрес, соответствующий виртуальному адресу, который определ яет ячейки в промежутке от 0 до 16 Кб 1. В данном примере 14ти битовый адрес как бы разбивается на 3х битовый номер виртуальной страницы и 11ти битовый вну три той страницы, номер которой определён тем самым 3х битовым номером. Пр имер кода адреса при страничной организа ции памяти показан на рисунке 4. А связь между номерами страниц и самими ви ртуальными адресами показана на рисунке 5. Итак, рассмотрим рисунок 4: 3х би товый номер виртуальной страницы 110 (в binформате) соответствует номерам 6 и 6h (dec и hexформаты) необходимо помнить, что все операции в машине производятся в шестнадцатеричном формате. Таким образом, выбирается страница с номер ом 6 и внутренним адресом 00101001110B (14Eh). Значит по рисунку 5, этот фи зический адрес будет соответствовать вир туальному адресу 12288... Страница Виртуальные адреса Рис.5 Это значит, что шестая страница виртуальной памяти начина ется с адреса 12288 и заканчивается по адресу 14335. Общий объем виртуальной стра ницы составляет 2048 Байт (2 Кб). Для определения физического адреса пользовательской программы, резиде нтный диспетчер памяти под управлением операционной системы должен ус тановить местонахождение виртуальной страницы. Физическая страница па мяти, которая соответствует виртуальной, может находится в оперативной памяти, но может также быть и на диске. Как было сказано ранее, для того что бы установить соответствие между виртуальной и физической страницами, ОС обращается к страничной таблице , кажда я из строк которой содержит по одной записи для каждой из восьми виртуал ьных страниц. Как же организованна эта страничная таблица? Запись в стро ке содержит три поля Первое однобитовое поле по сути является флагом в э той ячейке может находится либо включенный, либо выключенный бит (1 или 0), ч то указывает на конкретное местонахождение страницы: если в этом поле со держится код нуля это подсказывает процессору, что необходимую страниц у нужно искать во внешней памяти, если знач ение бита в данном поле равно 1, то искомая страница уже находится в оперативной пам яти. Таким образом, все функции единственного бита в этом поле принимать значения True или False. Второе поле содержит адрес внешней памяти. Этот адрес ст анет необходим если искомой страницы нет в оперативной памяти, а она нах одится в ВЗУ и её надо переписать в ОЗУ для работы с программой, находящей ся в этой странице. По этому адресу машина обращается к виртуальной стра нице, хранящейся на диске и копирует её содержимое в ОЗУ. Важное замечани е заключается в том, что если в первом однобитовом поле флаг находится в с остоянии 1, то второе поле автоматически игнорируется , потому что искомая страница уже “сидит” в ОП и нет никакой необходимости “MOV CX, ADDRESS” (засылать в регистр CX адрес внешней ВС для его обраб отки). После того как машина отработает с данной страницей ВП и надобност ь в ней исчезнет (возможно на какое-то время), эта страница обратно перенос ится на диск, освобождая место для другой страницы которая нужна машине в данный момент для продолжения работы. Наконец третье поле, функциональная нагрузка которого указывать номер страницы оперативной памяти, в которой находится необходимая информац ия. Если нужной страницы нет в ОП, а она находится на диске (бит первого пол я выключен), то третье поле игнорируется. На рисунке 6 изображена схема Страничной организации виртуальной памяти. Рис.6 Страничная организация Виртуальной Памяти. Итак, при распределении памяти в машине, су первизор формирует страничную таблицу. Входом в эту табли цу является номер математической страницы, в которой находится нужная я чейка памяти. Если адресная страница находится в ОП, то формирование адр еса происходит следующим образом: двух битовый номер страницы заноситс я в два левых разряда адресного регистра оперативной памяти, а адрес вну три виртуальной страницы (11 бит исходного адреса) переписывается в 11 прав ых разрядов адресного регистра. Это очень хорошо показано на правой част и рисунка. P µ регистр математического ад реса, P ф регистр физического адреса, p ном ер математической страницы, l смещение. Таким образом, lсмещение переписы вается из регистра математического адреса в регистр физического без из менений. По номеру p из страничной таблицы извлекается номер физической страницы и, если эта страница уже находится в ОП, то её номер записывается в регистр физического адреса, если же искомая страница находится в ВЗУ, т о она сначала переписывается в ОП. Для этого используется или свободная страница ОП, или какая-либо страница ОП освобождается: информация из это й страницы снова переносится во внешнюю память (но ни в коем случае не сти рается!). После этого страничная таблица обновляется в неё заносятся све дения о новых страницах (той которая на данный момент находится в ОЗУ и то й которая переместилась во внешнюю память). Страничная таблица является таким видом информации которая очень часто обновляется. Она постоянно “ дышит”. Каждый раз когда у пользователя возникает потребность в новой ин формации (в частности в новой странице памяти), привходит процесс свопирования , то есть перемены местами страниц ОП и ВЗУ (англ. swap менять местами). При этом в страничную таблицу заносится н аиболее свежая информация о том в какую страницу виртуальной памяти был а помещена страница, только что удалённая из ОП, содержится ли в этой стра нице нужное на следующем этапе слово и т. д. У страничной таблицы множеств о работы. Как было отмечено, для наиболее эффективного функциониро вания машины необходимы большая ёмкость ОЗУ и быстродей ствие . Как известно, обычная оперативная память (RAM) не являе тся максимально быстродействующей. Это значит, что если бы страничная та блица находилась в такой памяти, то пользователь сталкивался бы с реальн ой потерей времени, так как процессор довольно часто обращается к СТ. Вых од из этой неудобной ситуации был найден при помещении страничной табли цы в сверхоперативную память , которая об ладает наибольшим быстродействием , хотя и во много раз меньше по объему чем RAM. Но этого объёма вполне хватает процес сору и он получает возможность работать с большей производительностью, так как при каждом перераспределении пам яти между пользовательскими программами осуществляется изменение дан ных, содержащихся в страничной таблице. При страничной организации памяти очень важным является алгоритм своппирования страниц . Действи тельно, процессор должен “подумать” какую страницу стоит в первую очере дь удалить из ОП, дабы на освободившееся место переписать из внешней пам яти необходимую в данный момент страницу... Этот вопрос будет подробно ра ссмотрен в § 8. 5. Преимущества и недостатки ВП со страничной организ ацией. (Анализ и оценка эффективности СО при рассмотрении пре имуществ и недостатков) Несомненно, применение виртуальной памяти в современных машинах это важнейшее достижение как в компьютерной технологии, так и в максимизации удобств создаваемых для пользователя. Но, как известно, каж дая система имеет свои преимущества и недостатки. Предлагаю проанализи ровать суть применения ВП; её слабости и критерии эффективности, её плюс ы и минусы. Во-первых одним из преимуществ ВП с СО является достаточн о большой объём прямо адресуемой памяти . Д ействительно объем памяти может исчисляться сотнями мегабайт (и даже ги габайтами). Размер виртуальной памяти целиком зависит от объёма накопит еля на [жестком] магнитном диске. Созданный SWAPфайл размещается на диске и эмулирует оперативную память. При этом пол ьзователь не задумывается о том куда будет помещен “кусок” его программ ы с которой он только что отработал. Таким образом, ещё одним преимуществом ВП с СО является то, что программы поль зователя могут размещаться в любых свобо дных страницах. И наконец, одним из важнейших преимуществ ВП с СО (то, ради чего, собственно и была изобретена виртуальная память) по вышение уровня мультипрограммной работы . Как было сказан о выше, эта цель была одной из самых главных. С организацией ВП с СО пользо ватель получил реальную возможность загружать в память большее количе ство программ для того чтобы машина обрабатывала программы сразу (в дейс твительности процессор устанавливает приоритет для каждой программы, находящейся в памяти, и далее в соответствии с приоритетом выделяет опре делённое количество времени на реализацию каждой программы или команд ы). Сам процессор постоянно “занят” каждый машинный такт выполняет опред елённую программу. Метод организации виртуальной памяти со страничной организацией значительно повысил эффект ивность работы с машиной. У каждого гениального изобретения к сожалению есть свои н едостатки. Таковые есть и у ВП с СО. Попытаемся проанализировать их. Основ ным недостатком виртуальной памяти пожалуй является то количество вре мени, которое машина тратит на обращение к внешней памяти. Извлечь необх одимую информацию из ячеек оперативной памяти не представляет особого труда и больших затрат времени. Совсем иначе обстоит дело с диском: для то го чтобы найти необходимую информацию, нужно сначала “раскрутить” диск, потом найти необходимую дорожку, в дорожке найти сектор, кластер, далее с читать побитовую информацию в ОП. Все это требует времени и, порой если пр и методе случайного удаления страниц *, про цессору понадобятся сразу несколько страниц, хранящихся во внешней пам яти, большого времени. К сожалению, этот недостаток принадлежит к виду “н еисправимых”. И если другие недостатки, рассмотренные ниже ущё можно как им-то образом устранить (например путем расширения технических средств и т. д.), то данный недостаток не может быть устранён никоим образом, так как понятие виртуальной памя ти ассоциируется с применением внешней памяти (магнитног о диска). Следующий недостаток скорее относится к вопросу о технич еской характеристике компьютера: наличие сверхоперати вной памяти (СОП) . Как было сказано выше, СОП, как правило, им еет не — — — — — * Методы своппирования страниц рассмотрены в § 8. большую ём кость и достаточно высокое быстродействие. СОП используется для хранен ия управляющей информации, служебных кодов, а также информации к которой осуществляется наиболее частое обращение в процессе выполнения прогр аммы. Этот недостаток в работе с ВП к счастью можно ликвидировать. Что кас ается технической характеристики есть ли в микросхемах оперативной па мяти дополнительные интегральные схемы, которые являются запоминающим и устройствами СОП? Если есть, то проблема с СОП решена, а если нет..? Тогда, б лагодаря достижениям в области компьютерной технологии, могут использ оваться драйверы , резервирующие маленьк ую область ОП для имитирования СОП. Итак, что касается этого недостатка, т о, мне кажется, что он не настолько серьёзен, чтобы о нём беспокоится. И, нак онец третьим недостатком является внутренняя фрагмент ация страниц . 6. Сегментно-страничная организация виртуальной памя ти (Структура, функционирование, отличия от ВП с СО, преиму щества и недостатки) При использовании метода сегментно-страничной организа ции ВП, пользовательские программы разбиваются на отдельные массивы. Эт и массивы независимые участки называются сегментами . Сегмент представляет собой единый логический объект, сод ержащий какую-либо процедуру, массив или набор данных. Как правило инфор мация, содержащаяся в сегменте, однородная , то есть в одном сегменте могут находится только служебные коды пр ограммы, другой может являться сегментом стека, третий содержать коды св язи с объектными (.obj) файлами и т. д. Каждый сегмент представляет собой последовательность а дресов от нуля до определённого максимального значения. Отличие сегмен та от страницы состоит в том, что длинна сегмента может из меняться в процессе работы . Сегменты, как и любая структура виртуальной памяти, могут размещаться как в ОП, так и во внешней памяти (магнитных носителях). ВП с СС О функционирует подобно ВП с СО: если требующийся на данный момент сегме нт отсутствует в оперативной памяти, то при надобности работы с ним, он пр едварительно перемещается в ОП. Сегментно-страничная организация памяти требует более с ложной аппаратурно-программной организации. Рассмотрим как же осущест вляется обращение к ВП посредством ССО. По самому названию “сегментно-ст раничный” нетрудно догадаться, что при таком методе используется как сегментная , так и страничн ая таблицы. Это очень похоже на сложно структурированный метод “процедуры в процедуре” во многих алгоритмических языках. На рису нке 7 подробно показан способ организации ВП с ССО. Адрес ячейки в данном с лучае складывается из 3х частей: первая содержит номер самого сегмента ( S egment), по этому номеру машина обращается к сег ментной таблице. Вторая часть адреса содержит номер искомой страницы ( p age), которая находится внутри выбранного се гмента и третья смещение ( l ength), по которому н аходится требуемый адрес. Pµ, обведенное в двойную рамку показывает математический адрес , а Pф физ ический . Как и при СО, смещение l переписывается в ячейку фи зического адреса без изменений. Вверху рисунка, аббревиатурой N обозначен номер какой-ниб удь программы пользователя. А 0 с индексо м 1 обозначает конкретный начальный адрес сегментной таблицы для данной программы. Сначала берется этот адрес и номер сегмента S из регистра математического адреса. Оба этих адреса скл адываются в сумматоре, который изображен в виде обведенного плюса. Получ ившийся адрес А 1 + S является входом в сегм ентную таблицу (изображен в первой колонке сегментной таблицы). Далее, бл агодаря этому адресу, отыскивается соответствующий адрес страничной таблицы (А 0 с индек сом 2), который в свою очередь суммируется с номером искомой страницы p в су мматоре. Результирующая сумма есть вход в страничную таблицу. Структура страничной таблицы нам уже знакома: благодаря получившемуся адресу, нах одится соответствующий адрес физической страницы, процессор определяет местонахождение этой страницы (включен ный бит страница находится в ОП, выключенный во внешней памяти). Рис. 7 Сегментно-страничная организация ВП. Итак, краткое описание функционирования ВП с ССО: с помощь ю начального адреса сегментной таблицы и номера сегмента из регистра ма тематического адреса (S) образуется адрес вход в сегментную таблицу в кот орой находится начальный адрес страничной таблицы. К этому адресу в свою очередь прибавляется номер страницы из РМА. Эта сумма служит входом в ст раничную таблицу, в которой затем отыскивается адрес искомой физическо й страницы и, в соответствии с уровнем доступности, процессор либо начин ает работать с этой страницей, либо вырабатывает аппаратурное прерыван ие и подключает супервизора , который зат ем организует ее перепись в ОП. Если вся ОП будет занята, то супервизор, в с оответствии с принятым методом (см. § 8), своппирует какую-нибудь страницу. 7. Виртуальная память в современных компьютерах (ВП в современных машинах, отличия, преимущества...) Как было сказано выше, с развитием компьютерных технологи й стали появляться новые перспективы использования персональных компь ютеров. В § 3 упоминается о компьютере Intel™ 486DX4 с тактовой частотой 75Mhz, произве денным фирмой Texas Instruments. Несомненно, возможности этого компьютера огромны. О н комплектуется огромным жестким диском (1.2GB) и имеет 32MB оперативной памяти. Предположим, что эта машина будет использоваться для разработки космич еского корабля, робота хирурга или в области кибернетики. Для этих целей необходимо использовать “серьёзное” программное обеспечение (скажем, производимое фирмой Silicon Graphics ® ), требующее о громного количества оперативной памяти. В такой ситуации даже 32MB может не хватать. В таких ситуациях по-прежнему проявляется тенденция к использо ванию ВП. Виртуальная память применяется во многих программах, операцио нных оболочках, коммуникационном программном обеспечении. В следующих пунктах приведены примеры использования виртуальной памяти в современ ных компьютерах с различными программами. Использование ВП в Microsoft ® Windows™ 3.1* Microsoft Windows 3.1 является наиболее популярной операционной оболоч кой как среди любителей, так и среди профессиональных пользователей. Windows о беспечивает независимый запуск и выполнение сразу неск ольких программ. Большинство других оболочек и операцион ных систем рассчитаны на выполнение в данный момент тол ько одной программы. В рамках Windows можно запустить сразу нес колько программ. Для этих целей используется ВП. 1. RAM диск (виртуальный, псевдо, электронный диск) Разновидность вирт уальной памяти. Супервизор резервирует для него область EMS или XMS памяти и, таким образом устанавливает диск в памяти. Он работает быстрее, чем реал ьный физический диск, но при выключении питания его содержимое теряется . Он весьма удобен для хранения промежуточной информации в течение одног о сеанса работы. Но RAM диск не является прямы м аналогом ВП. 2. Использование SWAPфайла виртуальной памяти. Виртуальная память в оболочке Windows 3.1 используется только в р асширенном (extended) режиме. Каковы характеристики компьютера, работающего с Windows в расширенном режиме? Он должен иметь 386ой процессор и минимум 2 мегабай та памяти. Итак виртуальная память в Windows представляет собой механизм, обес печивающий расширение адресного пространства за счет дискового прост — — — — — * Рассмотрены компьютеры фирм IBM (PS/2, Pentium™, OverDrive™) AcerPower™, NEC, American Megatrends, Zeos™, Tandy™, HP Vectra™, Toshiba, Dell, Packard Bell и другие машины укомплектов анные процессорами Intel™ и Cyrix™. Машины ЕС, из-за недостатка ОЗУ не работают в Wi ndows и в данном примере не рассмотрены. ранст ва. Реальные ограничения на объем такой виртуализирован ной оперативной памяти отсутствуют. В физической операти вной памяти в каждый момент представлена некоторая часть полного вирту ального пространства, остальная же часть которого расположена на диске По мере необходимости, например если пользователю понадобился следующ ий фрагмент его программы, который в данный момент находится на диске, а р еальная оперативная память “загружена до основания”, процессор может своппировать страницу оперативной памя ти со страницей на диске. (от англ. swap менять местами). Таким образом, попрост у будет осуществлена перестановка страниц, и та страница с которой тольк о что работали “отправляется” на диск. В Windows 3.1 возможно несколько варианто в реализации ВП. На рисунке 8 показано использование двух видов ВП в Windows: разносекторного (temporary) и перм анентного (permanent) swapфайлов Рис.8 Разносекторное и перманентное применение ВП Разносекторный (временной) swapфайл Разносекторный swapфайл состоит из множества независимых с екторов, которые разбросаны по всему диску. Каждый раз когда операционно й среде Windows необходимо подгрузить в память какую-либо страницу, она должна обратится к разносекторному swapфайлу. Но неудобство применения такой раз новидности ВП заключается в том, что в конце каждой части этого целого свопфайла стоит пересылка на другой сектор д иска. И пользователь сталкивается с реальной потерей времени при работе с таким видом свопфайлов, так как процессору необходимо “представить” в памяти целостную картину данного файла дабы извлечь из него нужную инфо рмацию. Для этого машина собирает последовательность из этих кусочков и затем анализирует представленный в памяти файл. Если пользователь выбирает такой вид реализации ВП, то Windows автоматически создаёт разносекторный swapфайл в директории Windows. Обычно это т файл носит название WIN386.SWP. Неудобство такого метода ещё заключается в том , что разносекторный файл (по другому называемый временн ым ) хранит информацию только в продолжении сеанса работы оболочки, а по завершении его автоматически удаляется. Вот как может быт ь представлена программа, написанная на Паскале в виде разносекторных ф айлов: ~pas0c4e.tmp первая страница начинается по адресу 0C4A; ~pas1158.tmp вторая находится в секторе с номером 1158; ~pas1b5a.tmp и третья расположена в секторе 1B5A. В конце каждого .tmpфайла указанна ссылка на другой такой же. Перманентный (постоянный) swapфайл Вторая разновидность свопфайлов носит название перманентных Такой файл занимает значительную часть диска, специально зарезервированную для этих целей. Размер перман ентного файла определяется наличием системных ресурсов, отведенных дл я работы с Windows (размером ОП, свободным местом на жестком диске и даже времен ем доступа к винчестеру). Перманентный файл работает гораздо быстрее чем разносекторный, так как Windows знает настоящее местонахождение этого файла и нет необходимости собирать его из частей. Обычно этот файл носит имя 386SPART.PAR или SPART.PAR Безусловно, если пользователь имеет большой жесткий диск и ма ло ОП, то использование перманентного свопфайла более эффективно. Перма нентный файл эмулирует реальную оператив ную память и, поэтому не стирается при выходе из Windows. Анализ и оценка применения разных типов ВП в Windows. Каждая из разновидностей ВП в Windows имеет свои преимущества и недостатки. Временная ВП занимает место на винчестере только при необхо димости, но для того чтобы выделить или освободить такое место нужно каж дый раз тратить время. Суммарное быстродействие такой памяти ниже, чем у постоянной ВП. Что касается постоянной ВП, то она быстрее временной, но он а также занимает достаточно большое пространство на винчестере, даже ес ли пользователь не обращается к своим программам и приложениям и вообще не работает в Windows. Но в целом, виртуальная память играет значительную роль в применении Windows. Как было сказано ранее, адресное пространство расширяет ся за счет объединения ячеек реальной ОП с ячейками на магнитном диске и при этом размер физической памяти становится значительно большим. Это н емаловажно, так как Windows очень популярная операционная среда, доступная ка к профессионалу, так и простому пользователю. Размер машинного времени “ уделяемого” Windows достаточно велик. Вследствие этого различными фирмами (Microsoft®, Borland International, Lotus Development и т. д.) было написано много программного обеспечения спе циально для среды Windows. Так же было разработано множество профессиональны х пакетов, ориентированных на математику, статистику, программирование, бухгалтерию и т. д. Вот здесь и нашлось место для применения виртуальной п амяти. Благодаря возможности работы в мультипрограммном режиме, огромн ые массивы информации постоянно находятся в движении. Пользователь мож ет запустить на выполнение сразу несколько программ, (каждая из которых требует памяти). Применение ВП значительно увеличивает объем физическо й памяти и позволяет работать эффективнее. 8. Способы замены (свопирования) страниц (Механизмы обмена страниц) Как было упомянуто выше, использование ВП подразумевает п рименение магнитного диска на котором хранятся те страницы или сегмент ы, которые на данный момент не нужны в оперативной памяти. Метод применен ия ВП довольно прост: те страницы с которыми пользователь работает в дан ный момент находятся в памяти машины и к ним осуществляется непосредств енный доступ. Через определённое время процессору, отработавшему с данн ой страницей, требуется другая страница, которая подгружается в память с диска. Страница, с которой только что отработали “вытесняется” на диск, а ни в коем случае не уничтожается. Довольно часто случается так, что вся реальная память, раз битая на страницы полностью занята. И при необходимости подгрузить нову ю страницу, супервизор должен установить какую страницу перенести да диск, чтобы освободить место для требующейс я. Это достаточно сложная задача, так как удалённая страница может понад обиться на следующем этапе, а это может привести к потере времени. Для сво ппирования страниц в разных программах используются различные стратег ии, примеры которых приведены ниже: 1. Случайное удаление страниц... Случайное удаление не является самым эффективным способом, так как оно не может дать ст опроцентной гарантии, что только что удалённая страница не понадобится на следующем этапе работы. Случайное удаление осуществляется с помощью функции случайных чисел. Супервизо р попросту берет начальный адрес случайной страницы в оперативной памя ти и переписывает его в swapфайл (на диск). При этом корректируется странична я (сегментная) таблица. 2. Удаление по времени пребывания в ОП... Механизм этой стратегии можно представить как “первы м вошел, первым вышел”. Это значит, что страница, дольше всех находящаяся в оперативной памяти на данном этапе будет удалена первой. Этот метод так же не универсален так как каждой странице отведено определенное время н а функционирование, и основное неудобство заключается в том, что необход имо вести механизм учёта за длитель ностью пребывания страниц в ОП, что также связанно с усложнением структу ры и потерей времени. 3. Удаление в связи с давностью использован ия... На мой взгляд, этот метод является наиболее удачным. Ме ханизм его таков: если страница дольше всех находится в ОП, значит пользо ватель в течение долго времени не нуждался в ней, а значит появляется вероятность , что эта страница не по надобится и на следующем этапе. 4. Удаление по вероятности использования... Вероятность использования страницы N очень небольшая, а вероятность использования страницы M высока. В этом случае, страница N бу дет удалена из памяти. Этот способ также не представляется мне достаточн о эффективным, так как здесь всё основано на вероятно сти. Но, каждый раз когда мы подбрасываем монету, неизве стно какой стороной она упадёт. Так же и здесь нет никакой гарантии, что эт а страница не понадобится на следующем этапе. 5. Удаление по приоритетам... Этот способ пожалуй является достаточно эффективным, так как страницы удаляются по приоритетам. Каждая страница имеет свой приоритет, который устанавливается с упервизором в соответствии с “важностью” программы, находящейся в опре делённой станице. Предположим что в странице N находятся коды важной пол ьзовательской подпрограммы, а в странице M текстовый файл, работа с котор ым не является столь важной. Тогда N получает приоритет 1, а M, предположим, 9. З аметим, что необходимые, часто требующиеся страницы имеют приоритеты 13, м енее необходимые 46, и практически ненужные 59. Это значит, что когда в следую щий раз супервизору понадобится удалить из ОП страницу, он начнет со стр аниц, имеющих самый низкий уровень приоритета (9). 9. Анализ и оценка виртуальной памяти. Показатели эффе ктивности. (При СО и ССО) Эффективное решение задач на ЭВМ определяется не только е мкостью и быстродействием запоминающих устройств, наличием мощного пр оцессора с большой тактовой частотой, но и организацией и распределение м памяти. Современные компьютеры обладают средствами и техническими ха рактеристиками для организации виртуальной памяти. Применение виртуал ьной памяти получило широкое применение как среди пользователей любит елей, так и среди профессионалов. Основная функция ВП рас ширение адресного пространства . ВП создаётся для увеличе ния функциональных возможностей компьютера, повышения уровней мультипрограммной работы . Объединив, ячейки ре альной оперативной памяти с ячейками на быстродействующих магнитных н осителях, (чаще всего для этих целей используются винчес теры . Применение НГМД не было бы столь эффективно, а примен ение НМД или НМБ понесло бы невосполнимые потери), пользователь имеет во зможность значительно расширить память и при этом не думать о том в “как ой” памяти хранится его программа. ВП была создана для облегчения работы пользователей при размещении программ. Благодаря ВП появилась возможность для более эффективно го применения программмультитаскеров (multitasker) специальных пакетов, позвол яющих повысить уровень мультипрограммной работы. (Программы, которые ра спределяют время процессора и память так, что например связываться по мо дему, печатать на принтере и обрабатывать текст можно одновременно). В на стоящее время, благодаря применению ВП, усилилась тенденция к использов анию DeskView менеджерамультитаскера (производства фирмы QuatterDeck). Сравнивая реальную оперативную память с виртуальной, мож но отметить, что объем РП ограничен , то ест ь в каждой микросхеме фиксированное число ячеек. Что касается ВП, то она м ожет иметь достаточно большой объем, ограниченный только местом на диск е (возможностью адресации). Объем ВП может достигать нескольких десятков и сотен мегабайт. РП имеет линейную структ уру (адресация в порядке возрастания). ВП использует скво зную адресацию. В целом, применение виртуальной памяти является весомым вкладом в прогрессировании современных компьютерных технологий и бол ьшим шагом в развитии программирования, открывающим профессиональному программисту путь к созданию мощных мультизадачных систем и комплексо в. Применение виртуальной памяти широко оценивается специалистами в ко мпьютерной медицине, научной кибернетике, профессиональном программир овании.
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Прожиточный минимум это такая сумма, на которую миллионы сограждан должны жить месяц, а те, кто так решил, столько тратят на туалетную бумагу.
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Обратите внимание, реферат по информатике и информационным технологиям "Память. Виды памяти", также как и все другие рефераты, курсовые, дипломные и другие работы вы можете скачать бесплатно.

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru