Классификация программного обеспечения
Введение.
Современные компьютеры можно считать универсальными, поскольку они применяются для автоматизации обработки и обмена самой разной информацией практически во всех отраслях современной жизни. Эта универсальность достигается, в первую очередь, применением огромного количества самого разного программного обеспечения, реализующего собственно операции по обработке информации.
Условно, программное обеспечение можно разделить на два крупных блока:
Системное программное обеспечение.
Сюда относятся программы, обеспечивающие выполнение общих для всех программ технических задач, взаимодействие с аппаратурой.
а) Ядро операционной системы. Функции этих программ, данных и библиотек функций — управление выполнением программ, оперативной памятью, обеспечение взаимодействия программ.
б) Системные библиотеки функций. Сюда входят библиотеки и программы, обеспечивающие работу с устройствами внешней памяти (файловые системы), устройств ввода/вывода" (обеспечение интерфейса с пользователем) и др… В большинстве современных ОС в ядро или важные системные библиотеки также входят библиотеки для работы с сетями.
в) Драйверы. Программное обеспечение, разрабатываемое поставщиками аппаратных средств и в операционной системе управляющее нестандартными (не предусмотренными при разработке ОС) устройствами. Драйвер обеспечивает выполнение стандартных для класса устройств функций, что позволяет разрабатывать новые, более совершенные устройства и применять их без принципиальных модификаций. ) Утилиты. Небольшие программы, реализующие частные технические задачи по обслуживанию компьютера: архивирование, контроль состояния устройств внешней памяти, поиск нужных файлов и пр.
|
|
Прикладное программное обеспечение.
Сюда относятся программные комплексы, обеспечивающие выполнение различных прикладных задач, т. е. выполнение фактических задач пользователей. Множество таких программ и комплексов огромно и исчерпывающей классификации не поддается. Среди таких комплексов можно выделить несколько часто используемых видов:
а) Офисные пакеты. Комплексы программ, решающих основные задачи делопроизводства: подготовку документов, выполнение подсчетов, презентации, ведение переписки и организацию работы и др.
б) Системы управления базами данных (СУБД), справочные системы и оболочки автоматизированных информационных систем. Эти программы позволяют организовать ввод, хранение и работу с большими объемами специализированных данных. СУБД часто являются общими компонентами, обеспечивающими работу большого количества специализированных комплексов.
|
|
в) Программы обработки графической информации. Крупный класс программ, целью применения которых является формирование какого-либо изображения. Среди них можно упомянуть программы обработки фотоизображений, издательские комплексы, системы подготовки реалистичных трехмерных изображений и многие другие.
г) Среды разработки. Программные комплексы, включающие специализированные текстовые редакторы, трансляторы, средства отладки и контроля за исполнением программ, средства разработки дополнительных элементов программ, библиотеки компонентов и многие другие средства, используемые профессиональными разработчиками системного и прикладного программного обеспечения.
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЬЮТЕРА
Программное обеспечение компьютера. Классификация
Программные продукты можно классифицировать по различным признакам. Рассмотрим классификацию, в которой основополагающим признаком является сфера (область) использования программных продуктов.
Для поддержки информационной технологии в этих областях выделим соответственно три класса программных продуктов
− системное программное обеспечение;
|
|
− пакеты прикладных программ;
− инструментарий технологии программирования.
Системное программное обеспечение (System Software) – совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ, направленное:
— на создание операционной среды функционирования других программ;
— обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;
— проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей;
— выполнение вспомогательных технологических процессов (копирование, архивирование, восстановление файлов программ и баз данных и т. д.).
Классификация программного обеспечения по сфере использования
Данный класс программных продуктов тесно связан с типом компьютера и является его неотъемлемой частью. Программные продукты ориентированы в основном на квалифицированных пользователей – профессионалов в компьютерной области: системных программистов, администраторов сети, прикладных программистов, операторов. Однако знание базовой технологии работы с этим классом программных продуктов требуется и конечным пользователям персонального компьютера, которые самостоятельно не только работают со своими программами, но и выполняют обслуживание компьютеров, программ и данных.
|
|
Программные продукты данного класса носят общий характер применения независимо от специфики предметной области. К ним предъявляются высокие требования по надежности и технологичности работы, удобству и эффективности использования.
Пакет прикладных программ (application program package) – это комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области; служит программным инструментарием решения функциональных задач и является самым многочисленным классом программных продуктов, выполняющих обработку информации различных предметных областей.
Установка программных продуктов на компьютер выполняется квалифицированными пользователями, а непосредственную их эксплуатацию осуществляют, как правило, конечные пользователи – потребители информации, деятельность которых во многих случаях весьма далека от компьютерной области. Данный класс программных продуктов может быть весьма специфичными для отдельных предметных областей.
Инструментарий технологии программирования – совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов:
Транслятор – это комплекс программ, обеспечивающих перевод программы, написанной на символическом языке, в совокупность машинных команд. В зависимости от функционального назначения транслятор может быть компилятором, интерпретатором, ассемблером или языковым процессором.
Компилятор – это транслятор, выполняющий перевод программы, написанной на алгоритмическом языке, в совокупность машинных команд без ее выполнения на компьютере.
Интерпретатор – транслятор, производящий перевод каждой конструкции алгоритмического языка в машинные команды и одновременное выполнение этих конструкций в компьютере.
Ассемблер – транслятор, переводит программы, записанные на машинно-ориентированном языке ассемблера в машинные коды.
Языковый процессор – это транслятор, объединяющий в себе функции компиляции, интерпретации и ассемблирования.
К категории инструментальных средств относятся не только трансляторы с языков высокого уровня, но и загрузчики, отладчики, иные системные программы.
Инструментарий технологии программирования обеспечивает процесс разработки программ и включает специализированные программные продукты, которые являются инструментальными средствами разработчика. Программные продукты данного класса поддерживают все технологические этапы процесса проектирования, программирования, отладки и тестирования программ. Пользователями технологии программирования являются системные и прикладные программисты.
Система программирования
Даже при наличии десятков тысяч программ IBM PC пользователям может потребоваться что-то такое, чего не делают (или делают, но не так) имеющиеся программы. В таких случаях следует использовать системы программирования, т. е. системы для разработки новых программ. Современные системы программирования для персональных компьютеров обычно представляют собой весьма мощные и удобные средства для разработки программ, в них входят:
— компьютер, осуществляющий электронное преобразование программ на языке программирования в программу в машинных кодах;
— библиотеки программ, содержащие заранее подготовленные подпрограммы, которыми могут пользоваться программисты;
— различные вспомогательные программы, например, отладчики, программы для получения перекрестных ссылок и др.
Бурное развитие новой информационной технологии и расширение сферы ее применения привели к интенсивному развитию программного обеспечения (ПО). Достаточно отметить, что в 1996 г. мировым сообществом на программное обеспечение затрачено свыше 110 млрд долларов. Причем тенденции развития ПО показывают, что динамика затрат имеет устойчивую тенденцию к росту, примерно 20% в год.
Под программным обеспечением информационных систем понимается совокупность программных и документальных средств для создания и эксплуатации систем обработки данных средствами вычислительной техники.
В зависимости от функций, выполняемых программным обеспечением, его можно разделить на:
- системные программы (иногда называют базовым программным обеспечением);
- прикладные программы;
- среды программирования.
К системным относятся прежде всего операционные системы и программы, входящие в состав операционной системы (например, драйвера для различных устройств компьютера (от английского слова «drive» — управлять), т.е. программы, управляющие работой устройств: драйвера для сканера, принтера и т.д.). Кроме операционных систем еще относятся обслуживающее программное обеспечение (их ещё называют сервисные или утилиты, от английского слова «utilize» — использовать) для обслуживания дисков, архиваторы, антивирусные программы и т.д.
К прикладным относятся программы, предназначенные для решения задач в различных сферах деятельности человека (бухгалтерские программы, текстовые и графические редакторы, базы данных, экспертные системы, переводчики, энциклопедии, обучающие, тестовые и игровые программы и т.д.).
К средам программирования относятся инструментальные средства для создания новых программ (ЛОГО, QuickBASIC, Pascal, Delphi и т.д.)
Классификация программного обеспечения
Назначением ЭВМ является выполнение программ. Программа содержит команды, определяющие порядок действии компьютера. Совокупность программ для компьютера образует программное обеспечение (ПО). По функциональному признаку различают системное и прикладное программное обеспечение.
В первом приближении все программы, работающие на компьютере, можно условно разделить на три категории (смотри рисунок):
1. прикладные программы, непосредственно обеспечивающие выполнение необходимых пользователям работ;
2. системные программы, выполняющие различные вспомогательные функции, например:
· управление ресурсами компьютера;
· создание копий используемой информации;
· проверка работоспособности устройств компьютера;
· выдача справочной информации о компьютере и др.;
3. инструментальные программные системы, облегчающие процесс создания новых программ для компьютера.
При построении классификации ПО нужно учитывать тот факт, что стремительное развитие вычислительной техники и расширение сферы приложения компьютеров резко ускорили процесс эволюции программного обеспечения.
Если раньше можно было по пальцам перечислить основные категории ПО — операционные системы, трансляторы, пакеты прикладных программ, то сейчас ситуация коренным образом изменилась.
Развитие ПО пошло как вглубь (появились новые подходы к построению операционных систем, языков программирования и т.д.), так и вширь (прикладные программы перестали быть прикладными и приобрели самостоятельную ценность).
Соотношение между требующимися программными продуктами и имеющимися на рынке меняется очень быстро. Даже классические программные продукты, такие, как операционные системы, непрерывно развиваются и наделяются интеллектуальными функциями, многие из которых ранее относились только к интеллектуальным возможностям человека.
Кроме того, появились нетрадиционные программы, классифицировать которые по устоявшимся критериям очень трудно, а то и просто невозможно, как, например, программа — электронный собеседник.
На сегодняшний день можно сказать, что более или менее определённо сложились следующие группы программного обеспечения:
· операционные системы и оболочки;
· системы программирования (трансляторы, библиотеки подпрограмм, отладчики и т.д.);
· инструментальные системы;
· интегрированные пакеты программ;
· динамические электронные таблицы;
· системы машинной графики;
· системы управления базами данных (СУБД);
· прикладное программное обеспечение.
Структура программного обеспечения показана на рисунке. Разумеется, эту классификацию нельзя считать исчерпывающей, но она более или менее наглядно отражает направления совершенствования и развития программного обеспечения.
Дата добавления: 2019-09-13; просмотров: 242; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!