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

Начнем обсуждение программного обеспечения с рассмотрения его классифика­ции. Всё программное обеспечение можно разделить на две большие груп­пы: прикладное программное обеспечение (application software) и системное про­граммное обеспечение (system software). К прикладному программному обеспечению относятся программы, выполняющие задачи, касающиеся предмет­ной области применения машины. Компьютер, который используется для состав­ления каталогов в производственной компании, и компьютер, с которым работа­ет инженер, будут содержать разные приложения. К прикладному программному обеспечению также относятся электронные таблицы, базы данных, системы под­готовки публикаций, системы бухгалтерского учета, системы разработки программ и компьютерные игры.

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

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

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