В. Столлингс - Операционные системы (1114679), страница 11
Текст из файла (страница 11)
2.1. Предположим, что для выполнения заданий УОВ2 и ХОВЗ использова.' не проце цессора минимально, и задание ?ОВЗ постоянно обращается к диску и , В простой среде с пакетной обработкой эти задания выполняются поннтеру. ~ователь лько. Для завершения,ЮВ1 требуется 5 мин. Задание ?ОВ2 должно ка пройдут эти 5 мин, после чего оно выполняется в течение 15 мин. дать, пака Оо истечени нии 20 мин начинает работу задание ?ОВЗ; его выполнение заканчивается врез з 30 мин после того, как оно было принято на обработку. Средний процент испо льзования ресурсов, производительность и время отклика показаны в табл.
2.2 соответствующем однозадачности, а на рис. 2.6,гт показано исстолбце та пользован ние различных устройств в этом режиме. Очевидно, что эффективность нспользова , ьзования всех ресурсов, усредненная по всему периоду времени (30 мин), яется крайне низкой. Т„блица 2.1. Свойства трех программ-примеров Таблица 2.2. Влияние многозадачности на использование ресурсов Теперь предположим, что задания выполняются одновременно под управлением многозадачной операционной системы. Из-за того что они используют разные ресурсы, их совместное выполнение на компьютере длится минимальное 'р' ° (при условии, что заданиям ?ОВ2 и ?ОВЗ предоставляется достаточно ""оцессорного времени для поддержки осуществляемого ими ввода и вывода в ак™Бом состоянии).
Для выполнения задания ?ОВ1 потребуется 5 мин, но к ~му времени задание ?ОВ2 будет выполнено на треть, а задание ЛОВЗ вЂ” на пол лозину. Все три задания будут выполнены через 15 мин. Если посмотреть на стол олбец табл. 2.2, соответствующий многозадачному режиму, его преимущества статт ~ттУт очевидны, как и из гистограммы, приведенной на рис. 2.6,6. Рлав ~ава 2.
Обзор операционных систем Процессор ) 00аа уарнинал Принтар 0% Быноананиа ) заданий 25 ЗО Высананис гаданий О то )5 20 Мин утк а) Ойнсааланнссть )О Минуты б) Многоаадач Рис. Й.б. Гистттаграмны исполааасанал ресурсов Рабата многозадачной пакетной системы, как и работа простой п ' системы, базируется на некоторых аппаратных особенностях компыате более значительными дополнениями, полезными для многозадачности, я аппаратное обеспечение, поддерживающее прерывания ввода-вывода, и доступ к памяти. Используя эти назможности, процессор генерирует ввода-вывода для одного задания и переходит к другому на то время, п траллерам устройства выполняется ввод-вывод. После завершения апе да-вывода процессор получает прерывание, и управление передается пра обработки прерываний из состава операционной системы. Затем опер система передает управление другому заданию.
Многозадачные операционные системы сложнее систем последов обработки заданий. Для того чтобы можно было обрабатывать несколь ний одновременно, ани должны находиться в основной памяти, а для эт буется система управления памятью. Кроме того, если к работе готовы ка заданий, процессор должен решить, какое из них следует запустить, необходим некоторый алгоритм планирования. Эти концепции обсужд, ~ледующих разделах данной главы. Часть 1. Основные по Системы, работающие в режиме разделения времени Использование многозадачности в пакетной обработке может при существенному повышению эффективности. Однако для многих заданий:.
тельно обеспечить такой режим, в котором пользователь мог бы непасред „ '',действовать с компьютером. В самом деле, во многих случаях интеракы й режим является обязательным условием работы. в,',: рана 11нагозадачность не только позволяет процессору одновременно обрабатынеско сколько заданий в пакетном режиме, но может быть использована и для ,батин -и нескольких интерактивных заданий Такую организацию называют ием времени, потому что процессорное время распределяется между вделан ыми пользователями.
В системе разделения времени несколько пользой одновременно получают доступ к системе с помощью терминалов, а опегелей ад ионная ая система чередует исполнение программ каждого пользователя через промежутки времени. Таким образом, если нужно одновременно абслуадые про пользователей, каждому из них предоставляется лишь 1/я часть полной ,ть я па ти компьютера, не считая затрат на работу операционной системы. Однако скорости к ,мая ва внимание относительно медленную реакцию человека, время отпр„кима клика на на компьютере с хорошо настроенной системой будет сравнимо со време- и — акции пользователя. вем ре Как пакетная обработка, так и разделение времени используют многозадачность. ть. Основные отличия этих двух режимов перечислены в табл.
2.3. Т~блица 2.3. Пакетная многозадачность и разделение времени Пакетная многозадачность Разделение времени Уменыпенне времени отклика Максимальное использова- ние процессора Основная цель Команды, вводимые с терминала Источник указаний операционной системе Команды языка управления заданиями, помещаемые в задание '~зуава а 2 Обзор операционных систем Одной из первых операционных систем разделения времени была система СТБЯ ~Сагпра$1Ые Титре-ЯЬаггпд Яузсепт) [СОВВ621, разработанная т Массачусет- ском технологическом институте группой, известной как Рго)ест МАС.
Первона- чально система была разработана для 1ВМ 709, а затем перенесена на 1ВМ 7094. Па сравнению с более поздними системами, СТЯЯ была довольно примитивна. Она Работала на машине с основной памятью емкостью 32000 36-битовых слов, из "старых 5000 слов занимал монитор. Когда управление должно было быть передано о"вредному интерактивному пользователю, его программа и данные загружались в стальные 27000 слов основной памяти. Программа всегда загружалась так, что ее ~чало находилось в ячейке номер 5000, что упрощало управление как монитором, " памятью. Приблизительно через каждые 0,2 с системные часы генерировали прерывание.
При каждом прерывании таймера управление передавалось операцион- ной " ~и~теме, и процессор мог перейти в распоряжение другого пользователя. Таким сбп данные текущего пользователя через регулярные интервалы времени вы- ужались, а вместо них загружались другие. Перед считыванием программы и даннаваго пользователя программа и данные предыдущего пользователя ззписыва- лнсь "' диск для сохранения до дальнейшего выполнения.
Впоследствии, когда оче- Редь з, го пользователя наступит снова, код и данные его программы будут аиовлены в основной памяти. " по тобы уменьшить обмен с диском, содержимое памяти, занимаемое данны- вовой льаавателя, записывается на него лишь в том случае, если для загрузки программы не хватает места. Этот принцип проиллюстрирован на рис.
2.7. ° ЮВ1: е ЛОВ2: е дОВЗ: ° ЮОВ4: 15 000 20 ООО 5000 10 ООО Мо ЮВ3- 16000 (дОВ 2): 32006 ° Процессы, ° Управление памятью. а Защита информации и безопасность. 32006 32600 4 Рис. 2.7. Работа СТВО ПРоцеесы Часть 1. Основные и Предположим, что всего работает четыре".~пользователя, которым нуж дующие объемы памяти: Сначала монитор загружает за.дание ХОВ1 и передает ему управл Затем он принимает решение передать управление заданию ЛОВ2. Из-зФ- что ЛОВ2 занимает больше памяти, чем ЛОВ1, сначала нужно сохранить ЮОВ1, а затем можно загружать ЮОВ2 (б).
Затем для обработки загр дОВЗ. Но поскольку это задание меньше, чем ЛОВ2, часть задания дОВ2. оставаться в основной памяти, сокращая время записи на диск (в). Позже; тор вновь передает управление заданию ЛОВ1. Чтобы загрузить его в п диск необходимо записать еще часть задания дОВ2 (г). При загрузке ЛОВ4 в памяти остается часть заданий ЛОВ1 и ЛОВ2 (д). Если теперь будет: визировано задание дОВ1 или дОВ2, то потребуется лишь частичная его ка.
Следующим в этом примере запускается задание дОВ2. Для этого треб, чтобы дОВ4 и оставшаяся в памяти часть ЛОВ1 были записаны на диск, а:,: мять была считана недостающая часть ЛОВ2. Подход СТЯЯ по сравнению с современными принципами разделения ни является примитивным, но вполне работоспособным.
Его простота по использовать монитор минимальных размеров. Из-за того что задание все я алось в одно и то же место в памяти, не было необходимости применять во ~я загрузки методы перемещения (которые рассматриваются позже). НеобхоФре был лишь метод записи, позволяющий уменьшить активность диска.
Рабо'дям на машине 7094, СТЯЯ могла обслуживать до З2 пользователей. та" С появлением разделения времени и многозадачности перед создателями операдяонн нных систем появилось много проблем. Если в памяти находится несколько зв,аний. й, нх нужно защищать друг от друга, иначе одно задание может, например, изменит нть данные другого задания. Если в интерактивном режиме работают несколько пол ьзо зователей„то файловая система должна быть защищена, чтобы к каждому контному файлу доступ был только у определенных пользователей.
Нужно разрекретн ь конфликтные ситуации, возникающие при работе с различными ресурсами, напр'- имер с принтером и устройствами хранения данных. Нами будут рассмотрены „н другие возможные проблемы, а также пути нх решения. Операционные системы относят к числу самых сложных программ. В этом проявляется стремление их разработчиков сделать системы такими, чтобы они удовлетворяли требованиям удобства и эффективности и прн этом не утратили способности к развитию. Согласно [ВЕКХЗОа), в процессе развития операционных систем были проведены исследования в пяти основных направлениях. ° Планирование и управление ресурсами. ° Структура системы.
Каждое из этих направлений можно охарактеризовать набороь' абстрактных принципов, разработанных для решения сложных прикладных задач. В основном Развитие современных операционных систем также происходит по пяти перечисленным выше направлениям. Краткий их обзор, приведенный в этом разделе, поможет читателю получить представление о содержании большей части настоящей книги.
Одной из основополагающих концепций, помогающих понять структуру операционных систем, является концепция процессов. Этот термин впервые был применен в 60-~ " годах разработчиками операционной системы Ми1(1сз 10А1 Е681 и с тех пор 'Роно используется. Есть много определений термина "процесс", в том числе: Ф выполняющаяся программа; экземпляр программы, выполняющейся на компьютере; ° об бъект, который можно идентифицировать и выполнять на процессоре; В "н"нца активности, которую можно охарактеризовать единой цепочкой пос ~следовательных действий, текущим состоянием и связанным с ней набосистемных ресурсов. ,,~'ава 2. Обзор операционных систем Данная концепция станет более понятной по мере освоения матери В процессе развития компьютерных систем при решении проблем, ных с распределением времени и синхронизацией, был сделан опред вклад в развитие концепции процесса: разработаны системы групповойки нескольких программ, разделения времени и транзакций в реальном: ни.