Лекция 5. Программное обеспечение ЭВМ 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Лекция 5. Программное обеспечение ЭВМ



Лекция 5. Программное обеспечение ЭВМ

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

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

Системное программное обеспечение

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

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

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

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

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

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

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

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

- взаимодействие между пользователем с одной стороны и программным и аппаратным обеспечением ЭВМ с другой стороны, называемое интерфейсом пользователя;

- взаимодействие между программным и аппаратным обеспечением, называемое аппаратно-программным интерфейсом;

- взаимодействие между программным обеспечением разного уровня, называемое программным интерфейсом.

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

Режимы работы ЭВМ

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

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

Однопрограммный пакетный режим обеспечивает автоматический переход от пограммы к программе. Его особенности:

  образуется пакет из отдельных программ и данных, после чего формируется задание на его обработку с использованием специализированного формализованного языка управления заданиями;

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

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

  с момента завершения одного пакета до образования следующего процессор компьютера простаивает.

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

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

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

В режиме РВ требуются:

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

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

· гарантии того, что задача будет отработана до требуемого срока.

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

Режим разделения времени (РДВ) реализуется следующим образом: в схему по мультиплексированию (разделению) процессора среди готовых к исполнению программ вводится жесткое ограничение: каждой программе, готовой к исполнению, планируется для исполнения на процессоре фиксированный, заранее известный интервал времени – квант (интервал мультиплексирования), например, Δtm=0,2c. Если исполняемая программа не успела выполниться к моменту окончания кванта, то ее выполнение принудительно прерывается и она переводится в состояние готовности (что равносильно помещению ее в конец очереди готовых к исполнению программ). Из начала этой очереди извлекается другая программа, получает тот же квант Δtm и т.д.

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

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

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

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

· привилегированный и пользовательский режимы работы;

· специальные регистры для быстрого переключения с одной программы на другую;

· средства защиты областей памяти;

· развитая система прерываний.

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

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

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

· с вытесняющей многозадачностью, основанной на квантовании времени;

· с кооперативной многозадачностью (совместной, не вытесняющей);

· многопоточный режим (с внутренней вытесняющей многозадачностью).

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

Серверные ОС одновременно обслуживают множество пользователей и позволяют им делить между собой программно-аппаратные ресурсы сервера. Серверы также предоставляют возможность работы с принтерами, файлами или сетью Интернет. Unix и специальная серверная версия ОС Windows являются примерами серверных ОС. Теперь для этой цели стала использоваться и ОС Linux.

Следующую категорию составляют ОС для персональных компьютеров. Их работа заключается в предоставлении удобного интерфейса для одного пользователя. Такие системы широко используются и повседневной работе. Основными ОС в этой категории являются Windows 7/8/10, Apple MacOS и Linux.

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

Встроенные ОС используются в смартфонах, карманных компьютерах и бытовой технике. Примерами таких ОС являются Google Andrоid и Apple iOS.

Основными функциями ОС являются:

1) распределение ресурсов ЭВМ между процессами – выделение процессам ресурсов ЭВМ в зависимости от их приоритета;

2) поддержание файловой системы – организация хранения и поиска программ и данных на внешних носителях;

3) обеспечение интерфейса пользователя – прием и выполнение команд пользователя.

Каталоговые системы

Связующим звеном между системой управления файлами и набором файлов служит файловый каталог. Простейшая форма системы каталогов состоит в том, что имеется один каталог, в котором содержатся все файлы (рис.4а). Каталог содержит информацию о файлах, включая атрибуты, местоположение, принадлежность. Пользователи обращаются к файлам по символьным именам. Однако способности человеческой памяти ограничивают количество имен объектов, к которым пользователь может обращаться по именам. Иерархическая организация пространства имен позволяет значительно расширить эти границы. Именно поэтому каталоговые системы имеют иерархическую структуру. Граф, описывающий иерархию каталогов, может быть деревом или сетью. Каталоги образуют дерево, если файлу разрешено входить только в один каталог, и сеть, если файл может входить в несколько каталогов. Например, в Ms-Dos и Windows каталоги образуют древовидную структуру (рис.4б), а в UNIX – сетевую (рис.4в).                                                                           

Рис. 4.Каталоговые системы

 

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

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

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

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

В общем случае вычислительная система может иметь несколько дисковых устройств, даже в ПК всегда имеется несколько дисков: гибкий, винчестер, CD-ROM (DVD). Как организовать хранение файлов в этом случае?

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

Примером такого автономного существования может служить MS-DOS, Windows.

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

В ОС UNIX монтирование осуществляется следующим образом. Среди всех имеющихся логических дисковых устройств выделяется одно, называемое системным. Пусть имеются две файловые системы, расположенные на разных логических дисках, причем один из дисков является системным Файловая система, расположенная на системном диске, называется корневой. Для связи иерархий файлов в корневой файловой системе выбирается некоторый существующий каталог, например – каталог loc. После выполнения монтирования выбранный каталог loc становится корневым каталогом второй файловой системы. Через этот каталог монтируемая файловая система подсоединяется как поддерево к общему дереву.

Файловые операции

Возможны следующие действия с файлами:

- создание: за файлом закрепляется название и выделяется место на диске;

- открытие: поиск файла на диске и выделение памяти в ОЗУ для обмена данными с файлом;

- закрытие: сохранение текущего состояния файла после действий с ним;

- изменение: модификация содержимого файла;

- копирование и перемещение файла;

- переименование: закрепление за файлом нового имени;

- удаление: освобождение места на диске, занимаемого файлом.

 

Минимальная единица хранения на жестком диске или дискете ОС – кластер. Файл занимает на диске один или несколько кластеров. Месторасположение файла характеризуется двумя адресами:

1) пользовательским: имя файла – это адрес, по которому пользователь может получить доступ к совокупности данных этого файла;

2) аппаратным: номера дорожки, сектора и т. п. определяет физическое месторасположение файла на ВЗУ.

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

От файловой системы требуется выполнение следующих действий:

- определение по имени файла физического расположения его частей;

- определение наличия свободного места и выделение его для вновь создаваемых файлов.

Скорость выполнения этих операций напрямую зависит от самой файловой системы. Разные файловые системы используют различные механизмы для реализации указанных задач и имеют свои преимущества и недостатки. Файловая система FAT (File Allocation Table – таблица размещения файлов), использующихся в ОС MS-DOS и Windows, представляют собой образ носителя в миниатюре, где детализация ведется до кластернго уровня. Поэтому операция поиска физических координат файла при его большой фрагментации будет затруднительна. Еще хуже обстоит дело с поиском свободного места для больших файлов. Приходится просматривать практически всю таблицу, поэтому быстродействие падает. Современная файловая система NTFS (New Technology File System – файловая система нового типа) в ОС семейства Windows использует более компактную форму записи, что ускоряет поиск файла. Поэтому операции с выделением места под файл проходят быстрее. Ключевое преимущество файловой системы NTFS – возможность ограничения доступа к файлам и каталогам.

 

Драйверы устройств

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

1) перевод команд ОС в команды контроллера и обратно;

2) обмен данными между ОС и устройством через его контроллер.

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

 

 

Лекция 5. Программное обеспечение ЭВМ

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

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



Поделиться:


Последнее изменение этой страницы: 2021-01-08; просмотров: 353; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.135.183.1 (0.053 с.)