Лекция: История развития ОС

 

1ое поколение ОС появилось тогда, когда появились первые средства взаимодействия машины и пользователя (конец 40-х — начало 50-х годов 20 века). Первые ВМ были на лампах, 4-8 kb ОП, их устройство ввода/вывода состояло из набора лампочек и кнопок, в лучшем случае – перфокарт. Сами ОС состояли из набора полезных программ и служили для выполнения отдельных программ. В конце этапа стали появляться более сложные и более быстрые машины для обработки перфокарт.

 

2ое поколение ОС появилось вместе с появлением новых, более совершенных ВМ. В ВМ появились накопители на жестких и магнитных дисках, построчные печатающие устройства, ЦП строились на транзисторах (50-60-е годы). Объем ОП – 68 kb, 128 kb. Теперь ОС — не разрозненный набор программ, а постоянно находящаяся в ОП программа. Управляющие программы ВМ стали включать такие средства, как буферизация, блокирование записей, средства работы с таймером, методы управления данными. Преобладающим режимом был пакетный режим, т.е. пользователь приходит со своим набором перфокарт и получает результат.

 

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

 

4ое поколение ОС – (начало 70-х годов) — ВМ и периферийные устройства стали меньшего размера, для мощных машин ОС стали обеспечивать эффективную изоляцию пользователей друг от друга, для персональных ЭВМ многопользовательский режим стал не характерен, появилась задача о комфортной работе одного пользователя. Intel создает первый процессор 8080, IBM выпускает первый PC.

 

 

Лекция 2.

 

Операционные системы VM.

VM — Virtual Machine (англ. «виртуальная машина») — разработаны компанией IBM.

Это целое семейство ОС:

 

VM/370 CBM

VM/SP

VM/HPO

VM/XA

VM/ESA

 

Самая первая ОС у IBM – OS/VS. Из нее появились VM и MBS.

Разрабатывались новые архитектуры машин: IBM/360 -> IBM/370 (процессор, память, пультовое управление) -> VM/SP, VM/HPO, VM/XA, VM/ESA – архитектура промышленных систем.

В настоящее время лидером в своем классе является VM\ESA. Она обеспечивает работу нескольких тысяч пользователей.

 

СВМ – русский аналог VM/SP.

 

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

 

VM содержит следующие ОС:

F CMS – (ПДО) – специализированна для работы на виртуальной машине

F CP – монитор виртуальных машин

F любая ОС для IBM 360/370

 

В VM можно запустить еще одну VM.

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

 

Задача VM: предоставить каждому пользователю полноценный аналог реальной ЭВМ таким образом, чтобы пользователь не ощущал того, что реальная ЭВМ занята выполнением не только его работы. Такой аналог назвали виртуальной машиной.

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

 

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

 

Помимо CMS на виртуальной машине могут использоваться практически любая ОС, разработанная для IBM/360/370/. Например, на виртуальной машине не может быть загружен сам VM.

 

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

 

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

 

Лекция 3.

Архитектура IBM/370.

System/360:

— I/O процессор

— Таймер

— Многопользовательский многозадачный режим

RAMmax=1 Mb

 

ЦП – центральный процессор

ОП – оперативная память

К – канал

УУ – устройство управления

УВВ – устройство ввода/вывода

 

System/370: добавлены виртуальная память и средства обеспечения работой управляющей программы.

 

Общая логическая схема подразумевает наличие:

F оперативной памяти (ОП)

F процессоров (ЦП)

F каналов ввода/вывода

F устройств ввода/вывода

 

Каналы ввода/вывода – специализированные процессоры, занимающиеся управлением операцией ввода/вывода.

 

Операции ввода/вывода оформлены в виде канальных программ.

 

Канальные программы хранятся в ОП.

 

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

 

Синхронизация работы каналов и ЦП осуществляется при помощи прерываний.

 

Основные средства:

 

ОП

 

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

 

Память циклически замкнута: для адресации используются 24 бита (32 – для слова), т.е. 8 старших битов не принимаются во внимание; если дошло до адресации последнего байта FFFFFF, то дальше передается на 0.

 

Между памятью процессора и каналами ввода/вывода информация передается блоками, состоящими из 8 бит (1 байт). Байты могут обрабатываться отдельно или группами.

 

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

 

Формат данных System/370:

       
   

Байт=8 бит (слева направо)

       
   

Полуслово=16 бит (слева направо)

 

 

Двойное слово=64 бит (слева направо)

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

 

Регистры общего назначения (16 штук) – слово=32 бита, различные интерпретации со знаком или без, нумерация с 0-го по 15-й, состав определяет программист.

 

Регистры с плавающей точкой — 0-й, 2-й, 4-й и 6-й, каждый по 64 бита, некоторые команды работают с парами или частями.

 

Управляющие регистры – их 16 по 32 бита, нумерация с 0-го по 15-й, значения битов в них фиксированы.

 

В IBM/370 используется 24-битная адресация, поэтому предельным размером оперативной памяти является 16Mb. Если при обращении указывается размер больший, то старшие биты не учитываются.

 

Физическая память делится на страницы 2k или 4k. Каждой странице приписывается ключ доступа (защиты) размером в 1b. При каждом выполнении команды идет сравнение ключа доступа страницы с к.д. слово состояния. К.д. имеет признак.

 

зн. ключа

2. другие биты

0 3 4 7

 

Обращение процессоров и каналов к оперативной памяти (к любой странице) разрешены в случае совпадения ключа доступа, а также, если процессор или канал использует 0-й ключ. Значение ключей доступа может быть от 0 до 15. Обычно ключом доступа обладают программы ОС.

 

Страницы ОП образуют сегменты размером 64 kb или 1Mb. Размер сегмента хранится в одном из управляющих регистров.

 

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

 

2. Центральный процессор

Управляет последовательностью и ходом выполнения команд, действий при прерываниях, работой средств отсчета времени, а также другими средствами IBM/370.

 

Работой Ц.П. управляет слово состоянием программы или PSW.

PSW занимает 64 бит и может находиться в одном из двух форматов:

— основного управления (ВС)

— расширенного управления (ЕС)

 

В режиме основного управления PSW содержит следующую информацию:

· бит “режим работы”, установленный в значении 0

· бит “ожидание”

0 – дальнейший выбор команд

1 – процессор в состоянии остановки

· бит “задача”

1 – процессор подавляет выполнение команд управления системой

0 – процессор в режиме ОС

· бит “условие состояния”

команды управления системой и команды ввода/вывода являются привилегированными

· поле адреса следующей исполняемой команды (24 бита)

· маски прерываний системы

· признак результата

 

 

В расширенном режиме в PSW содержится бит динамической переадресации:

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

 

Формат команд.

В IBM/370 используются следующие форматы команд:

Reg Reg – 2b

Reg X — 4b

Reg S — 4b

S I — 4b

S — 4b

S S — 6b

Reg Reg:

1b – код операции

1b – номера регистров (2 16-тиричных числа, которые задают пару регистров)

 

Существует 16 регистров общего назначения (32 бита), 16 управляющих регистров, 4 регистра с плавающей точкой (64 бита – 0, 2, 4, 6).

 

В Sys/370 используется косвенная адресация, т.е. в команде адрес памяти не задается, а вычисляется определенным образом.

 

КОП R X BD DD

X – индекс (16-тирич. цифра)

В – база (16-тирич. цифра)

0 8 16 24 31 DDD — смещение

 

 

— вычисление логического адреса, где

0 – нет индексации,

RX – значение регистра индекса,

RB – значение регистра базы.

S S:

 

B1D1 D1D1 B2D2 D2D2

 

 

По своему назначению команды делятся на следующие классы:

· команды общего назначения (целые данные, логические)

· команды обработки десятичных данных (абс. точность)

· команды обработки чисел с плавающей точкой

· команды управления системой

· команды ввода/вывода

 

Десятичные данные:

 

неупакованные упакованные

     

 

       

 

 
 

 

 


цифры (до 15) знак знак

 

Прерывания в IBM/370.

Прерывания – стандартный способ оповещения программы о некоторых событий. Источник прерывания может находиться как в самой программе, так и вне ее, в том числе и вне вычислительной системы.

 

Классы прерываний:

  1. прерывания по обращению к Supervisor

(источником является команда обращения к Supervisor – SVR)

  1. программные прерывания

(источником являются особые случаи при обработке программ, программные ошибки и прерывания средств динамической адресации)

  1. внешние прерывания

(источником являются средства отсчета времени, другие вычислительные системы, кнопка прерывания на пульте управления)

  1. прерывания ввода/вывода

(источником является система ввода/вывода – каналы, УУ и УВВ)

  1. прерывания повторного пуска

(источником является кнопка «повторный пуск» на процессоре)

  1. прерывания от схем контроля

(источником являются схемы контроля вычислительной машины)

 

Некоторые прерывания могут быть временно запрещены, т.е. замаскированы.

 

К маскированным прерываниям относятся отдельные программные прерывания, внешние прерывания, прерывания ввода/вывода и некоторые прерывания схем контроля.

 

В результате прерывания происходит:

 

  1. текущее PSW программы записывается в ячейку реальной основной памяти, сопоставляемой данному классу прерываний и называемой старым PSW.
  2. из ячейки реальной основной памяти, соответствующей данному классу прерываний и называемой новым PSW, выбирается двойное слово и замещает текущее PSW.
  3. выполнение команд продолжается с команды, адрес которой указывается в новом, теперь текущем, PSW данного класса прерываний.


 

 

OLD и NEW PSW заранее распределены:

 

адрес длина назначение
NEW PSW повторного пуска
OLD PSW повторного пуска
OLD PSW внешних прерываний
OLD PSW по обращению к SVR
OLD PSW программных прерываний
OLD PSW от прерываний схем контроля
OLD PSW прерываний ввода/вывода
CSW — слово состояние команды
CAW — адресное слово канала
интервальный таймер
NEW PSW внешних прерываний
NEW PSW по обращению к SVR
NEW PSW программных прерываний
NEW PSW прерываний от схем контроля
NEW PSW прерываний ввода/вывода

 

Код прерывания.

 

Конкретная причина прерывания уточняется кодом прерывания.

 

Код — 16-битное поле, которое в режиме BC записывает в сохраненный OLD PSW, а режиме EC — заносится в специально отведенное поле постоянно распределенных областей памяти.

 

Средства отсчета времени.

В IBM/370 присутствуют следующие средства отсчета времени:

 

1. Часы — 64-битная ячейка (двойное слово). Обновления происходит таким образом, что каждую микросекунду к содержимому разряда 51 прибавляется 1.

Команды: существует запись в память показания часов и установка часов. Не формируют прерывания.

 

2. Компаратор — двойное слово; обновление значения его не происходит; используется в качестве будильника: сигнал для внешних прерывания формируется, когда значения часов и компаратора совпадут.

Команды: прочитать значение, установить значение.

 

3. Программный таймер — двойное слово; каждую микросекунду из разряда 51 отнимается 1. Когда значение равно 0, формируются условия для внешнего прерывания.

 

4. Интервальный таймер — находится в постоянно распределенной области памяти и занимает 32 бита. Из содержимого 23 бита каждую 1/300 секунды вычитается 1. Когда значение равно 0, формируется прерывание на внешнем носителе.

 

еще рефераты
Еще работы по истории