Лекции по Основам ВТ
Лекции по Основам ВТ
ОС. Функции ОС.
Информационно вычислительная система (ИВС)-это совокупность
технических и програмных средств которые предназначены для решения задач
связаной с автоматизацией обработки информации. Взаимодействие таких
систем с внешним миром осуществляется с помощью датчиков обеспечивающие
связь с пользователями или приборами с целью обработки данных и
управления. ОС реального времени UNIX поддерживает работу
интеллектуальной оболочки.
Основная ф-я информационно вычислительной системы представление услуг
для решения традиционных задач: 1Управление инфой (хранение,введение,
поиск, организация связей и т.д.)2разработка и отладка программ 3
эксплуатация программ. Можно считать что савокупность таких услуг
представляет для пользователя некоторую абстракцию или виртуальную
машину в противоположность реальной машине существующей физически.
Описание этих услуг и правил конкретного пользователя в этих условиях
образует интерфейс ОС. С развитием технических средств уровень
абстракции в окружении ОС (входной язык)повышается. Объекты или операции
расмотреные в качестве эл-х для конкретной абстр-й машины реализуется с
помощью более сложных операций реальной физической машины. Кроме того
пользователи одной и той же ИВС должны иметь возможность общатся с
различными абстрактными машинами.
Концептуально сист. удобно расм-ть с помощью 2-х ф-й : 1 Ф-ии общие
для широкого круга применения, реализуемые системными программами, 2 Ф-
ии необ-е для решения конкретных задач (утилиты) реализуемые конкретными
программами. При этом в прикладных программах исп-ся возм-ти обращения к
системным программам.
Рассмотрим иерархическую структуру системы
прикладные программы, сист-е прогр-ы, физическая машина Здесь каждый
“слой “ использует ресурсы слоя расположенного под ним, и формирует
интерфейс для предоставления . своих ресурсов верхнему слою (автомат
настройки). Интерфейс самого верхнего слоя является интерфейсом всей
системы. Эта схема описывает декомпозицию системы очень приближенно.
Границы между слоями могут быть подвижными динамическими(например,
программа разл-я как прикладная может быть включена как системная если
она постоянно используется ) . Некоторые ф-ии представленые в виде сист-
й программы могут быть реализованы микропроцессором если это необходимо
и оправдано экономией и удобством. Савокупность сист-х программ обычно
имеют 2 уровня. Ср-ва и услуги (компиляторы, загрузщики, редакторы,
служеб-е програм-ы , компиляторы, системное ПО ), компоненты системного
ПО или сама ОС.Жесткой границы здесь нет.
Основные ф-ии ОС можно класифицировать по 2-м признакам : 1)Ф-ии
реализуемые виртуальными машинами: а)управление инфой (структурирование
, обеспечение сохранности, использование имен (виртуальная
память),передача данных (ввод/вывод)), б) выполнение(последовательное
или паралельное выполнение программ, компоновка прог и т.д.) , в)
дополнительные услуги (помощь при отладке, обработка и прерывания
аварийных ситуаций, изменение таймера ) .2) Ф-ии контроля и
распределения ресурсов : управление физическими ресурсами (выделение
оперативной памяти, внешней памяти, устройств ввода/вывода),
распределение и обмен инфой между пользователями , защита от
несанкционированого доступа, дополнительные услуги (выдача счетов за
использованые ресурсы, сбор статистики, тестирование )
Развитие ОС. 1-е ОС имели пошаговое выполнение программ с
непосредственным изменением ячеек памяти(асемблеры, компиляторы,
отладчики и программы ввода вывода) эти программы созданы с целью
выполнения всей последовательности работ ( организация данных и
выполнение прикладных программ, подготовленных заранее и учитывающих
переход от одной задачи к непосредственно другой .Основная ф-я ОС этого
поколения – управление ресурсами(памятью, процессором, вводом/выводом ).
Автоматизация управления позволяло наделить ОС ф-ми защиты от порчи и
ошибок. Ограничение времени доступа к процессору чтобы устранить
блокирование всей работы(зацикливание в одной проге ), надзор за
вводом/выводом, чтобы избежать цикл. обращ переферийных
устройств.,защита зоны памяти от ошибок пользовательских программ.
МУЛЬТИПРОГРАМИРОВАНИЕ И РАЗДЕЛЕНИЕ ВРЕМЕНИ 1)Введение автономных
специализированных процессоров для передачи инфы(каналов или устройств
обмена ) позволяющие освободить центральный процессор от полного обесп-
я ввода/вывода 2) мультипрогр-е связанное с разделением памяти сразу для
нескольких работ(Повысило производительность процессора за счет
нескольких систем ввода/вывода) 3) Работа в режиме реального времени
восстановила возможность интерактивного общения с машиной , предоставив
возможность пользоваться общими услугами.
Рассмотрим влияние этих 3-х компонентов на ОС а) буферный
ввод/вывод(канал или устройство обмена представляет собой процессор
выполняющий автономно(паралельно с обработкой инфы)операции ввода/вывода
) .Ц.П. и каналы имеют доступ к общей информации в памяти. Поэтому
одним из важных значений ЦП –скорость обработки, а каналов-скорость
передачи.
Мульти програмирование Для обеспечения ввода/вывода память разделена
на зону для буфера ввода/вывода и на рабочую зону, при этом задания
обрабатываются последовательно,а ввод/вывод и выполнение задания
происходит паралельно.
Отмечают 2-а случая: а)Если во время выполнения задания необходимо
прочесть нужные данные, то во время чтения ЦП находится в пассивном
состоянии, б) выполнение короткого задания поставленого во время
выполнения длинного задания отключается до выполнения последнего. Из
этих замечаний вытекают режимы работы ОС:а)Задание ожидает выполнение
(может использовать ЦП который освобожден другим заданием), б)выделеное
ЦП задание может быть прервано если превышаются ограничения по времени.
Достоинства и недостатки Мульти програмирования: а) сложность систем с
МП явл. более сложной т.к обеспечивает разделение памяти и взаимную
защиту программ друг от друга б) технические характеристики-МП требует
специальные устройства для перемещения програм и защиты памяти в)
использование ресурсов : более равномерно загружаются ресурсы
(ЦП,память,устройства ввода/вывода). Удобства для пользователя:
Уменьшается время обработки коротких заданий в общей последовательности
работ. Время реакции ОС минимальна за счет оптимального распределения
лишних ресурсов.
Система с распределением времени Основная ф-я предоставить каждому
пользователю эквивалент индивидуальной машины и одновременно сохранять
возможность пользоваться общими услугами. Система должна гарантировать
доступное время ответа, за счет представления процессору программы на
короткие промежутки времени(кванты).
МЕХАНИЗМЫ ВЫПОЛНЕНИЯ ПРОГРАММ Процедуры, активность и контекст. Посл-
я программа состоит из савокупности процедур обращающихся друг к другу.
С каждой из этих процедур связана отдельная- сегмент процедура. Сегмент
данных может относится как к одной процедуре так ик нескольким. Активным
состоянием называется процесс непрерывного выполнения одной процедуры .
Таким образом выполнение послед. проги состоит из ряда активных
состояний.
Контекстом активности-наз та часть инфы которая доступна ЦП во время
данного активного состояния. Этот контекст таким образом контекст ЦП
(програмные и внутренние регистры) и контекст памяти. Сегмент процедуры
и сегменты данных. Переход от одной активности к другой реализуются с
помощью спец инструкций-вызова из процедуры и возв-т из пр-ры который
производит замену контекста.
Вызов и возврат процедурыПроцедура R (вызыв-я) вызывает процедуру У с
помощью последовательности действий вызов. Которая включает следующие
этапы: а) Подготовка параметров передаваемых из R в У, б)сохранение
части контекста R до возврата из У, в)замена контекста R на контекст У.
Функционирование сопрограмм В случае управления сопрограммами
вызывающая и вызываемая процедура играют симметричные роли
(последовательность возврата идентична последовательности вызова).
Активное состояние возникшее при вызове R получает в качестве исходного
тот контекст который сохранился со времени последнего вызова процедуры
R. Последовательность замены вкл следующие этапы а) подготовка парам-в
из R вУ , б)сохранение части контекста R котор-я должна быть
использована при последующих возобновлениях, в) вост-е контекста
хранимого со временем последнего обращения к У.
Механизм посл-го выполнения содержащий процедуры или сопрограммы как
последовательность активных состояний, соотв-х этим процедурам или
сопрограммам и обеспечивающих : а) сохранение и востановление контекстов
при вызове и возврате , б)передача параметров между вызываемой и
вызвовшей программой , в) управление рабочими зонами памяти.
Процедуры ОС
.В качестве исполнительной структуры данных применяется стек
выполнения . Возможны различные варианты стеков. Отлича-ся деталями
спецификации контекста и его динамическими измененими при вызове и
возврате процедуры. Схема выполнения может быть запрограмирована
непосредственно на языке асемблера или представлена выполняемой
структурой на обычном языке програмирования. Рассмотренная модель
опирается на 2 гипотезы : а) параметры процедуры передаются по значению
при возврате из процедур передается последний результат. Б) процедуры
могут вызыватся рекурсивно. В вершине стека выполнения , при каждом
вызове процедуры создается специальня структура данных, образующая
область среды . Стек управляется с помощью 2-х указателей –база и
вершина. БАЗА- указ на базу стека (адреса )среды активной процедуры.
Вершина- указ на 1-ю свободную ячейку для создания новой среды.
Состояние стека до и после вызова. (((СХЕМА (((.Среда содержит следующую
информацию –сведения об участках хранения и связях (указатель
базы+смещение), параметры (n+1 ячейка), локальные переменные и рабочее
пространство процедуры.
Операции : а) вызов:1) выделить в стеке зону для среды (ее размер) за
исключением рабочего пространства,2) время t:=база ;база:=вершина;
вершина:=вершина+размер среды ; 3) сохранить инфу для возврата . Для
сохранения используется: предыдущая база := ВРЕМЯ; размещение адреса
возврата; 4)размещение параметров 5)выполнить переход к вызываемой
процедуре. б) Процедура возврата: 1) Разместить результат в
предусмотреных ячейках,2)востановить инфу возврата и очистить среду .
Время(t):=адрес возврата; Вершина:=адрес база;База:= предыдущая база.
3)возврат реализует процедура— произведение переход навремя.
Состояние процессора. К регистрам определяющим состояние ЦП относятся:
адресуемые регистры, управляемые программами,специализ-е регистры,
предназначеные для некоторой синтаксической инфы(синтетической)-слово. .
Инфа содержащаяся в слове сост проц-ра характеризует следующие :
состояние выполнения (активное или ожидание),режим (распоредителя или
исполнителя), маски прерывания,информация о доступном контексте в
памяти ЭВМ и соотве-х правах доступа (таблица сегментов , указатели
защиты памяти), инфа о текущем активном состоянии (условный код,
порядковый счетчик).
Прерывания-представляют собой перестановку контекста процессора
вызываемую внешними по отношению к выпол-ю инструкцией причиной.
Физически прервания представляются сигналом о прерывание работы
посылаемой не посредственно процессору этот сигнал вызывает изменение
состояние указателя проверяемого в ходе выполнения каждой инструкции.
Этот сигнал может послать другой процессор, внешнее устройство,
ввода/вывода или пользователь . Прерывания вынуждают процессор
приостановить в ближайшей точке прерывания выполнение текущей проги и
приступить к выполнению другой спец программы . Эта прога наз
обработчиком прерываний. Общая СХЕМА программы прерывания: Прерваная
прога —обработчик прерываний(сохранение контекста проги( (обработка
прерываний программы (вост-е программы(переход к новой проге .
Захваты и обращение к супервизору. Вызываются причинами связаными с
ходом выполнения инструкции. Захват сигнализирует ОС об аномалии при
выполнении инструкций. Причины- неправильные данные приводящие к
нарушению правил хода выполнения инструкции, попытка выполнения операции
запрещеной защищающим устройством, невыполняемая инструкция (адресс вне
поля памяти, обращение к несущему устройству) .
КРАТКИЙ ОБЗОР ОС.
ОС в большой степени опрелеляет представления пользователя об ЭВМ,
чем аппаратура ЭВМ. ОС- набор пограмм, обеспечивающих возможность
использования аппаратуры компьютера. Любая ОС реализует множество
различных ф-ий. Определяет интерфейс пользователя , обеспечивает
разделение аппаратных ресурсов между пользователями, дает возможность
работать с общими данными в режиме колективного пользования, планирует
доступ пользователя к ресурсам, обеспечивет эффективное использование
операций ввода/вывода , осуществляет востановление инфы и вычисление
процесса в случае сбоев и ошибок. ОС управляет : процессорами, памятью
,устройствами ввода/вывода ,и данными. ОС взаимодействует с
пользователем , системными прикладными программами ,программами и
АППАратными средствами. ПОКОЛЕНИЯ ОС .
1)нулевое поколение(40г.) в 1-х ЭВМ ОС не было. Пользователи имели
полный доступ к машинному языку и все проги писались в исходных кодах.
2)1-е поколение (50-е г.) Ос 50-х годов были разработаны с целью
ускорения и упрощения перехода с задачи на задачу. До создания этих ОС
много машинного времени тратилось в промежутках м/у завершением одной
проги и началом другой. Это было начало систем пакетной обработки,
которые предусматривали объединение отдельных пакетов в группы 3) 2-е
поколение начало 60-х годов. Были задуманы как ОС колективного
пользования с мульти програмным режимом работы и как 1-е системы
мультипроцессорного типа.В этих ОС несколько полезных программ
одновременно находится в основной памяти компьютера ,а центральный
процессор переключается от задачи к задаче. Появляются методы
обеспечивающие независимое програмирование от внешних устройств.
Появляются сист с разделением времени ,которые позволяли пользователю
взаимодействовать с компьютором при помощи пультов терминалов. В системе
разде-го вр-ни работающих в диалоговом режиме. Появл-ся 1-е системы
реального времени. 4) 3-е поколение (середина 60-х до70-х)
Многорежимные системы. Некоторые из этих ОС осуществ-т работу в
нескольких извесных режимах-пакетная обработка, разделение времени, Real
Time ,мультипроцессорный режим . Минус -они были громозкими и
дорогостоящими. Привели к сильному усложнению вычислительной установки.
5) 4-е поколение (середина 80-х до 90-х ) наиболее совершенные системы
настоящего времени. Интернет технология, глобальные и локальные сети,
технология удаленого доступа при помощи различных терминалов различных
ОС, появление микропроцессора. Усложнились проблемы защиты
инфы(хакерство). Появились виртуальные машины с распр-ми БД. АППАРАТУРА,
ПО, МИКРОПРОГРАММЫ.
Расслоение памяти или interliving этот метод применяется для
увеличения скорости доступа к основной памяти в реальной ситуации. При
обращении хотя бы к одной из ячеек памяти ни каких операций с памятью
производить нельзя. При интерливинде соседние по адресам ячейки
размещены в различных модулях памяти. Появляется возможность паралельной
работы с памятью.
Регистр перемещения обеспечивает возможность динамического
перемещения программ в памяти. В этот регистр заносится базовый адресс
проги хранящейся в основной памяти. После обращения к регистру ,
содержимое регистра+ каждому указ в вып-ой прог-ме адресу(база
+смещение). Прерывание и опрос состояния. Одним из способов позволяющих
некоторому устройству проверить состояние другого устройства которое
работает часто независимо называется элементарный опрос этого
устройства (опрос ячеек памяти).1-е устройство может периодически
проверяет находится ли второе устройство в определенном состоянии и если
нет то продолжать свою работу. Состояние устройства работа которого
прерывается должно быть сохранено только после этого производится
обработка прерывания .
БУФЕРИЗАЦИЯ. БУФЕР- область основной памяти предназначеной для
промежуточного хранения данных при выполнении операций ввода/вывода .
Скорость выполнения операций ввода/вывода зависит от многих факторов:
главная -характеристика устройства вв/в. Различают простую и 2-ю
буферизацию. При простой канал помещает данные в буфер . Процессор
обрабатывает эти данные . Последовательный процесс обработки. Метод 2-й
буферизации позволяет совмещать операцию ввода/вывода с обработкой
данных. Когда канал заносит данные в один буфер процессор может
обрабатывать данные другого буфера.
Защита памяти. Очень важна –условие для нормальной работы
многоабоненских вычислительных систем колективного пользования. Защита
памяти ограничивает диапазон адресов в котором разрешены обращ к проге.
Защиту памяти для проги занимающей непрерывный блок ячеик памяти можно
реализовать при помощи граничных регистров где указываются старшие и
младшие адреса этого блока памяти. Защиту памяти можно реализовать с
помощью ключевой защиты памяти . Чаще делают 2-м ключом: программным и
аппаратным.
Захват цикла. Узкое место где может возникнуть конфликтная ситуация
м/у каналами ЦП -это доступ к основной памяти. В каждый конкретный
Страницы: 1, 2, 3, 4, 5, 6, 7, 8
|