Классификация программного обеспечения по степени взаимодействия с аппаратной частью компьютера
Бурное развитие компьютерной техники во всем мире привело к столь же бурному развитию программных продуктов. Область программного обеспечения пережила эпоху «первичной свободы и хаоса», когда программ было крайне мало и они вообще не рассматривались как продукт, который можно было продавать, а поставлялись вместе с вычислительной техникой. Мало было и программистов, а практически рядом с каждым компьютером работало несколько человек, которые «изобретали» собственные программы.
По мере распространения компьютеров и все большей зависимости работы этой техники от качества программного обеспечения, установленного на ней, программы начали приобретать собственные «вес» и стоимость. Чем больше появлялось компьютеров, тем больше становилось потенциальных покупателей программ. Рынок мгновенно отреагировал на это созданием коммерческого программного обеспечения. Область торговли компьютерами разделилась на две большие части: по продаже «железа» (hardware — аппаратное обеспечение) и «софта» (software — программное обеспечение).
Несомненным достоинством коммерческого подхода на данном этапе развития программного обеспечения было резкое повышение качества и унификация программного обеспечения. Недавний хаос превратился в порядок, быстро приобретя хорошо узнаваемые имена производителей программного обеспечения: Microsoft, Oracle, Sun, Borland. Программные продукты этих компаний пользуются большим спросом, а в отдельных областях полностью заняли рынок.
По мере все более глубокого проникновения компьютеров во все сферы жизни, в процессе все возрастающей мощи суперкомпьютеров и все уменьшающихся размеров микро-, супермикро- и встраиваемых ЭВМ, количество и разнообразие программных продуктов с каждым годом растет в геометрической прогрессии. Если совсем недавно программное обеспечение для первых компьютеров можно было разделять только по их маркам, то достаточно быстро возникло разделение на системное и пользовательское (прикладное) программное обеспечение. Со временем между этими двумя большими классами возник третий, промежуточный, слой, который так и назвали — промежуточное программное обеспечение. Необходимость создания все новых программных продуктов привело к появлению еще одного класса программного обеспечения — систем программирования.
Так было заложено первое основание для классификации по степени взаимодействия с аппаратурой (физическим оборудованием) компьютера.
Если представить, что программное обеспечение слой за слоем накладывается на аппаратную часть компьютера, давая возможность пользователю взаимодействовать с «железом», то схематично эту структуру можно представить на рис. 15.1.
Прикладное программное обеспечение не взаимодействует напрямую с аппаратным обеспечением компьютера. В качестве примера прикладного программного обеспечения можно привести текстовый процессор, графический редактор,
электронную таблицу, проигрыватель музыкальных файлов, программу для расчета надежности несущих конструкций, программу бухгалтерского учета и прочие программы, которые выполняют пользовательские задания.
IШшшШШШ
шшш р-М ■ |
S |
у"ШЛШЫ д |
ВЙ^Щ Промежуточное ПО
ее
I |
JLmJk
Рис. 15.1. Классификация программного обеспечения по степени взаимодействия с аппаратной частью компьютера
_________________________ ._____ , -^топрограммров^®
'ШЩрЩ^фтт^Ш для выполнения пользовательских заданий и ш^щтьщ^г'^^
Системное программное обеспечение составляют операционная система с набором инструментов (утилит) администрирования и настройки, а также базовая система ввода-вывода (Basic Input Output System, BIOS).
программное обеспечение (system software) — то програЦй^о! йртптт аппаратной частью компьютеру # ревизующих для ш |
Промежуточное программное обеспечение — сравнительно недавно сформировавшийся класс программного обеспечения, располагающийся между системным и пользовательским программным обеспечением. Промежуточное программное обеспечение не взаимодействует с пользователем непосредственно, поэтому не может быть отнесено к разряду пользовательских программ. В промежуточное программное обеспечение встроены средства взаимодействия с клиентским программным обеспечением, которое, в свою очередь, является прикладным. К промежуточному программному обеспечению относят серверы баз данных, серверы приложений и другие серверные программы, обращение к которым производится через клиентскую часть.
Программирование, так же как и производство средств разработки программного обеспечения, управления жизненным циклом программ и программной инженерии, сегодня составляет отдельную индустрию. Трудно провести точный водораздел между тем, где средства разработки программного обеспечения уже не принадлежат к системному программному обеспечению, а переходят на прикладной уровень. Поэтому следующий класс, класс инструментальных средств программирования, был выделен путем объединения программного обеспечения по сходному функциональном признаку.
Теоретические вопросы виртуализации (то есть загрузки на одном компьютере нескольких операционных систем одновременно) рассматривались еще в 60-70-х гг., но серьезные и функционально законченные разработки в этом направлении активно ведутся только последние 10 лет. И даже широко известные виртуальные эмуляторы аппаратных платформ, такие как Vmware, до какого-то момента можно было рассматривать только как прикладное программное обеспечение. Однако в последние несколько лет все основные производители компьютерного аппаратного обеспечения и центральных процессоров стали учитывать в конструкции своих продуктов возможность встроенной (built-in) виртуализации на «голом железе» (bare metal).
Дата добавления: 2016-04-14; просмотров: 2787;