Программы — это упорядоченные последовательности команд. Конечная цель любой компьютерной программы — управление аппаратными средствами.

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

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

Уровни программного обеспечения представ­ляют собой пирамидальную конструкцию (Рис. 1.2). Каждый следующий уровень опирается на программное обеспечение предшествующих уровней.

 

Рисунок 1.2 – Уровни ПО

 

Базовый уровень. Самый низкий уровень программного обеспечения представляет базовое программное обеспечение. Оно отвечает за взаимодействие с базовыми аппа­ратными средствами. Как правило, базовые программные средства непосредственно входят в состав базового оборудования и хранятся в специальных микросхемах, называемых постоянными запоминающими устройствами (ПЗУ—Read Only Memory, ROM). Программы и данные записываются («прошиваются») в микросхемы ПЗУ на этапе производства и не могут быть изменены в процессе эксплуатации.

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

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

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

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

Также отдельным разделом из системного уровня выделяют инструментарий программирования. Инструментарий программирования — это средства, предназначенные для создания ПО, т.е. того же системного и прикладного ПО. Его составляют и разнообразные языки и среды программирования, такие как Бейсик, Паскаль, С, C++, Delphi и другие.

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

В разработке и эксплуатации служебных программ существует два альтернативных направления:

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

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

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

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