Классификация программного обеспечения по степени взаимодействия 433
15.1. Классификация программного обеспечения по степени взаимодействия с аппаратной частью компьютера
Бурное развитие компьютерной техники во всем мире привело к столь же бурному развитию программных продуктов. Область программного обеспечения пережила эпоху «первичной свободы и хаоса», когда программ было крайне мало и они вообще не рассматривались как продукт, который можно было продавать, а поставлялись вместе с вычислительной техникой. Мало было и программистов, а практически рядом с каждым компьютером работало несколько человек, которые «изобретали» собственные программы.
По мере распространения компьютеров и все большей зависимости работы этой техники от качества программного обеспечения, установленного на ней, программы начали приобретать собственные «вес» и стоимость. Чем больше появлялось компьютеров, тем больше становилось потенциальных покупателей программ. Рынок мгновенно отреагировал на это созданием коммерческого программного обеспечения. Область торговли компьютерами разделилась на две большие части: по продаже «железа» (hardware — аппаратное обеспечение) и «софта» (software — программное обеспечение).
Несомненным достоинством коммерческого подхода на данном этапе развития программного обеспечения было резкое повышение качества и унификация программного обеспечения. Недавний хаос превратился в порядок, быстро приобретя хорошо узнаваемые имена производителей программного обеспечения: Microsoft, Oracle, Sun, Borland. Программные продукты этих компаний пользуются большим спросом, а в отдельных областях полностью заняли рынок.
По мере все более глубокого проникновения компьютеров во все сферы жизни, в процессе все возрастающей мощи суперкомпьютеров и все уменьшающихся размеров микро-, супермикро- и встраиваемых ЭВМ, количество и разнообразие программных продуктов с каждым годом растет в геометрической прогрессии. Если совсем недавно программное обеспечение для первых компьютеров можно было разделять только по их маркам, то достаточно быстро возникло разделение на системное и пользовательское (прикладное) программное обеспечение. Со временем между этими двумя большими классами возник третий, промежуточный, слой, который так и назвали — промежуточное программное обеспечение. Необходимость создания все новых программных продуктов привело к появлению еще одного класса программного обеспечения — систем программирования.
Так было заложено первое основание для классификации по степени взаимодействия с аппаратурой {физическим оборудованием) компьютера.
Если представить, что программное обеспечение слой за слоем накладывается на аппаратную часть компьютера, давая возможность пользователю взаимодействовать с «железом», то схематично эту структуру можно представить на рис. 15.1.
Прикладное программное обеспечение не взаимодействует напрямую с аппаратным обеспечением компьютера. В качестве примера прикладного программного обеспечения можно привести текстовый процессор, графический редактор,
Глава 15. Классификация и тенденции развития программного обеспечения
электронную таблицу, проигрыватель музыкальных файлов, программу для расчета надежности несущих конструкций, программу бухгалтерского учета и прочие программы, которые выполняют пользовательские задания.
f:,|
______________ J
Рис. 15.1. Классификация программного обеспечения по степени взаимодействия с аппаратной частью компьютера
выполнения пользовательских !Й интерфейс. |
Системное программное обеспечение составляют операционная система с набором инструментов (утилит) администрирования и настройки, а также базовая система ввода-вывода (Basic Input Output System, BIOS).
-/^ртшов программное обеспечение {system software) — то J ^ {м^Ьшх управление аппаратной частью компьютеру й ^ - г щ^фщы программный интерфейс с аппаратны*ш<5р#Дт&ашц
Промежуточное программное обеспечение — сравнительно недавно сформировавшийся класс программного обеспечения, располагающийся между системным и пользовательским программным обеспечением. Промежуточное программное обеспечение не взаимодействует с нользователем непосредственно, поэтому не может быть отнесено к разряду пользовательских программ. В промежуточное программное обеспечение встроены средства взаимодействия с клиентским программным обеспечением, которое, в свою очередь, является прикладным. К промежуточному программному обеспечению относят серверы баз данных, серверы приложений и другие серверные программы, обращение к которым производится через клиентскую часть.