Chapter_14 (1110566), страница 2

Файл №1110566 Chapter_14 (Книга с сайта Баулы по главам) 2 страницаChapter_14 (1110566) страница 22019-04-28СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

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

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

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

Тогда загрузчик, перед передачей управленияна первую команду программы (у нас это часто была команда с меткой Start), присваивал регистрам защиты памяти соответственно значенияАнач:=20000010 и Акон:=50000010Далее, в центральный процессор добавлена способность, перед каждым обращением в оперативную память по физическому адресу Афиз автоматически проверять условиеАнач ≤ Афиз ≤ АконЕсли условие истинно, т.е. программа обращается в свою область памяти, выполняется требуемое обращение к памяти по записи или чтению данных. В противном случае доступ в оперативнуюпамять не производится, и центральный процессор вырабатывает сигнал прерывания по событию"попытка нарушения защиты памяти".Описанный механизм защиты памяти очень легко реализовать, однако он обладает существенным недостатком: каждая программа может занимать только один сплошной участок в оперативнойпамяти.

В то же время, как мы знаем, архитектура нашего компьютера допускает, чтобы каждый сегмент программы мог быть размещён на любом свободном месте оперативной памяти. В современныхЭВМ это ограничение несущественно, так как на них реализован уже упоминавшейся механизм виртуальной памяти, который позволяет выделять для каждой программы любые участки адресов памяти, независимо от того, заняты ли эти, как говорят, логические адреса другими программами или нет.С другой стороны, если реализован механизм виртуальной памяти, то на его базе легко сделать идругой, более совершенный механизм защиты памяти.114.1.3. Аппарат привилегированных командСейчас мы рассмотрим ещё одно необходимое свойство аппаратуры, без которого невозможнореализовать мультипрограммный режим работы ЭВМ. Это свойство иногда называется аппаратомпривилегированных команд, а иногда – защищённым режимом работы центрального процессора, изаключается оно в следующем: все команды, которые может выполнять центральный процессор, разбиваются на два класса.

Команды из одного класса называются обычными командами или командами пользователя, а команды из другого класса – привилегированными или запрещённымикомандами.Далее, в центральном процессоре располагается специальный одноразрядный регистр режимаработы, который может, естественно, принимать только два значения: 0 и 1. Значение этого регист1На факультете Вычислительной математики и кибернетики МГУ это изучается в курсе под названием"Системное программное обеспечение", он читается в третьем семестре.5ра и определяют тот режим, в котором в данный момент работает центральный процессор: обычныйрежим (или режим пользователя) или привилегированный режим.1 В привилегированном режимецентральному процессору разрешается выполнять все команды языка машины, а в режиме пользователя – только обычные (не привилегированные) команды.

При попытке выполнить привилегированную команду в пользовательском режиме центральным процессором вырабатывается сигнал прерывания, а сама команда, естественно, не выполняется. Из этого правила выполнения команд легко понять и другое название для привилегированных команд – запрещённые команды, так как их выполнение запрещено в режиме пользователя. Объясним теперь, почему без аппарата привилегированныхкоманд невозможно реализовать мультипрограммный режим работы ЭВМ.Легко понять, что, например, команды, которые для рассмотренного выше механизма защитыпамяти заносят на регистры защиты Анач и Акон новые значения, должны быть привилегированными.Действительно, если бы это было не так, то любая программа могла бы занести на эти регистры адреса начала и конца всей оперативной памяти, после чего получила бы возможность записывать данныев любые области памяти.

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

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

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

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

Обычно переключение в привилегированный режим производится автоматически при обработке центральным процессором сигнала прерывания, в этом случае процедураобработчик прерывания уже начинает свою работу в привилегированном режиме. Иногда переключение в привилегированный режим производится центральным процессором при вызове специальных системных процедур, которые имеют полномочия для работы в привилегированном режиме.1В архитектуре нашего компьютера регистр режима работы содержит два разряда и может приниматьзначения 0, 1, 2 и 3. Практически всегда, однако, для указанных выше целей реализации защищённого режимаработы используются только два из этих четырёх значений (0 и 3).2Способы задания таких полномочий студенты факультета Вычислительной математики и кибернетикиМГУ изучают в третьем семестре на примере операционной системы Unix.614.1.4.

ТаймерВстроенные в компьютер электронные часы (таймер) появились ещё до возникновения мультипрограммного режима работы. Тем не менее, легко понять, что без таймера мультипрограммный режим тоже невозможен. Действительно, это единственное внешнее устройство, которое гарантированно и периодически посылает центральному процессору сигналы прерываний. Без таких сигналов некоторые программы могли бы войти в выполнение бесконечного цикла (как говорят программисты –зациклиться), и ничто не могло бы вывести компьютер из этого состояния.1Итак, мы рассмотрели аппаратные средства, необходимые для обеспечения мультипрограммного режима работы ЭВМ.

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

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

Тип файла
PDF-файл
Размер
330,8 Kb
Тип материала
Высшее учебное заведение

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

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