Системное программное обеспечение(СПО)- это комплекс программ которые обеспечивают управление компонентами компьютерной системы, такими как процесса, опер память, устройства ввода-вывода, сетевое оборудование, выступая как межслойный интерфейс, с одной стороны которого аппаратура, а с другой стороны приложения пользователя.
В отличие от ПО, системное ПО не решает конкретные практические задачи, а лишь обеспечивает работу других программ предоставляя им сервисные функции, абстрагирующие детали аппаратные и микропрограммы реализации вычислительной системы, управляет аппаратными ресурсами вычислительной сиситемы.
Операционная система- это комплекс системных программ расширяющий возможности вычислительной системы, а также обеспечивающий управление её ресурсами, загрузку и выполнение прикладных программ взаимодействия с пользователями.
В вычислительных системах ОС являются основной наиболее важной, а иногда и единственной частью СПО
Подразделение ПО на системное и прикладное является до некоторой степени устаревшим.
Сегодняшние деление предусматривает по меньшей мере 3 градаций ПО: системное, промежуточное, прикладное….
Промежуточное ПО (middleware) мы определяем как совокупность программ, осуществляющих управление вторичными (конструируемыми самим ПО) ресурсами, ориентированными на решение определенного (широкого) класса задач. К такому ПО относятся менеджеры транзакций, серверы БД, серверы коммуникаций и другие программные серверы. С точки зрения инструментальных средств разработки промежуточное ПО ближе к прикладному, так как не работает на прямую с первичными ресурсами, а использует для этого сервисы, предоставляемые системным ПО.
С точки зрения алгоритмов и технологий разработки промежуточное ПО ближе к системному, так как всегда является сложным программным изделием многократного и многоцелевого использования и в нем применяются те же или сходные алгоритмы, что и в системном ПО.
Современные тенденции развития ПО состоит в снижении объема как системного, так и прикладного программирования. Основная часть работы программистов выполняется в промежуточном ПО. Снижение объема системного программирования определено современными концепциями ОС, объектно-ориентированной архитектурой и архитектурой микроядра, в соответствии с которыми большая часть функций системы выносится в утилиты, которые можно отнести и к промежуточному ПО. Снижение объема прикладного программирования обусловлено тем, что современные продукты промежуточного ПО предлагают все больший набор инструментальных средств и шаблонов для решения задач своего класса.
Значительная часть системного и практически все прикладное ПО пишется на языках высокого уровня, что обеспечивает сокращение расходов на их разработку/модификацию и переносимость.
Системное ПО подразделяется на системные управляющие программы и системные обслуживающие программы.
Управляющая программа — системная программа, реализующая набор функций управления, который включает в себя управление ресурсами и взаимодействие с внешней средой системы обработки информации, восстановление работы системы после проявления неисправностей в технических средствах.
Программа обслуживания (утилита) — программа, предназначенная для оказания услуг общего характера пользователям и обслуживающему персоналу систем обработки информации.
Управляющая программа совместно с набором необходимых для эксплуатации системы утилит составляют операционную систему (ОС).
Кроме входящих в состав ОС утилит могут существовать и другие утилиты (того же или стороннего производителя), выполняющие дополнительное (опционное) обслуживание. Как правило, это утилиты, обеспечивающие разработку программного обеспечения для операционной системы
Система программирования — система, образуемая языком программирования, компилятором или интерпретатором программ, представленных на этом языке, соответствующей документацией, а также вспомогательными средствами для подготовки программ к форме, пригодной для выполнения.