рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Лекция N 10 Управление вводом-выводом данных в ЭВМ

Лекция N 10 Управление вводом-выводом данных в ЭВМ - раздел Науковедение, КУРС ЛЕКЦИЙ по дисциплине ОПЕРАЦИОННЫЕ СИСТЕМЫ   Одной Из Систем, Имеющихся В Любой Эвм Общего Назначения, Явл...

 

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

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

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

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

Подсистема ОС для управления вводом-выводом с точки зрения программных процессов является интерфейсом с ПУ. Различают три типа действий с ПУ:

1. операции чтения-записи данных;

2. операции управления ПУ;

3. операции по проверке состояния ПУ.

 

Методы управления ПУ

 

Используют в основном 2 метода управления ПУ - прямой и косвенный.

1. Прямой метод управления

 

 

Рис.1. Обобщенная схема прямого управления

 

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

Например, в ЭВМ IBM PC с микропроцессором (МП) 80х86 существуют кокоманда in для чтения из порта ПУ данных (байта) в МП и команда out для записи в порт данных, поступающих из МП.

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

2. Косвенный метод управления

 

Рис.2. Обобщенная схема косвенного управления

 

Канал является специальным процессором, который, получив определенную команду от ЦП, затем ведет обмен самостоятельно по своей программе. При реализации этого метода ЦП, канал и ПУ работают параллельно. Для синхронизации параллельной работы ЦП и канала используют различные средства:

1. флажок занятости канала, опрашиваемый ЦП;

2. вместо того, чтобы ЦП периодически опрашивал этот флажок, можно использовать запись команд для канала в специально выделенные ячейки ОП, откуда канал их сосчитает и начнет выполнять после завершения предыдущей операции (такой принцип использован в ЕС ЭВМ и в ЭВМ IBM 360/370);

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

 

Использование буферов при проведении обменов

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

 

 

Рис.3. Использование одного буфера в процессе обмена с ПУ

 

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

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

· выделять и уничтожать буферы в ОП;

· определять их назначение (для ввода или для вывода);

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

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

 

 

Рис.4. Использование двух буферов в процессе обмена с ПУ

 

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

  ПУ - буфер 1   ПУ - буфер 2        
                t  
                   
                t  
      перепись из буфера 1 в рабочую зону программы   перепись из буфера 2 в рабочую зону программы
       

Рис.5. Временная диаграмма использования двух буферов

 

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

 

Принципы, заложенные в подсистему управления вводом-выводом в ОС UNIX

 

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

ü Другая особенность подсистемы ввода-вывода в ОС UNIX заключается в том, что она работает как синхронная система. Любой программный процесс, требующий ввода данных, приостанавливается в точке, где он выдал запрос, до тех пор, пока не завершится операция ввода из указанного специального файла. При выводе процесс приостанавливается в точке запроса на вывод данных вплоть до того момента, пока выводимые данные будут приняты системой в буфер пользователя. Такая организация ввода-вывода приводит в мультипрограммном режиме работы ЭВМ к повышению эффективности использования времени ЦП вследствие уменьшения простоев этого ЦП. Заметим, что в системах реального времени (СРВ) чаще используется асинхронный принцип работы подсистемы ввода-вывода, так как в этом случае уменьшается время реакции СРВ на события, требующие немедленной обработки.

ü Для управления ПУ в ОС UNIX используются 2 вида интерфейса с этими ПУ: байт ориентированный и блок ориентированный. Блок ориентированный интерфейс обеспечивает связь с ПУ, к которым можно адресоваться как к последовательности блоков по 512 байт. Такими ПУ в основном являются ВЗУ. Основой организации такого интерфейса является система буферизации, поддерживаемая в ОП. Байт ориентированный интерфейс используется для доступа к печатающему устройству, клавиатуре дисплея и некоторым другим устройствам, при этом буферизация не используется.

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

ü Некоторые из изложенных принципов построения системы ввода-вывода ОС UNIX были реализованы в ОС, созданных позднее, например, в MS DOS, функционирующей в ЭВМ IBM РС с МП типа 80х86.

 

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

 

 

Лекция N 11 Система управления данными (файловая система)

 

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

1. существующей подсистемы управления вводом-выводом;

2. использования специальных аппаратных средств;

3. специальных информационных структур.

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

 

Рис.1. Схема взаимодействия программных процессов и файлов

 

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

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

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

3. Средства, обеспечивающие распределение внешней памяти для хранения файлов и ее освобождение при уничтожении файлов;

4. Средства учета расположения файлов в целом и их составных частей.

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

 

Логическая организация файлов

 

