Главная » Просмотр файлов » В. Столлингс - Операционные системы

В. Столлингс - Операционные системы (1114679), страница 33

Файл №1114679 В. Столлингс - Операционные системы (В. Столлингс - Операционные системы) 33 страницаВ. Столлингс - Операционные системы (1114679) страница 332019-05-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Процессы и потоки 4.2. Симметричная многопроцессорная обработка 4.3. Микроядра 4.4. Потоки и ЯМР в %'ян$оиче 2000 4.5. Управление потоками и ЯМР в Яо1агЬ 4.6. Управление процессами и потоками в Ешь 4.7. Резюме, ключевые термины и контрольные вопросы 4.8. Рекомендуемая литература 4.9. Задачи этой главе изучаются концепции современных операционных систеМ, ' $ занные с управлением процессами. Мы узнаем, что концепция проц г само. самом деле сложнее и тоньше, чем можно себе представить исходя из м ".' зредш ест ествующих глав.

По сути, эта концепция объединяет в себе две отде . енциапьно независимые концепции, одна из которых имеет отношение к '' 1 ресурсурсами а другая — к выполнению процессов. В некоторых опе семах это различие привело к появлению конструкции, известной под н 011 фд.еас1). После рассмотрения потоков мы обратимся к изучению с многопроцессорности (эупппе1г1с пш1(зргосеяв1пд — БМР). В системе с н 1и процессорами операционная система должна выполнять одновременное ание выполнения на разных процессорах нескольких процессов.

И наконе акомим читателя с концепцией микроядра (пйсго)сегпе1), которое явля :тивным средством структурирования операционной системы для цессами и решения других задач. .1. ПРОЦЕССЫ И ПОТОКИ До сих пор концепцию процесса можно было охарактеризовать 1аметрами. Владение ресурсами (гевопгсе откпегэ)1(р). Процесс включает вир адресное пространство, в котором содержится образ процесса, и в времени может владеть такими ресурсами, как основная память, к устройства ввода-вывода, или Файлы, или же получать контроль на~": Операционная система выполняет защитные Функции, предотвращая:.

дательные взаимодействия процессов на почве владения ресурсами. Планирование/выполнение (эсЬес(п1 !пав/ехесп$1оп). Выполнение осуществляется путем выполнения кода одной или нескольких и при этом выполнение процесса может чередоваться с выполнением ' процессов. Таким образом, процесс имеет такие параметры, как (выполняющийся процесс, готовый к выполнению процесс и т.д.) Н щий приоритет, в соответствии с которым операционная система ос ляет его планирование и диспетчеризацию. В болыпинстве операционных систем эти две характеристики я цностью процесса.

Однако, немного подумав, читатель может убед н являются независимыми, и что операционная система может ра отдельно друг от друга. В некоторых операционных системах (в особе,. цавно разработанных) так и происходит. Чтобы различать две при ше характеристики, единицу диспетчеризации обычно называют и,. ~геас1) или облегченным процессом (11йЫьУе1дЫ ргосезв), а единицу -Урсами — процессом (ргосевз) или заданием (Фаз)с).! 1 Увы, последовательность в использовании терминологии не выдерживав токаи степени. В операционной системе Оя/Зуб, предназначенной для мей М, концепции адресного пространства и задания примерно соответствую ют., ям процесса и патака, описанным в этом разделе.

