Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Н.В. Вдовикина, А.В. Казунин, И.В. Машечкин, А.Н. Техехин - Системное программное обеспечение - взаимодействие процессов

Н.В. Вдовикина, А.В. Казунин, И.В. Машечкин, А.Н. Техехин - Системное программное обеспечение - взаимодействие процессов, страница 7

PDF-файл Н.В. Вдовикина, А.В. Казунин, И.В. Машечкин, А.Н. Техехин - Системное программное обеспечение - взаимодействие процессов, страница 7 Практика расчётов на ПЭВМ (38661): Книга - 3 семестрН.В. Вдовикина, А.В. Казунин, И.В. Машечкин, А.Н. Техехин - Системное программное обеспечение - взаимодействие процессов: Практика расчётов на ПЭВМ -2019-05-08СтудИзба

Описание файла

PDF-файл из архива "Н.В. Вдовикина, А.В. Казунин, И.В. Машечкин, А.Н. Техехин - Системное программное обеспечение - взаимодействие процессов", который расположен в категории "". Всё это находится в предмете "практика расчётов на пэвм" из 3 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 7 страницы из PDF

6 Контекст процесса4.1.2 Тело процесса.Тело процесса состоит из сегмента кода и сегмента данных3.Сегмент кода содержит машинные команды и неизменяемыеконстанты соответствующей процессу программы. Данные в этомсегменте не подлежат изменению.Сегмент данных содержит данные, динамически изменяемыев ходе выполнения процесса. Сегмент данных содержит область3Под сегментом здесь мы понимаем область памяти, которой система управляет какединым целым35статических переменных, область разделяемой с другимипроцессами памяти, а также область стека (обычно эта областьслужит основой для организации автоматических переменных,передачи параметров в функции, организацию динамическойпамяти).Некоторые современные ОС имеют возможность разделенияединого сегмента кода между разными процессами.

Тем самымдостигается экономия памяти в случаях одновременноговыполненияидентичныхпроцессов.Например,прифункционировании терминального класса одновременно могут бытьсформированы несколько копий текстового редактора. В этомслучае сегмент кода у всех процессов, соответствующих редакторам,будет единый, а сегменты данных будут у каждого процесса свои.процесс 1Сегмент данных 1Сегмент кодатекстовогоредактораСегмент данных 2процесс 2Сегмент данных Nпроцесс NРис. 7 Разделение сегмента кода разными экземплярами программыСледует отметить, что при использовании динамическизагружаемых библиотек возможно разделение сегмента кода нанеизменную часть, которая может разделяться между процессами ичасть, соответствующую изменяемому в динамике кодуподгружаемых программ.4.1.3 Аппаратный контекст.Аппаратная составляющая содержит все регистры иаппаратные таблицы ЦП, используемые активным или исполняемымпроцессом (счетчик команд, регистр состояния процессора, аппаратвиртуальной памяти, регистры общего назначения и т.

д.).Аппаратная составляющая контекста доступна только в тот момент,36когда процесс находится в состоянии выполнения. В тот момент,когда процесс переходит из состояния выполнения в какое-либодругоесостояние,необходимыеданныеизаппаратнойсоставляющей его контекста сохраняются в область системнойсоставляющей контекста, и до тех пор, пока процесс снова неперейдет в состояние выполнения, в его контексте аппаратнойсоставляющей не будет.4.1.4 Системный контекст.В системной составляющей контекста процесса содержатсяразличные атрибуты процесса, такие как:- идентификатор родительского процесса- текущее состояние процесса- приоритет процесса- реальный и эффективный идентификатор пользователявладельца- реальный и эффективный идентификатор группы, ккоторой принадлежит владелец- список областей памяти- таблица открытых файлов процесса- диспозиция сигналов, т.е.

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

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

8 Формирование контекста процесса.4.2 Аппарат системных вызов в OC UNIX.Как известно, одной из основных функций любой ОС являетсяуправление ресурсами. Вынесение непосредственного доступа кресурсам в зону ответственности ядра необходимо для того, чтобыобеспечить надежность и работоспособность всей вычислительнойсистемы, так как невозможно гарантировать, что пользовательскийпроцесс, получив непосредственный доступ к ресурсамвычислительной системы, будет работать с ними корректно. Крометого, в многозадачной системе имеет место конкуренция процессовза ресурсы, и ОС должна здесь выполнять также функциюпланирования доступа к ресурсам и защиты ресурсов, выделенных38конкретному процессу, от несанкционированного доступа состороны других процессов.Чтобы обеспечить гарантии того, что определенные действия,такие как операции с ресурсами, планирование процессов и т.п.,может выполнять только ОС, вычислительная система должнаобладать определенными свойствами, и в частности, иметьпривилегированный режим выполнения.

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

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

Каким же образом обычныйпроцесс, работающий в пользовательском режиме, может все жеполучить возможность работать с ресурсами ВС, например,записывать данные в файл или выводить их на печать? Дляобеспечения такой возможности вводится аппарат системныхвызовов, посредством которых ядро предоставляет процессамопределенный набор услуг.С точки зрения пользовательского процесса, системныевызовы оформлены аналогично библиотечным функциям, иобращение к ним при программировании ничем не отличается отвызова обычной функции. Однако в действительности приобращении к системному вызову выполнение переключается впривилегированный режим, благодаря чему во время выполнениясистемного вызова процессу доступны все инструкции, в том числеи привилегированные, а также системные структуры данных.

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

НаРис. 8 показано отображение исполняемого файла на виртуальноеадресное пространство процесса, которое производит ОС призапуске процесса.Далее нами будут рассмотрены некоторые системные вызовы,предоставляемые ОС UNIX. К интересующим нас вызовамотносятся вызовы- для создания процесса;- для организации ввода вывода;- для решения задач управления;- для операции координации процессов;- для установки параметров системы.Отметим некоторые общие моменты, связанные с работойсистемных вызовов.Большая часть системных вызовов определены как функции,возвращающие целое значение, при этом при нормальномзавершении системный вызов возвращает 0, а при неудачномзавершении -14. При этом код ошибки можно выяснить, анализируязначение внешней переменной errno, определенной в заголовочномфайле <errno.h>.В случае, если выполнение системного вызова прерваносигналом, поведение ОС зависит от конкретной реализации.Например, в BSD UNIX ядро автоматически перезапускаетсистемный вызов после его прерывания сигналом, и таким образом,внешне никакого различия с нормальным выполнением системноговызова нет.

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