Арабские цифры от 0 до 9, буквы латинского и других алфавитов, специальные знаки (/, *, (, ) и т.д.) представляются в ЭВМ в виде комбинации битов, в настоящее время чаще всего 8-битовых (байтов). Эти комбинации обычно называются символами. Группа взаимосвязанных символов называется полем. Группа взаимосвязанных полей носит название записи. Например, запись, относящаяся к студенту, может содержать отдельные поля, где будут указаны идентификационный номер, фамилия, имя, отчество, адрес, изучавшиеся дисциплины и отметки по ним и т.д.

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

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

 

1. Последовательная организация.

 

Записи располагаются в физическом порядке, а сам файл рассмат ривается как одномерный массив логических записей, при этом доступ к логическим записям - последовательный, т.е. после записи или считывания i-й записи доступна только (i+1)-я запись. Такая организация применяется для файлов, хранящихся на магнитной ленте и выводимых на печать. Очевидный недостаток такой организации для файлов, хранимых на дисках, состоит в большом времени поиска записи в файле.

 

2. Библиотечная организация.

 

В этом случае фактически имеется файл, состоящий из последовательных подфайлов, называемых элементами, или членами файла. Начальный адрес каждого такого элемента хранится в каталоге (директории) файла.

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

 

Каталог библиотеки          
Название элемента и его начальный адрес       . . .    
А В С       Z
Библиотека            
Элемент D Элемент А Элемент W Элемент С      
Элемент В . . . Элемент К      

 

Рис.2. Структура библиотечной организации

 

Физическая организация файлов

 

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

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

 

1. Распределение при помощи цепочек блоков.

 

 

Рис.3. Цепочка блоков

 

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

 

2. Распределение при помощи цепочек индексов

 

 

Рис.3. Цепочка индексных блоков

 

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

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

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

Подобный способ распределения использован в ОС UNIX.

 

3. Распределение при помощи таблиц поблочного отображения

 

 

Рис.4. Таблица поблочного отображения файлов

Принцип действия этого способа ясен из рис.4. Преимущество способа заключается в простоте процедуры изменения структуры файла и наглядности распределения дискового пространства. Способ используется в MS DOS.

Организация каталогов файлов в ОС

 

Перечислим основные типы каталогов файлов:

1. одноуровневые, т.е. для одного диска существует единый каталог (использовался, например, в ОС РАФОС для СМ ЭВМ);

2. многоуровневые иерархические, связанные в древовидную структуру (примеры - UNIX и MS DOS); полное имя файла задает траекторию перехода между каталогами различного уровня, при этом любой каталог рассматривается как файл, имеющий собственное имя.

 

Дескриптор файла (ДФ)

 

Другие названия дескриптора - блок управления файлом, элемент каталога файлов.

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

Типичный ДФ содержит следующие данные:

q символическое имя файла;

q тип файла (объектная программа, программа, записанная на языке программирования, например, С++ и т.п.);

q атрибуты файла, в том числе данные, используемые для доступа;

q дата и время создания файла;

q данные о размещении файла во внешней памяти;

q тип организации файла (последовательная, индексно-последовательная и т.д.);

q дата и время последней модификации;

q счетчики активности доступа (например, количество обращений по чтению).

Отметим, что ДФ в MS DOS содержит данные, приведенные в пунктах с 1-го по 5-й.

Как правило, ДФ хранятся во внешней памяти и передаются в ОП только после открытия соответствующего файла. Дескриптором файла управляет файловая система, хотя в некоторых ОС, например, в MS DOS пользователь может к обратиться к ДФ с помощью специальных программных средств, например, с помощью пакета PC TOOLS.

Матрица управления доступом (МтУД)

 

Один из возможных способов управлением доступом к файлам состоит в создании двумерной МтУД, в которой указываются все пользователи и все файлы системы.

Пользователифайлы  
 
 
 
 
 
 

 

В общем случае элементы МтУД содержат более одного бита, так как у пользователей могут быть более чем 2 различных способа доступа к файлу, например, только для чтения, только для выполнения (программный файл), для чтения-записи и т.п.

 

Управление доступом в зависимости от класса пользователей

 

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

Обычно предусматривают следующие категории пользователей:

1. "Владелец"; как правило, это пользователь, который создал этот файл;

2. "Указанный владельцем", т.е. пользователь, которому разрешил работать создатель файла;

3. "Группа", или "проект"; пользователи часто являются членами группы, совместно работающими над конкретным проектом, и в этом случае всем членам данной группы предоставляется возможность работы с данным файлом;

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

 

Копирование и восстановление информации

 

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

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

 

Лекция N 12 Оценка производительности вычислительной системы (ВС)

 

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

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

 

Необходимость контроля и оценки производительности ВС

 

