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

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

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

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

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

Как результат, программный модуль выпол­няется до своего конца, после чего он может быть вновь вызван на исполнение издругой задачи (другого вычислительного процесса). С позиций стороннего наблю­дателя по отношению к вычислительным процессам, которые попеременно (при­чем, возможно, неоднократно) в течение срока своей «жизни» вызывают некото­рый привилегированный программный модуль, такой модуль будет выступать какпопеременно разделяемый ресурс.

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

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

Для этого реентера­бельные программные модули должны быть созданы таким образом, чтобы было1Реентерабельный — допускающий повторные прерывания (дословный перевод с английского слова«re-enterable»).Основные виды ресурсов и возможности их разделения;45обеспечено сохранение промежуточных результатов для прерываемых вычисле­ний и возврат к ним, когда вычислительный процесс возобновляется с прерваннойранее точки. Это может быть реализовано двумя способами: с помощью статиче­ских и динамических методов выделения памяти под сохраняемые значения.Основным и наиболее часто используемым является динамический способ выде­ления памяти для сохранения всех промежуточных результатов вычисления, от­носящихся к реентерабельному программному модулю (рис.

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

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

Очевидно, что возможно многократное повторное вхождение в реентерабель­ный программный модуль до тех пор, пока в области системной памяти, выделяе­мой специально для реентерабельной обработки, есть свободные области, объемакоторых достаточно для выделения нового блока.Что касается статического способа выделения памяти, то здесь речь может идти,например, о том, что заранее для фиксированного числа вычислительных процес­сов резервируются области памяти, в которых будут располагаться переменныереентерабельных программных модулей: для каждого процесса — своя областьпамяти. Чаще всего в качестве таких процессов выступают процессы ввода-выво­1да, и речь идет о реентерабельных драйверах .Кроме реентерабельных программных модулей существуют еще повторно входимые(re-entrance). Этим термином называют программные модули, которые тоже допус­кают свое многократное параллельное использование, но, в отличие от реентерабель­ных, их нельзя прерывать.

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

Если процессыиспользуют данные только для чтения, то такие информационные ресурсы можноразделять. Если же процессы могут изменять информационные ресурсы, то необхо­димо специальным образом организовывать работу с такими данными. Это одна изнаиболее сложных проблем, достаточно подробно она обсуждается в главах 9 и 10.Классификация операционных системВыше мы уже дали определение операционной системы (ОС).

Поэтому простоповторим, что основным предназначением ОС является организация эффектив­ных и надежных вычислений, создание различных интерфейсов для взаимодей­ствия с этими вычислениями и с самой вычислительной системой.Реентерабельный драйвер может управлять параллельно несколькими однотипными устройствами —более подробно см. в главе 5.Классификация операционных систем47Широко известно высказывание, согласно которому любая наука начинается склассификации. Само собой, что вариантов классификации может быть очень мно­го, здесь все будет зависеть от выбранного признака, по которому один объект мыбудем отличать от другого.

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

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

К однопрограммным ОС отно­сится, например, всем известная, хотя нынче уже практически и не используемаяMS DOS. Напомним, что под мультипрограммированием понимается способ орга­низации вычислений, когда на однопроцессорной вычислительной системе созда­ется видимость одновременного выполнения нескольких программ. Любая задер­жка в решении программы (например, для осуществления операций ввода-выводаданных) используется для выполнения других (таких же либо менее важных) про­грамм. Иногда при этом говорят о мультизадачном режиме, причем, вообще гово­ря, термины «мультипрограммный режим» и «мультизадачный режим» — это несинонимы, хотя и близкие понятия.

Основное принципиальное отличие этих тер­минов заключается в том, что мультипрограммный режим обеспечивает параллель­ное выполнение нескольких приложений, и при этом программисты, создающиеэти программы, не должны заботиться о механизмах организации их параллель­ной работы (эти функции берет на себя сама ОС; именно она распределяет междувыполняющимися приложениями ресурсы вычислительной системы, осуществ­ляет необходимую синхронизацию вычислений и взаимодействие). Мультизадач­ный режим, наоборот, предполагает, что забота о параллельном выполнении и вза­имодействии приложений ложится как раз на прикладных программистов. Хотяв современной технической и тем более научно-популярной литературе об этомразличии часто забывают и тем самым вносят некоторую путаницу. Можно, одна­ко, заметить, что современные ОС для персональных компьютеров реализуюти мультипрограммный, и мультизадачный режимы.Если принимать во внимание способ взаимодействия с компьютером, то можноговорить о диалоговых системах и системах пакетной обработки.

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

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

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

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