Лекция Введение в ОС. Эволюция ОС
Работа добавлена на сайт bukvasha.net: 2015-10-29Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
от 25%
договор
«Операционные системы, среды и оболочки»
Лекция №1
______________________________________________________________________________________________________________________________________________________________
ВВЕДЕНИЕ В ОПЕРАЦИОННЫЕ СИСТЕМЫ.
ЭВОЛЮЦИЯ ОС.
Системное программное обеспечение – это программы и комплексы программ, общие для всех, кто совместно использует технические средства компьютера, и применяемые для автоматизации разработки новых программ и выполнения программ существующих.
Системное программное обеспечение состоит из 5-ти групп:
1) операционные системы;
2) системы управления файлами;
3) интерфейсные оболочки для взаимодействия пользователя с ОС и программные среды;
4) системы программирования;
5) утилиты.
(1)Операционная система – это комплекс управляющих и обрабатывающих программ, правил и специальных данных, которые совместно управляют ресурсами ЭВМ и процессами, использующими эти ресурсы в своей работе.
(2)Операционная система - это набор программ, контролирующих работу прикладных программ и системных приложений и исполняющих роль интерфейса между пользователями, программистами, приложениями и аппаратным обеспечением компьютера.
Операционная среда - программная среда, образуемая операционной системой, определяющая интерфейс прикладного программирования (API) как множество системных функций и сервисов (системных вызовов), предоставляемых прикладным программам.
Операционная оболочка - часть операционной среды, определяющая интерфейс пользователя, его реализацию (текстовый, графический и т.п.), командные и сервисные возможности пользователя по управлению прикладными программами и компьютером
Важнейшими функциями ОС являются:
1.Управление элементами, блоками и устройствами ПЭВМ. Выполняется с помощью набора специальных управляющих программ – драйверов устройств. Центральная часть операционной системы, так называемое ядро ОС, обязательно содержит драйверы всех основных устройств ЭВМ. Дополнительные устройства устанавливаются в вычислительную систему вместе со своим драйвером, обычно поставляемым вместе с аппаратными средствами.
2. Обеспечение хранения и доступа к информации (файловая система). Сюда входят правила организации и размещения наборов данных во внешней памяти и правила обращения к внешним устройствам, через которые производится передача данных. В основе лежит так называемая Базовая Система Ввода/Вывода (BIOS).
3. Выделение ресурсов ПЭВМ (памяти, процессорного времени, внешних устройств) для выполняемых процессов (управление ресурсами). Это наиболее сложная функция операционных систем. В зависимости от того, как распределяются ресурсы ЭВМ, определяется тип ОС и ее возможности.
4. Организация взаимодействия между выполняемыми процессами (система прерываний). Данная система позволяет с одной стороны достаточно универсально обеспечивать все виды передач управления, с другой – управлять работой компьютера в диалоговом режиме, независимо от выполняемых в текущий момент программ.
5. Выполнение команд пользователя по управлению ЭВМ. Для этих целей в составе операционной системы имеется "командный процессор" – резидентно загруженная программа, интерпретирующая указания человека, вводимые в ЭВМ в различной форме. Чаще всего эти указания являются набранной командой в виде текста, или выбором команды из предлагаемого меню (графического или текстового вида).
Система управления файлами предназначена для организации более удобного доступа к данным, организованным в файлы. Все современные ОС имеют соответствующие системы управления файлами, однако, ряд ОС позволяют работать с несколькими файловыми системами (даже одновременно). Эта возможность обеспечивается монтированием файловых систем.
Интерфейсная оболочка предназначена для удобства взаимодействия пользователя с ОС. Назначение – расширить возможности по управлению ОС или изменить встроенные в систему возможности. Примеры: Explorer, X Window, эмуляторы).
Система программирования
включает следующие элементы:
- транслятор с соответствующего языка;
- библиотеки подпрограмм;
- редакторы;
- компоновщики;
- отладчики.
Самостоятельных (вне ОС) систем программирования не бывает.
Утилиты – это специальные системные программы, с помощью которых можно как обслуживать саму ОС, так всю вычислительную систему:
- подготовка для работы носителей данных;
- перекодировка;
- оптимизация размещения данных на диске;
- разбиение накопителя на магнитных дисках на разделы;
- форматирование;
- архивирование данных.
Понятие интерфейса
Из приведенных выше функций видно, что операционная система реализует связи между аппаратными средствами, программами и пользователями. В информатике для описания таких связей используется понятие "интерфейс".
Интерфейс – это средство сопряжения двух систем или частей системы, в котором все физические и логические параметры отвечают предварительным соглашениям.
ОС реализует интерфейс пользователя (если одной из систем является человек), аппаратно-программный интерфейс (если одной из сторон взаимодействия выступает техническое устройство) и программный интерфейс (если взаимодействуют между собой два программных процесса).
Примерами наиболее известных операционных систем являются: OS–360/370 (ОС/ЕС), DOS, Windows, UNIX.
История развития операционных систем
Поколения ОС также как и аппаратные средства отражают достижения в области электронных компонентов: 1 поколение – лампы, 2 поколение – транзисторы, 3 поколение – интегральные микросхемы (ИС), 4 поколение большие и сверхбольшие интегральные схемы – БИС и СБИС. Поколения компьютеров отличаются:
стоимостью, габаритами, мощностью;
быстродействием и объемом памяти.
Рассмотрим эволюцию операционных систем.
0 поколение (40 - 50 годы) - ОС отсутствует. Полный доступ к ресурсам ЭВМ на машинном языке, все программы разрабатываются в двоичном коде. Этот период характеризуется высокой стоимостью приобретения и эксплуатации компьютеров и низкой стоимостью труда программистов. Компьютеры использовались в монопольном интерактивном режиме. Основная цель – максимизировать использование аппаратного обеспечения. Основной режим работы компьютера – простой и ожидание каких-либо действий программиста. При этом наблюдается недостаточное использование дорогостоящего вычислительного оборудования.
1 поколение (60-е годы). Возникла система пакетной обработки. В каждый момент времени ЭВМ использовалась для решения одной прикладной программы. Пользователи уже не работают с ЭВМ на физическом уровне. Программы и данные принимает человек-оператор. Задание на обработку формируется в виде пакета, представляющего собой совокупность отдельных программ и данных, разделенных специальными символами. Пакет может быть составлен на перфокартах или МЛ. В машине постоянно находится управляющая программа, которая считывает последовательно пользовательские программы и данные из пакета и загружает их на выполнение. Результаты выводятся на внешнее устройство, и составляют пакет результатов. Управляющая программа должна фиксировать время исполнения каждой программы, реагировать на определенные ситуации по управлению программами по мере их исполнения (прекращать выполнение). Другими словами, она должна выполнять внутрисистемные операции управления, которые пользователь осуществлял ранее на физическом уровне. Дополнительно эта программа должна автоматически переключать машину на исполнение программ из пакета по последовательной схеме (FIFO). Такую системную программу можно назвать простейшей ОС, обеспечивающей обработку программ в однопрограммном пакетном режиме.
Недостатки:
Использование части машинного времени (времени процессора) на выполнение системной управляющей программы.
Программа, получившая доступ к процессору, обслуживается до ее завершения. При этом если возникает потребность в передаче данных между внешними устройствами и ОП, то процессор простаивает, ожидая завершения операции обмена. С другой стороны при работе процессора простаивают внешние устройства. Для персонального компьютера проявление фактора простоя процессора не столь существенно, так как стоимость его не велика, чего не скажешь о больших и дорогих ЭВМ.
Этот недостаток однопрограммного режима был устранен в мультипрограммном пакетном режиме (65-75 г.г.) в ОС второго поколения. Главной целью и критерием эффективности систем пакетной обработки является максимальная пропускная способность, то есть решение максимального числа задач в единицу времени. Для этой цели в начале работы формируется пакет заданий, содержащих требования к системным ресурсам. Из этого пакета формируется мультипрограммная смесь из заданий, предъявляющих отличающиеся требования к ресурсам для того, чтобы обеспечить сбалансированную нагрузку всех устройств ЭВМ. Так, например, в мультипрограммную смесь желательно вводить вычислительные задачи и задачи, интенсивно использующие ввод/вывод. В системах пакетной обработки переключение процессов с выполнения одной задачи на другую происходит только в том случае, если активная задача сама отказывается от процессора, например, для выполнения операции ввода/вывода, что делает невозможным выполнение интерактивных задач.
Особенностью этого поколения было и то, что ОС создавались как системы коллективного пользования с мультипрограммным режимом работы и как первые системы мультипроцессорного типа. В таких системах несколько пользовательских программ одновременно присутствуют в оперативной памяти компьютера и центральный процессор (ЦП) динамически переключается с решения одной задачи на решение другой задачи. При этом появляется возможность одновременной загрузки ЦП и устройств ввода-вывода. В случае многопроцессорных систем единый вычислительный комплекс (ВК) содержит несколько процессоров, что повышает вычислительную мощность вычислительной системы (ВС).
В то же время появились методы, обеспечивающие независимость программирования от внешних устройств. В программе необходимо указывать только тип устройства, а не программировать его физический адрес. Конкретный адрес устройства определялся в процессе выполнения программы. Это было серьезное достижение в развитии ОС.
В этот период были разработаны системы с разделением времени (РВ), предоставляющие пользователям возможность непосредственно взаимодействовать с компьютером при помощи терминалов телетайпного типа (электронная пишущая машинка, имеющая интерфейс с ЭВМ), а в последующем и с помощью дисплея. При работе с такими ОС используется диалоговый или интерактивный режим. Каждому пользователю системы разделения времени предоставляется терминал, с которого он может вести диалог со своей программой. Пользователь вводит запрос, который обрабатывается и ответ выводится на терминал, что позволяет увеличить эффективность и удобство работы пользователя. Пакетный режим обеспечивал увеличение пропускной способности и максимальную загрузку процессора, отлучая пользователя от ЭВМ, в то время как в режиме разделения времени (РРВ) каждый пользователь имеет непосредственный доступ к ЭВМ через свой терминал. Суть разделения времени максимально проста. Каждой программе, готовой к исполнению, для работы выделяется фиксированный, заранее определенный интервал времени, называемый квантом. Программа в течение одного кванта может быть не выполнена до конца, тогда она прерывается в момент окончания кванта и помещается в конец очереди. Из начала очереди извлекается другая программа, которой планируется фиксированный интервал. При этом ни один из пользователей, работающих за дисплеем, параллельно друг с другом, никак не ощущает, что процессор мультиплексируется несколькими программами.
К этому же периоду относится появление первых систем реального времени (СРВ), в которых ЭВМ применяется для управления техническими объектами, такими, например, как станок, спутник, научная экспериментальная установка или технологическими процессами, такими, как гальваническая линия, доменный процесс и т.п. Во всех этих случаях существует предельно допустимое время, в течение которого должна быть выполнена та или иная программа, управляющая объектом, в противном случае может произойти авария: спутник сойдет с орбиты, экспериментальные данные могут быть потеряны, толщина гальванического покрытия не будет соответствовать норме. Характерным для СРВ является обеспечение заранее заданных интервалов времени реакции на предусмотренные события для получения управляющего воздействия. Поскольку в технологических процессах промедление может привести к не желаемым и даже опасным последствиям, СРВ работают со значительной недогрузкой, так как важнейшей характеристикой является постоянная готовность системы – ее реактивность.
Системное программное обеспечение (СПО) ОС этого периода решало множество проблем, связанных с защитой данных и результатов работы различных программ, защитой данных в оперативной памяти и распределением устройств. Кроме того, ОС должна управлять новыми устройствами, входящими в состав аппаратного обеспечения. Для решения этих задач системное программное обеспечение сформировалось в сложную систему, требующую для реализации своих возможностей значительных вычислительных ресурсов.
ОС третьего поколения (70-80 г.г.) были многорежимными системами, обеспечивающими пакетную обработку, разделение времени, режим реального времени и мультипроцессорный режим. Они были громоздкими, дорогостоящими (монстры операционных систем). Например, фирме IBM разработка ОС/360 стоила 6 млрд. долларов, что соизмеримо с затратами американской программы NASA высадки человека на Луне. Такие ОС, будучи прослойкой, между пользователем и аппаратурой ЭВМ, привели к значительному усложнению вычислительной обстановки. Для выполнения простейшей программы необходимо было изучать сложные языки управления заданием (JCL – Job Control Language). К этому периоду относится появление вытесняющей многозадачности (Preemptive scheduling), и использование концепции баз данных для хранения больших объемов информации для организации распределенной обработки. Программисты перестали использовать перфокарты и магнитные ленты для хранения своих данных. Вводится приоритетное планирование (Prioritized scheduling) и выделение квот на использование ограниченных ресурсов компьютеров (процессорного времени, дисковой памяти, физической (оперативной) памяти). При использовании компьютеров широкое распространение получила концепция распределения времени (time sharing) , но ограниченность ресурсов приводила к перегрузке компьютеров и к неприемлемому времени ожидания ответа или результатов работы. Программистам приходилось компенсировать это неудобство работой в ночное время.
Четвертое поколение с середины 70-х. Период характеризуется уменьшением стоимости компьютеров и увеличением стоимости труда программиста. Появление персональных компьютеров позволило установить компьютер практически каждому пользователю на рабочем столе. Благодаря широкому распространению вычислительных сетей и средств оперативной обработки (режим on-line), пользователи получают доступ к территориально распределенным компьютерам. Появились микропроцессоры, на основе которых создаются все новые и новые PC, которые могут быть использованы, как автономно, так и в качестве терминалов более мощных вычислительных систем. При передаче информации по линиям связи усложняются проблемы защиты информации, шифрования данных. Возникло понятие сетевого компьютера (Network computer) , способного получать все ресурсы через компьютерную сеть. Понятие файловой системы распространяется на данные, доступные по различным сетевым протоколам.
Число людей, пользующихся компьютером, значительно возросло, что выдвигает требование дружественного интерфейса пользователя, ориентации на неподготовленного пользователя. Появились системы с управлением с помощью меню и элементов графического интерфейса. Начала широко распространяться концепция виртуальных машин. Пользователь более не заботится о физических деталях построения ЭВМ или сетей. Он имеет дело с функциональным эквивалентом компьютера, создаваемым для него ОС, представляющим виртуальную машину. Таким образом, возникла концепциявиртуализации ресурсов ЭВМ. Виртуальным ресурсом называется функциональный программно моделируемый эквивалент реального монопольного ресурса, допускающий его совместное использование многими процессами. Мультипрограммирование – виртуализация центрального процессора (ЦП – CPU). Буферный ввод/вывод – виртуализация устройств ввода и вывода.
В настоящее время концепция виртуальных машин находит все большее распространение. Виртуальная машина – это функциональный эквивалент реальной ЭВМ, обеспечивающий пользователей на основе одной ЭВМ множество функционально эквивалентных ей ЭВМ.
Широкое внедрение получила концепция распределенной обработки данных. Развитием распределенной обработки данных стала технология Клиент - Сервер, в которой серверный процесс предоставляет возможность использовать свои ресурсы клиентскому процессу по соответствующему протоколу взаимодействия. Название сервера отображает вид ресурса, который предоставляется клиентским системам (сервер печати, сервер вычислений, сервер баз данных, сервер новостей, сервер FTP, сервер WWW и т.д.)
САЛИМОВА Г.Р.