Следует выделить 3 цели, для достижения которых обычно исследуют производительность ВС.

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

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

v Контроль производительности, для чего производится сбор и накопление данных об имеющейся ВС или какой-либо ее компоненте.

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

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

· определения наилучшей организации аппаратуры;

· выбора стратегии управления ресурсами, которая должна быть реализована в ОС;

· оценки разрабатываемой системы с точки зрения удовлетворения тем требованиям, которые предъявляются к ней по производительности.

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

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

 

Показатели производительности ВС

 

Часть показателей производительности ориентирована на пользователя (например, время ответа). Другую часть показателей, например, степень загрузки ЦП, называют системно ориентированной. Наиболее часто используют следующие показатели производительности:

§ время ответа в диалоговых системах, т.е. время от момента нажатия клавиши "ВВОД" до момента начала выдачи ответа на дисплей;

§ время реакции системы, т.е. время от момента нажатия клавиши "ВВОД" до момента выделения ВС первого временного кванта центральному процессору для обслуживания данного запроса пользователя;

§ пропускная способность, т.е. число заданий К, выполняемых за единицу времени в зависимости от числа N одновременно работающих пользователей; типовой график зависимости К(N) представлен на рис.1.

 

 

Рис.1. График зависимости пропускной способности ВС от числа пользователей

 

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

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

- простаивать,

- работать в режиме "задача";

- работать в режиме "ОС".

 

Методы оценки производительности

 

Американский ученый Лукас провел анализ наиболее важных с его точки зрения методов оценки производительности и указал их применимость для различных целей этой оценки. Учитывая, что результаты этого анализа были опубликованы в 1971 г., здесь приведены лишь те результаты, которые не потеряли актуальности до настоящего времени, а небольшая часть результатов подвергнута некоторой коррекции. В приводимой ниже таблице использованы следующие обозначения: знак "-" обозначает, что метод неприменим, "1" - метод может быть использован, но дает весьма неточные результаты, "2" - метод дает некоторую информацию, но неполон и его следует использовать совместно с другими методами, "3" - метод дает вполне приемлемые результаты.

 

  Метод оценки Цель оценки
№ п/п Оценка для выбора - ВС уже где-то имеется Проектироваие производительности (ВС еще не существует) Контроль производительности (ВС эксплуатируется)
    Аппар. ПО Аппар. ПО Аппар. ПО
Элементарные времена - - -
Смеси команд - - -
Аналитические модели
Измерительные программы
Имитационные модели
Мониторы (программные, аппаратные, аппаратно-программные)

 

1. Элементарные времена

 

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

 

2. Смеси команд

 

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

o выбор весов для частоты появления каждой команды весьма субъективен;

o метод не дает информации для оценки ПО в целом;

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

3. Аналитические модели

 

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

o исследователь должен обладать высокой математической квалификацией;

o точные решения существуют лишь для простейших моделей;

o при упрощении моделей результаты могут сильно исказиться.

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

 

4. Измерительные программы (ИП)

 

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

Следует также отметить, что благодаря перечисленным факторам, а также учитывая простоту рассматриваемого метода, ИП стали, вероятно, одним из самых популярных методов.

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

или иногда ,

где П(ср) и П(баз) - средние производительности соответственно сравниваемой и базовой ЭВМ на выполняемой ИП. Получение оценок для производительности ЭВМ выполняют отдельно для операций с фиксированной запятой и с плавающей запятой, для чего используют различные пакеты ИП.

Такими популярными ИП в настоящее время являются, например, пакеты SPECint92 и SPECfp92 для оценки производительности на операциях с фиксированной и плавающей запятой соответственно.

 

5. Имитационные модели

 

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

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

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

 

6. Измерительные мониторы

 

Измерительные мониторы (ИМн) могут быть аппаратными, аппаратно-программными и программными. Аппаратные ИМн широко использовались в период 60-х - 80-х г.г., однако в настоящее время они используются достаточно редко, так как при нынешнем уровне развития микроэлектроники их подключение к нужным точкам ВС стало в большинстве случаев весьма затруднительно, а то и совсем невозможно. Основным способом использования аппаратно-программных ИМн является возбуждение сигнала какого-либо аппаратного прерывания при возникновении наблюдаемого события, а затем обработка этого прерывания с помощью программы-обработчика этого прерывания. Наибольшее распространение в настоящее время получили программные ИМн благодаря простоте своего подключения к эксплуатируемому на ВС штатному ПО. Некоторые фирмы-разработчики ПО выпустили коммерческие ИМн; примером является анализатор WindView динамического поведения системного и прикладного ПО для ОС реального времени VxWorks, с помощью которого весьма эффективно производить отладку ПО, разработанного для работы в среде этой ОС, а также исследовать поведение в целом самой разработанной системы реального времени.

 

 

