Главная » Просмотр файлов » Гордеев А.В. Операционные системы (2-е изд., 2004)

Гордеев А.В. Операционные системы (2-е изд., 2004) (1186250), страница 25

Файл №1186250 Гордеев А.В. Операционные системы (2-е изд., 2004) (Гордеев А.В. Операционные системы (2-е изд., 2004)) 25 страницаГордеев А.В. Операционные системы (2-е изд., 2004) (1186250) страница 252020-08-27СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 25)

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

В результате рабо­ты системы программирования полученные виртуальные адреса могут иметь какДвоичную форму, так и символьно-двоичную. Это означает, что некоторые проРаммные модули (их, как правило, большинство) и их переменные получают ка-f74Глава 3. Управление памятью в операционных системахкие-то числовые значения, а те модули, адреса для которых пока ие могут бытьопределены, имеют по-прежнему символьную форму, и их окончательная привяз­ка к физическим ячейкам будет осуществлена на этапе загрузки программы в па­мять перед ее непосредственным выполнением.Виртуальное адресное пространствоВиртуальный адресСистема!программирования Г!ОперационнаясистемаФизическая память компьютера^Ячейка оперативной памяти(физический адрес)Рис.

3 . 1 . Память и отображенияОдним из частных случаев отображения пространства символьных имен на физи­ческую память является полная тождественность виртуального адресного простран­ства физической памяти. При этом нет необходимости осуществлять второе ото-мдть иотображения, виртуальное адресное пространство75жение. В таком случае говорят, что система программирования генерирует абчютную двоичную программу; в этой программе все двоичные адреса таковы, чтооограмма может исполняться только тогда, когда ее виртуальные адреса будутПРЧ Н о соответствовать физическим. Часть программных модулей любой операциТ° ной системы обязательно должна быть абсолютными двоичными программами.Чти программы размещаются по фиксированным адресам физической памяти,с их помощью уже можно впоследствии реализовывать размещение остальныхгоограмм, подготовленных системой программирования таким образом, что онимогут работать на различных физических адресах (то есть на тех адресах, на котопые" их разместит операционная система).

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

Это характерно для простейшихкомпьютерных систем, в которых вместо операционной системы использовалсявстроенный интерпретатор (например, Basic).Возможны и промежуточные варианты. В простейшем случае транслятор-компиля­тор генерирует относительные адреса, которые, по сути, являются виртуальнымиадресами, с последующей настройкой программы на один из непрерывных разде­лов.

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

Так как второе отображение осуще­ствляется в процессе исполнения задачи, то адреса физических ячеек могут изме­няться. При правильном применении такие изменения улучшают использованиепамяти, избавляя программиста от деталей управления ею, и даже повышают на­дежность вычислений.если рассматривать общую схему двухэтапного отображения адресов, то с пози­ции соотношения объемов упомянутых адресных пространств можно отметитьналичие следующих трех ситуаций:объем виртуального адресного пространства программы Vv меньше объема фи­зической памяти Vp (Vv < V„);ооъем виртуального адресного пространства программы Vv равен объему фи­зической памяти V„ (Vv = Vp);76Глава 3. Управление памятью в операционных системахQ объем виртуального адресного пространства программы Vv больше объема фи­зической памяти Vp (Vv > Vp).Первая ситуация (Vv < Vp) ныне практически не встречается, но, тем не менее, этореальное соотношение.

Скажем, не так давно 16-разрядные мини-ЭВМ имели систе­|6му команд, в которых пользователи-программисты могли адресовать до 2 = 64 Кбайтадресов (обычно в качестве адресуемой единицы выступала ячейка памяти разме­ром с байт). А физически старшие модели этих мини-ЭВМ могли иметь объем опе­ративной памяти в несколько мегабайтов. Обращение к памяти столь большогообъема осуществлялось с помощью специальных регистров, содержимое которыхскладывалось с адресом операнда (или команды), извлекаемым из поля операндаили указателя команды (и/или определяемым по значению поля операнда или ука­зателя команды).

Соответствующие значения в эти специальные регистры, высту­пающие как базовое смещение в памяти, заносила операционная система. Для од­ной задачи в регистр заносилось одно значение, а для второй (третьей, четвертойи т. д.) задачи, размещаемой одновременно с первой, но в другой области памяти,заносилось, соответственно, другое значение. Вся физическая память таким обра­зом разбивалась на разделы объемом по 64 Кбайт, и на каждый такой раздел осуще­ствлялось отображение своего виртуального адресного пространства.Вторая ситуация (Vv = Vp) встречается очень часто, особенно характерна она быладля недорогих вычислительных комплексов. Для этого случая имеется большоеколичество методов распределения оперативной памяти.Наконец, в наше время мы уже достигли того, что ситуация превышения объемавиртуального адресного пространства программы над объемом физической памя­ти (Vv > Vp) характерна даже для персональных компьютеров, то есть для самыхраспространенных и недорогих машин.

Теперь это самая обычная ситуация, и длянее имеется несколько методов распределения памяти, отличающихся как слож­ностью, так и эффективностью.Простое непрерывное распределениеи распределение с перекрытиемОбщие принципы управления памятьюв однопрограммных операционных системахПростое непрерывное распределение — это самая простая схема, согласно которойвся память условно может быть разделена на три области:•область, занимаемая операционной системой;Q область, в которой размещается исполняемая задача;•незанятая ничем (свободная) область памяти.Изначально являясь самой первой схемой, схема простого непрерывного распреде­ления памяти продолжает и сегодня быть достаточно распространенной.

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

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

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

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6549
Авторов
на СтудИзбе
300
Средний доход
с одного платного файла
Обучение Подробнее