LectOS1po12 (1085769), страница 3

Файл №1085769 LectOS1po12 (Лекции по операционным системам) 3 страницаLectOS1po12 (1085769) страница 32018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Операции над процессами

ОС, управляющие процессами, должны иметь возможность выполнять определенные операции над процессами, в том числе:

  • создание (образование) процесса;

  • уничтожение процесса;

  • возобновление процесса;

  • изменение приоритета процесса;

  • блокирование процесса;

  • пробуждение процесса;

  • запуск (выбор) процесса.

  • Создание процесса состоит из многих операций, включая:

  • присвоение имени процессу;

  • определение начального приоритета процесса;

  • формирование БУП;

  • выделение процессу начальных ресурсов.

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

Основные функции ядра ОС

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

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

Ядро ОС обычно содержит программы для реализации следующих функций:

  • обработка прерываний;

  • создание и уничтожение процессов;

  • переключение процессов из состояния в состояние;

  • организация взаимодействия между процессами, в том числе синхронизация процессов;

  • поддержка операций ввода-вывода;

  • поддержка распределения и перераспределения памяти;

  • поддержка работы файловой системы;

  • поддержка механизмов вызова-возврата при обращении к процедурам ОС;

  • поддержка функций по ведению учета работы ЭВМ и ВС в целом.

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

Планирование загрузки процессоров

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

Уровни планирования

Для ЭВМ 2-го и отчасти 3-го поколений основным режимов функционирования была пакетная обработка. Суть ее состояла в том, что из задач, сданных пользователями для решения на ЭВМ и введенных в нее оператором этой машины, ОС формировала так называемые задания. В любой момент времени задание состояло из нескольких задач. Поэтому для рассматриваемых ОС можно было говорить одвух уровнях планирования загрузки ЦП:

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

  • краткосрочном, или диспетчерском планировании, т.е. планировании на нижнем уровне самих процессов.

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

Основные цели планирования

Дисциплина планирования должна:

1. быть "справедливой", т.е. одинаково относиться ко всем процессам и не задерживать достаточно долго обслуживание какого-то процесса;

2. обеспечивать максимальную пропускную способность системы, т.е. обслуживать максимальное число процессов в единицу времени;

3. обеспечивать максимальному числу пользователей приемлемые времена ответа.

Планирование с переключением и без переклячения

Планирование с переключением (ПСП) имеет место, если у процесса может быть отобран ЦП. Если ЦП отобрать нельзя, то это планирование без переключения (ПБП).

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

Использование приоритетов при планировании процессов

Приоритеты обслуживиния процессов могут быть статическими и динамическими.

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

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

Дисциплины распределения ресурсов, используемые в ОС

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

дисциплины формирования очередей на ресурс;

дисциплины обслуживания очередей.

В ВС используются ряд дисциплин обслуживания очередей, ставших классическими. Наиболее часто используются следующие одноочередные дисциплины:

1. Дисциплина обслуживания в порядке поступления: первый пришедший обслуживается первым (FIFO : first in - first out); все заявки при этом поступают в конец очереди, а первыми обслуживаются заявки из начала очереди; один из главных его недостатков - короткие процессы должны ждать полного выполнения длинных процессов, поэтому эту дисциплину не рекомендуется использовать в интерактивных системах, таккак она не может обеспечить приемлемые времена ответа; обычно эта дисциплина применяется в комбинации с другими методами, например, в многоуровневых очередях с обратными связями;

2. Дисциплина обслуживания в порядке, обратном порядку поступления (LIFO : last in - first out); широко используется на практике, в частности, при использовании стеков в оперативной памяти;

3. Круговой циклический алгоритм, основанный на принципе FIFO, но в данном случае время обслуживания ограничено и меньше или равно значения кванта времени Т; если запрос не успевает быть обслуженным за время Т, то он прерывается и становится в хвост очереди; эта дисциплина достаточно эффективна в интерактивных системах, обеспечивая приемлемые времена ответа для каждого пользователя.

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

О выборе величины кванта времени

Программно-аппаратная реализация выделения процессу кванта времени Т обеспечивается аппаратными (таймером и СПП) и программными (обработчик прерывания от таймера и соответствующими блоками ядра ОС) средствами. Выбор величины Т для нахождения процесса в состоянии выполнения имеет критическое значение для эффективной работы ВС, работающей в режиме разделения времени. Обозначим через t время ответа системы, т.е. время от момента ввода задания с терминала до выдачи ответа на соответствующий дисплей. Рассмотрим характерные точки примерного графика зависимости t=f(Т). Обозначим через Т(пер) время, затрачиваемое ЦП на переключение из одного процесса в другой. При выполнении условия Т < T(пер) очевидно, что величина t будет бесконечно велика, так как все время работы ЦП будет затрачиваться только на переключение из процесса в процесс. Далее по мере роста Т величина t будет сначала уменьшаться и достигнет своего минимального значения min t; это значение Т обозначим opt Т. При дальнейшем росте Т величина t снова начнет возрастать, так как процессы с малым временем ответа будут сравнительно долго ждать, пока будет идти выполнение процессов с относительно большими временами ответа; при этом величина t будет стремиться снизу к некоторому предельному значению max t, характерному для ВС с дисциплиной обслуживания FIFO. Конечно, величина opt T меняется внутри системы в зависимости от ее нагрузки и тем более при переходе на другую систему.

Лекция N 4

Управление памятью

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

  • Стратегии выборки, которые ставят своей целью определение момента, когда следует "втолкнуть" очередной блок данных или программы в ОП;

  • Стратегии размещения - в какое место ОП следует разместить поступающую программу;

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

Иерархия памяти

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

Связное и несвязное распределение памяти

При связном распределении памяти вся программа должна занимать один сплошной, т.е. непрерывно адресуемый блок ячеек ОП. Аппаратные и программные средства, имевшиеся в ЭВМ 1-го поколения, давали возможность использовать только связное распределение памяти. При несвязном распределении памяти программа разбивается на ряд блоков, которые могут размещаться в ОП в участках, не обязательно соседствующих друг с другом. Это распределение должно поддерживаться соответствующими аппаратными и программными средствами, появившимися уже в ЭВМ 2-го поколения. Несвязное распределение памяти обладает существенным преимуществом перед связным распределением при функцио нировании мультипрограммных ОС: если в ОП не существует одного большого свободного связного участка памяти для размещения подготавливаемой к выполнению программы, то эту программу можно, как правило, разместить в нескольких участках меньшего объема, суммарный объем которых должен быть не менее требуемого объема связного участка ОП.

Блочная организация памяти

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

Адреса в системе поблочного отображения при отсутствии комбинированной организации памяти являются двухкомпонентными("двумерными").

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

Тип файла
Документ
Размер
1,18 Mb
Тип материала
Высшее учебное заведение

Список файлов лекций

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