Кроме того, термин оцесс (Нуййае!уп! ргосегз) используется в трех значениях; (1) он эквивален ну поток (Игеас(), (Лг обозначает поток особога вида, известный как поток ЯдРа (негпеИеае1 гйгеад/ или (3) (в опеРаЦионной системе 301апгг злеменпгг . 1юьций потоки на уровне пользователя в потоки на уровне ядра. л1(но1.опоточность Многопоточностью (пш1ЫЬгеас11пд) называется способность операционной сис„,, поддерживать в рамках одного процесса выполнение нескольких потоков. Тра„Паннмй ПОДХОД, ПРИ КОторсм каждый ПРоцесс преДставляет собой единый поток „лнения, называется однопоточным подходом.

Две левые части рис. 4.1 иллюст„уют однопоточные подходы. МБ ВОБ является примером операционной системы, „асабной подДерживать не более одного однопоточного гюльзовательского процесса. д гпе операционные системы, такие, как разнообразные разновидности 11ЬПХ, подживают процессы множества пользователей, но в каждом из этих процессов мот содержаться только один поток. В правой половине рис, 4.1 представлены многопоточные подходы. Примером системы, в которой один процесс может расщепяться на несколько потоков, является среда выполнения Зама.

В этом разделе нас будет интересовать использование нескольких процессов, каждый из которых поддерживает выполнение нескольких потоков. Подобный подход принят в таких опеРационных системах, как ОБ/2, %1пс)ожэ 2000 (%'2К), 1дппх, Бо1аг(з, МасЬ, и ряде других. В этом разделе приведено общее описание многопоточного режима, а в последующих разделах будут подробно рассмотрены подходы, использующиеся в операционных системах Ък'2К„Б01аххэ и ? 1пшх. 1 1 1 1 ! 1 ! Один процесс, 1 Один процесс, ОДнн Поток НЕСКОПЬКО П01ОКОВ '! 1 1 1 1 1 1 1 Несколько процессов, 1 пс Однсик 0010к'~ в прОцессе 1 Несколько процессов, нескОлькО п010кбв в процессе Рис.

4.1. Патоки и процессы [А/70Е971 поточной среде процесс определяется как структурная единица расмного пот деления ес Ресурсов, а также структурная единица защиты. С процессами свяследующие элементы. Виртуальное ное адресное пространство, в котором содержится образ процесса. к ° ВЩ1 ЕННЫ пц ннын доступ к процессорам, другим процессам (при обмене информацией меж у ду ними), фаилам и Ресурсам ввода-вывода (устройствам и каналам). Часть 2.

П . 4. и' отоки, симметричная многопроцессорная обработка 197 ;тек выполнения. ;татическая память, выделяемая потоку для локальных переменных. Г 1оступ к памяти и ресурсам процесса, которому этот поток принадлежит;: тот доступ разделяется всеми потоками данного процесса, 1а рис. 4.2 продемонстрировано различие между потоками и процессами с точ . :ния управления последними. В однопоточной модели процесса в его пред входит управляющий блок этого процесса и пользовательское адресное отво, а также стеки ядра и пользователя, с помощью которых осуществля ы процедур и возвраты из них при выполнении процесса.

Когда выполне оса прерывается, содержимое регистров процессора сохраняется в памяти. поточной среде с каждым процессом тоже связаны управляющий блок и е пространство, но теперь для каждого потока создаются свои отдельные сте же свой управляющий блок, в котором содержатся значения регистров, при„ т и другая информация о состоянии потока. „кт.,'-„- -'.:.,:., ~туппааппющийи Упрааляащий бпокпотока Упраапяющи бпокпотока Стек попьзоаателат Стек арра т"'$ Ф"::;Й .т! „~,В 4.2. Одиопоточттая и многопоптояттая модели процесса Таким образом, все потоки процесса разделяют между собой состояние и рес того процесса. Они находятся в одном и том же адресном пространстве и име уп к одним и тем же данным.

Если один поток изменяет в памяти какие-то , рамках процесса могут находиться один или несколько потоков, каждый;.'; Орых обладает следующими характеристиками. Остояние выполнения потока «выполняющийся, готовый к выполнению: т.д ). ,охраненный контекст не выполняющегося потока; один из способов рас-"' мотрения потока — считать его независимым счетчиком команд, работаю.. ~атм в рамках процесса. дру' Отоки во время своего достУпа к этим Данным имеют возможнО отследить эти изменения.

Если один поток открывает файл с правом чтения, другие потоки данного процесса тоже могут читать из этого файла. Перечислим основные преимущества использования потоков с точки зрения производительности. 1. Создание нового потока в уже существующем процессе занимает намного меньше времени, чем создание совершенно нового процесса. Исследования, проведенные разработчиками операционной системы МасЬ. показали, что скорость создания процессов по сравнению с такой же скоростью в ~3И1Х- совместимых приложениях, в которых не используются потоки, возрастает в 10 раз ~ТЕЪ'А871.

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

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

При получении каждого нового файлового запроса программа управления файлами может порождать новый поток. Из-за того, что серверу приходится обрабатывать очень большое количество запросов, за короткий промежуток времени будут создаваться и удаляться множество потоков. Если такая серверная программа работает на многопроцессорной машине, то на разных процессорах в рамках одного процесса могут одновременно выполняться несколько потоков. Кроме того, из-за того, что процессы или потоки Файлового сервера должны совместно использовать данные из файлов. а следовательно, координировать свои действия, рациональнее использовать потоки и общую об-'тасть памяти, а не процессы и обмен сообщениями.

Потоковая конструкция процесса полезна и на однопроцессорных машинах. Оиа помогает упростить структуру программы, выполняющей несколько логически различных Функций. В Ц ЕТДт88 38) приводится четыре следующих примера использования потоков а Однопользовательской многозадачной системе. абота в риоритетном и Фоновом режимах. В качестве примера можно ~р~~~с~и про"Рамму электронных таблиц, в которой один из потоков может отвечать за отображение меню и считывать ввоД пользователя а другои выполнять команды пользователя и обновлять таблицу. Такая схема часто увеличивает воспринимаемую пользователем скорость работы приложения, 'Часть 2.

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

Тип файла
DJVU-файл
Размер
34,99 Mb
Тип материала
Высшее учебное заведение

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

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