– Конец работы –

Эта тема принадлежит разделу:

КУРС ЛЕКЦИЙ по дисциплине ОПЕРАЦИОННЫЕ СИСТЕМЫ

среднего профессионального образования... Краснодарский гуманитарно технологический колледж... Краснодарского края...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Лекция N 10 Управление вводом-выводом данных в ЭВМ

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

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

Понятие операционной системы и цели ее работы
После краткого вводного обзора перейдем к основным понятиям и их определениям. Прежде всего, дадим определение операционной системы. Операционная система(ОС

Компоненты компьютерной системы
Чтобы лучше понять место и роль операционной системы в процессе вычислений, рассмотрим компьютерную систему в целом. Она состоит из следующих компонентов: Аппаратура (hardwar

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

Ключевые термины
CISC (Complicated Instruction Set Computer – компьютер с усложненной системой команд) –исторически первый подход к компьютерной архитектуре, суть которого в усложненности в системы

Внешние устройства- см. Устройства ввода-вывода
Гибридный процессор– новый, все шире распространяющийся подход к архитектуре компьютеров, при котором процессор имеет гибридную структуру – состоит из (многоядерного) центрального

Краткие итоги
В настоящее время наблюдается бурное развитие операционных систем (Windows, Linux, Solaris, MacOS и др.) , в том числе – с открытым исходным кодом (Windows Research Kernel, Linux, OpenSolaris и др.

История ОС
В ранних mainframe-компьютерах (1940-1950 гг.), первым из которых был компьютер ENIAC (1947 г., США), операционные системы отсутствовали. Обращение к памяти в этих компьютерах осуществлялось по реа

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

Отечественные операционные системы
При анализе истории развития области ИТ следует иметь в виду особые условия, в которых развивались эти разработки как в СССР (России), так и в США, начиная с 1950-х гг. – "холодная война"

Распределение памяти в однозадачной ОС с пакетной обработкой заданий
  Рис. 2.1. Распределение памяти в простой системе пакетной обработки Оно очень простое: операционная система занимает постоянно смежную область памяти

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

Ключевые термины
FIFO (First-In-First-Out)– режим обслуживания некоторой очереди (например, очереди введенных заданий) в порядке их поступления. UNIX -первая мобил

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

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

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

Параллельные компьютерные системы и особенности их ОС.
Параллельные компьютерные системы– это мультипроцессорные системы с несколькими непосредственно взаимодействующими процессорами. Классические примеры: из зарубежных компьютеров - C

Симметричные и асимметричные мультипроцессорные системы
Симметричная мультипроцессорная система - symmetric multiprocessing (SMP) –это многопроцессорная компьютерная система, все процессоры которой равноправны и используют одну и ту же

Архитектура компьютерной системы
    увеличить изображение Рис. 4.1. Архитектура компьютерной системы. Компьютерная система имеет модульную структуру.

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

Обработка прерываний
Операционную систему можно рассматривать как программу, управляемую прерываниями (interrupt-driven program).Прерывание центрального процессора передает управление подпрограмме обра

Структура памяти
Основная (оперативная) память– единственная крупная часть памяти, к которой процессор имеет непосредственный доступ. Как известно, содержимое основной памяти не сохраняется после п

Аппаратная защита памяти и процессора
В целях совместного использования системных ресурсов (памяти, процессора, внешних устройств) несколькими программами, требуется, чтобы аппаратура и операционная система обеспечили невозможность вли

Ключевые термины
Bluetooth– интерфейс для беспроводного подключения (с помощью радиосвязи) к компьютеру мобильных телефонов, органайзеров, наушников, плейеров и многих других видов устройств.

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

Вопросы
Назовите основные компоненты, из которых состоит настольная или портативная компьютерная система. Что такое системная шина и какова ее роль в компьютерной системе? Что такое

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

Лекция N 9 Управление памятью
  Организация оперативной памяти (ОП) и управление ей - одна из главных задач, решаемых ОС. Под организацией ОП понимают, каким образом представляется и используется эта память. При м

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

Лекция N 14 Общие принципы функционирования операционной системы MS DOS
  В настоящее время одной из наиболее распространенной ОС является однопользовательская и однозадачная MS DOS, используемая в ЭВМ с ЦП 8086 или 80х86, где х > 1. Рассмотрим основны

Лекция N 15 Режимы работы ЭВМ IBM PC с центральным процессором (ЦП) 80386 и выше
  ЭВМ IВМ РС с ЦП 8086 могла работать только в так называемом реальном режиме. Начиная с ЦП 80286 появилась возможность испозования защищенного режима работы, однако вскоре появился б

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги