Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Основные этапы эволюции вычислительных систем



Существуют различные классификации ВС. Наиболее часто они классифицируются по элементной базе. В соответствии с этой классификацией в эволюции ВС выделяются 4 этапа:

1. Первый период (1945-1955). Ламповые машины. Операционных систем нет.

2. Второй период (1955-начало 60-х). Компьютеры на основе транзисторов. Пакетные ОС.

3. Третий период (начало 60-х-1980). Компьютеры на основе интегральных микросхем. Первые многозадачные ОС,

4. Четвертый период (1980-по настоящее время). Персональные компьютеры. Классические, сетевые и распределенные системы.

9. Общая характеристика пакетных операционных систем (с использованием перфокарт и магнитных лент), функции «монитора» в многозадачном режиме, spooling

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

В этот период времени одни и те же группы людей участвовали в проектировании, создании, программировании и эксплуатации ЭВМ.

Этот период можно назвать «ремесленническим», поскольку разделения труда практически не было. Программирование велось на машинном языке. Не было никакого системного ПО, кроме библиотек математических и служебных подпрограмм.

При этом ВС выполняла одновременно только одну из 3 операций: ввод, вычисление, вывод.

Все задачи организации вычислительного процесса решались вручную каждым программистом с пульта управления.

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

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

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

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

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

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

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

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

2. Второй период. Пакетные операционные системы.

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

От задач вычислительного характера перешли к другим практически важным задачам.

Особенности компьютеров второго поколения:

· широкое распространение получили индексные регистры и аппаратные средства для выполнения операций с плавающей точкой

· стали применяться специальные команды для вызова подпрограмм

· были разработаны ЯП высокого уровня такие как Алгол, Кобол, Фортран, которые позволяли составлять программы не учитывая тип компьютера

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

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

Для того чтобы запустить программу нужно было выполнить целый круг действий:

¾ загрузка нужного транслятора (установка нужной магнитной ленты)

¾ запуск транслятора и получение программы в машинных кодах

¾ связывание программы с библиотеками подпрограммы

¾ загрузка программы в ОП

¾ запуск программы

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

Для выполнения части из перечисленных задач использовались операторы машинного зала.

Во многом от их работы стала зависеть эффективность работы всей ВС.

Несмотря на все перечисленное, значительную часть времени процессор простаивал, т.е. использование компьютеров было неэффективным.

Операционная система
Распределение памяти в однозадачной ОС с пакетной обработкой заданий

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

Этот вариант является однозадачным, поскольку в каждый момент времени в ОЗУ находится только одно пользовательское задание (программа).

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

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

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

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

Поскольку была необходимость отслеживания состояний заданий, то монитор должен быть резидентным (т.е. постоянно находится в памяти под фиксированным адресом).

Типичными командами монитора были:

¾ загрузка данных с перфокарт

¾ просмотр и корректировка (с пишущей машинки) значений в указанном диапазоне адресов

¾ пошаговое выполнение программы с выдачей результатов каждой команды на пишущую машинку

¾ запуск программы с указанного адреса с заданием адресов контрольных точек остановки

Первые ОС обладали следующими характеристиками:

1. пакетная обработка одного потока задач

2. наличие стандартных программ ввода-вывода

3. возможности автоматического перехода от программы к программе

4. средства восстановления после ошибок (они обеспечивают автоматическую «очистку» компьютера в случае аварийного завершения задачи и позволяют запускать следующую задачу при минимальном вмешательстве оператора)

5. языки управления заданиями, предоставляющие пользователям возможность описывать свои задания и ресурсы, требуемые для их выполнения

3. Третий период. Компьютеры на основе интегральных микросхем. Первые многозадачные ОС.

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

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

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

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

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

При вводе и выводе информации данные выводились не непосредственно на устройство, а на ленту или на диск (при вводе) или в системный буфер при выводе.

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

Использование этого механизма в пакетных системах позволило совместить реальные операции ввода-вывода одного задания с выполнением другого. Для этого пришлось разработать механизм прерываний для извещения процессора об окончании этих операций.

10. Общая характеристика понятия «мультипрограммирования», распределение памяти, особенности ОС с поддержкой мультипрограммирования

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

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

Идея мультипрограммирования заключается в следующем:

пока одна программа выполняет операции ввода-вывода, процессор не простаивает, как это происходило при однопрограммном режиме, а выполняет другую программу.

Когда операция ввода-вывода заканчивается, процессор возвращается к выполнению первой программы.

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

 
 


ОС пакетной обработки с поддержкой

мультипрограммирования

       
 
 
   
Задание 1
 
 
 
   
Задание 2
 
 
 
   
Задание 3


Особенности ОС с поддержкой мультипрограммирования:

1. Использование специальных программ ввода-вывода, поддерживаемых ОС (это позволяет во время вывода на печать результата по одному заданию использовать процессор для выполнения другого задания).

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

Явление фрагментации памяти (т.е. дробление ее на мелкие участки) возникает вследствие неточного совпадения размеров свободных и требуемых участков памяти.

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

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

К числу таких механизмов управления относится буферизация вывода (spooling):

· хранение для каждого задания буфера его вывода (в виде области памяти или файла)

· накопление в буфере выводимой заданием информации

· ее вывод полностью на устройство при завершении задания

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

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

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

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

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

7. Развитие параллелизма в архитектуре. Для возможности освобождения центрального процессора от управления взаимодействием памяти и внешних устройств был предложен механизм прямого доступа к памяти.





Дата публикования: 2014-11-04; Прочитано: 3508 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.012 с)...