Классификация программного обеспечения icon

Классификация программного обеспечения


2 чел. помогло.
Смотрите также:
Курс 4 группа 403 по дисциплине: информатика преподавателя Яковлевой Н. Б...
Рабочая программа учебной дисциплины (модуля) Проектирование программного обеспечения...
И. П. Абрашин Вадим Евгеньевич...
Учебная программа по дисциплине метрология и качество программного обеспечения краснобаев Ю. Л...
Учебно-методический комплекс дисциплины разработка и стандартизация программных средств и...
Доклад посвящен применению теории сетей Петри для моделирования процессов разработки...
Лабораторная работа №3 Структурный подход к программированию. Стадия «Технический проект»...
«Техническое задание»...
№3 Программные средства реализации информационных процессов. Классификация...
Г. Москва Заседания проектной группы по стандартизации программного обеспечения...
Итоги урока (1-2 мин). Организационный момент: Проверка отсутствующих...
Разработка программного обеспечения на заказ...



Загрузка...
скачать

520285.doc стр.


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




^ Схема 1. Классификация компьютерного обеспечения.


В компьютерном жаргоне часто используется слово «софт» от английского software, которое в этом смысле впервые применил в статье American Mathematical Monthly математик из Принстонского университета Джон Тьюки (John W. Tukey) в 1958 г. В области вычислительной техники и программирования программное обеспечение – это совокупность всей информации, данных и программ, которые обрабатываются компьютерными системами.

^

Классификация программного обеспечения


Программное обеспечение классифицируют, как правило, по способу распространения и по назначению. В классификации по способу распространения выделяют следующие виды ПО:

  • Коммерческое программное обеспечение (Commercial Software) – программное обеспечение, созданное коммерческой организацией с целью получения прибыли.

  • Условно–бесплатное программное обеспечение (Shareware или Trial Software) – программное обеспечение, которое имеет те или иные ограничения на его использование. Основной принцип Shareware – «попробуй, прежде чем купить» (try before you buy). Программа, распространяемая как shareware, предоставляется пользователям бесплатно. В течение определённого срока (составляющего обычно 30 дней) пользователь может использовать программу, тестировать её, осваивать её возможности, но по истечении этого срока он обязан либо купить ее, либо удалить со своего компьютера.

  • Бесплатное программное обеспечение (Freeware) – это бесплатное программное обеспечение, распространяемое без исходных кодов.

  • Свободное программное обеспечение (Free Software) – это программное обеспечение, в состав которого входят и исходные тексты данного ПО. В отношении свободного ПО пользователь обладает «четырьмя свободами», которые сформулировал Ричард Столлман в 1970–х гг.: запускать, изучать, распространять и улучшать программу. Нужно подчеркнуть, что эти принципы оговоривают только доступность программ для всеобщего использования, критики и улучшения, но никак не оговаривают связанные с распространением программ денежные отношения, в том числе не предполагают и бесплатности. Открытый доступ к исходным текстам программ является ключевым признаком свободного ПО, поэтому предложенный несколько позднее Эриком Реймондом термин «open source software» (ПО с открытым исходным текстом) некоторым представляется даже более удачным для обозначения феномена свободного программного обеспечения, чем изначально предложенный Столмэном «free software».

  • Шпионское программное обеспечение (Spyware) – программное обеспечение, обычно распространяющееся вместе другим полезным, занимающееся сбором информации на компьютере пользователя и отсылкой ее создателю.

  • Устаревшее программное обеспечение (Abandonware) – программное обеспечение, которое больше не выставляется на продажу компанией–производителем. Чаще всего Abandonware распространяется бесплатно (как freeware), иногда — платно (как shareware).

  • Adware – вид программного обеспечения, при использовании которого пользователю принудительно показывается реклама (пример – «родной» клиент ICQ, который в отличие, например, от Miranda IM или Quip, во время своей работы рекламирует те или иные товары и услуги). Как правило, средства, полученные от рекламы, идут на дальнейшее развитие этого ПО. В данную категорию могут попадать программы из любой другой категории – freeware, commercial software и т.д.

  • Careware (charityware) – вид условно–бесплатного программного обеспечения shareware. Автор данного вида ПО требует, чтобы оплата за него шла на благотворительность. Автор концепции Careware является Поль Лютус (Paul Lutus), автор HTML–редактора Арахнофилия.


По назначению программное обеспечение классифицируют на:

  • системное;

  • прикладное;

  • специализированное.

Рассмотрим эти классы более подробно.

^

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


Системное программное обеспечение — это набор программ, которые управляют компонентами вычислительной системы, такими как процессор, коммуникационные и периферийные устройства, а также которые предназначены для обеспечения функционирования и работоспособности всей системы.

Большинство из них отвечают непосредственно за контроль и объединение в единое целое различных компонентов аппаратного оборудования вычислительной системы. Системное программное обеспечение противопоставляется прикладному программному обеспечению, которое напрямую решает проблемы пользователя. Конкретные виды системного программного обеспечения включают:

  • загрузчики ОС;

  • операционные системы;

  • драйверы устройств;

  • системные утилиты.
^

Загрузчик ОС


Загрузчик операционной системы – это специальная программа, обеспечивающая загрузку операционной системы непосредственно после включения компьютера.

Функции загрузчика:

  • обеспечивает необходимые средства для диалога с пользователем компьютера (например, загрузчик позволяет выбрать ядро операционной системы для загрузки);

  • приводит аппаратуру компьютера в состояние, необходимое для старта ядра операционной системы (например, на не–x86 архитектурах перед запуском ядра загрузчик должен правильно настроить виртуальную память);

  • загружает ядро операционной системы в ОЗУ. Загрузка ядра операционной системы не обязательно происходит с НЖМД. Загрузчик может получать ядро по сети. Ядро может храниться в ПЗУ или загружаться через последовательные интерфейсы (это может пригодиться на ранней стадии отладки создаваемой компьютерной системы);

  • формирует параметры, передаваемые ядру операционной системы (например, ядру Linux передаются параметры, указывающие способ подключения корневой файловой системы);

  • передаёт управление ядру операционной системы.

На компьютерах архитектуры IBM PC запуск загрузчика осуществляется программным обеспечением BIOS, записанной в ПЗУ компьютера, после успешного окончания процедуры POST.


Распространённые загрузчики:

  • NTLDR – загрузчик ядра Windows NT;

  • Windows Boot Manager (bootmgr.exe,winload.exe) – загрузчик ядра Windows Vista;

  • LILO (LInux LOader) – загрузчик, в основном применяемый для загрузки ядра Linux;

  • GRUB (Grand Unified Bootloader) – применяется для загрузки ядра Linux и Hurd (StartUp Manager);

  • OS/2 BootManager – загрузчик ядра OS/2;

  • RedBoot – загрузчик для встраиваемых систем;

  • SILO (SPARC Improved bootLOader) – загрузчик Linux и Solaris для машин с архитектурой SPARC;

  • Loadlin – загружает Linux из под DOS или Windows;

  • Syslinux – загружает Linux из под DOS или Windows;

  • BOOTP – применяется для загрузки по сети;

  • Yaboot – загрузчик Linux на PowerPC;

  • BootX – загрузчик Mac OS X.
^

Операционные системы


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

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

С 1990–х гг. XX века наиболее распространёнными операционными системами для персональных компьютеров и серверов являются ОС семейства Microsoft Windows и системы класса UNIX (особенно GNU/Linux).

Современные ОС выполняют следующие функции:

  1. загрузка приложений в оперативную память и их выполнение;

  2. стандартизованный доступ к периферийным устройствам (устройства ввода-вывода);

  3. управление оперативной памятью (распределение между процессами, виртуальная память);

  4. управление энергонезависимой памятью (жёсткий диск, компакт-диск и т.д.), как правило с помощью файловой системы;

  5. предоставление пользовательского интерфейса;

  6. параллельное или псевдопараллельное выполнение задач (многозадачность);

  7. взаимодействие между процессами;

  8. межмашинное взаимодействие (компьютерная сеть);

  9. защита самой системы, а также пользовательских данных и программ от злонамеренных действий пользователей или приложений;

  10. разграничение прав доступа и многопользовательский режим работы (аутентификация, авторизация).
^

Драйверы устройств


Драйвер (англ. driver) – это компьютерная программа, с помощью которой другая программа (обычно операционная система) получает доступ к аппаратному обеспечению стандартным образом. В общем случае для использования каждого устройства, подключённого к компьютеру, необходим специальный драйвер. Операционная система управляет некоторым «виртуальным устройством», которое понимает стандартный набор команд. Драйвер переводит эти команды в команды, которые понимает непосредственно устройство. Эта идеология называется абстрагирование от аппаратного обеспечения. Обычно с операционными системами поставляются драйверы для ключевых компонентов аппаратного обеспечения, без которых система не сможет работать. Однако для более специфических устройств (таких, как графическая плата или принтер) могут потребоваться специальные драйверы, обычно предоставляемые производителем устройства.

Драйвер состоит из нескольких функций, которые обрабатывают определенные события операционной системы. Обычно это 7 основных событий:

  1. загрузка драйвера – драйвер регистрируется в системе, производит первичную инициализацию и т. п.;

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

  3. открытие драйвера – начало основной работы. Обычно драйвер открывается программой как файл;

  4. чтение;

  5. запись – программа читает или записывает данные из/в устройство, обслуживаемое драйвером;

  6. закрытие – завершение работы драйвера;

  7. IOCTL – зачастую драйвер поддерживает интерфейс ввода-вывода, специфичный для данного устройства. С помощью этого интерфейса программа может послать специальную команду, которую поддерживает данное устройство. Например, для SCSI устройств можно послать команду GET_INQUERY, чтобы получить описание устройства. В Win32 системах управление осуществляется через API-фунцию DeviceIoControl(), в UNIX-подобных – ioctl()
^

Системные утилиты


Утилита (англ. utility или tool) – программный продукт, предназначенный не для решения какой-либо прикладной задачи, а для решения вспомогательных задач. Утилиты можно разделить на три группы:

  1. утилиты сервисного обслуживания компьютера;

  2. утилиты расширения функциональности;

  3. информационные утилиты.

К утилитам сервисного обслуживания относятся все виды сервисных программ, такие как утилиты по дефрагментации, проверке и исправлению структуры разделов жёсткого диска, исправлению системных зависимостей, тонкой настройке системы и т. д. Поскольку типовой набор необходимых УСО. примерно одинаков для всех пользователей ПК, то большое распространение получили заранее собранные пакеты утилит, наиболее ярким примером которых может послужить пакет Norton Utilities (входящий в Norton System Works) от компании Symantec.

^ Утилиты расширения функциональности расширяют функциональность существующих прикладных или системных средств, например, безопасного (невосстановимого) удаления файлов, утилиты системного менеджмента.

Информационные утилиты включают в себя мониторы, бенчмарки (тесты производительности), и утилиты общей (статической) информации.

^

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


Прикладное программное обеспечениепрограммы, предназначенные для выполнения определенных пользовательских задач и рассчитанные на непосредственное взаимодействие с пользователем. В отличие от прикладного, системное программное обеспечение используется для обеспечения работы компьютера самого по себе и выполнения прикладных программ.

Если в качестве простой аналогии рассматривать операционную систему как корпус, мотор, шасси, колёса и другие компоненты автомобиля (те детали которые позволяют автомобилю ехать), то роль прикладных программ будут играть рулевое управление, сиденья, приборная панель, кондиционер и т. п., то есть те части которые позволяют нам использовать автомобиль в целях передвижения в нём и разнообразные дополнительные опции, повышающие удобство этого использования. Аналогично автомобилю, которым невозможно пользоваться без руля, разве что только для обогрева помещения, так и компьютер без прикладного ПО практически бесполезен, можно из него сделать разве что файл-сервер или принт-сервер.

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

Выделяют несколько типов прикладного ПО.
^

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


Промышленное программное обеспечение (Enterprise software) – служит для управления процессами и потоками данных в крупных организациях. Часто промышленное ПО представляет собой целый пакет отдельных программ. Основными производителями промышленного ПО в мире являются, как правило, крупные транснациональные софтверные гиганты, такие как Microsoft, Adobe Systems, Oracle Corporation, SAP. К промышленному ПО относятся:

  • системы управления базами данных (СУБД);

  • системы хранения цифровых данных (СХЦД);

  • системы управления документооборотом (СУД);

  • системы управления безопасностью (СУБ).
^

Информационное программное обеспечение


Информационное программное обеспечение (information worker software) – служит для создания и управления различного рода информационных данных в организациях. К такому ПО относятся:

  • системы управления ресурсами (СУР) – различные аккаунтные системы (например, WebMoney), системы табельного учета (учет рабочего времени по турникетам ВНИИЭФа) и т.д.;

  • системы управления персональными данными (СУПД) – электронные органайзеры (MS Outlook);

  • системы подготовки документации (СПД) – текстовые процессоры (OpenOffice Writer. MS Word), программы для построения различного рода схем и диаграмм (ConceptDraw, MS Visio), программы для подготовки публикаций (Adobe InDesign, Apple Pages, MS Publisher) и презентаций (OpenOffice Impress, MS PowerPoint) и т.д.;

  • научно-аналитические системы (НАС) – различные CAD-системы (AutoCAD, MathCAD), системы для проведения инженерных расчетов (Maple, MATHLAB), системы статистического анализа (Statistical Lab, SHAZAM) и т.д.;

  • системы коллективной работы (СКР) – различные программы обмена сообщениями (ICQ, Skype), средства обеспечения коллективной разработки (MS VSS, CVS), wiki-инструментарий и т.д.
^

Программное обеспечение для доступа к контенту


Программное обеспечение для доступа к контенту (content access software) – служит для преобразования и отображения различного рода цифровой информации (контента) в удобном для человеческого восприятия виде. К данному ПО относятся:

  • веб-браузеры – программы для просмотра Интернет-страниц (MS Internet Explorer, MyIE, Mozilla Firefox, Opera);

  • медиа-плейеры – программы для проигрывания мультимедиа-файлов, т.е. файлов, которые содержат в себе различные виды контента, например, видео и аудио (MS Media Player, Media Player Classic, WinAMP, WinDVD, Macromedia Flash Player);

  • все виды развлекательного программного обеспечения – игры, скринсейверы, электронные животные и т.д.

Образовательное программное обеспечение (educational software) – служит для обучения и повышения уровня знаний пользователей. К данной категории ПО относятся:

  • обучающие развлекательные программы (edutainment) – данные программы позволяют в игровой манере прививать пользователям те или иные навыки или знания (клавиатурные тренажеры, программы по улучшению памяти);

  • программы, проверяющие полученные знания – программы для проведения различного рода электронных аттестационных тестов и т.д.;

  • электронные книги – к ним относятся электронные словари и переводчики (Lingvo, Prompt), электронные учебники, электронные энциклопедии;

Имитационное программное обеспечение (simulation software) – служит для имитации физических или абстрактных систем в исследовательских, обучающих или промышленных целях. К данному ПО относят:

  • программы трехмерной визуализации – позволяют отображать в трехмерном виде те или физические объекты (3D Max Studio, Maya);

  • программы моделирования социальных процессов – позволяют прогнозировать развитие различных социальных процессов (EcoLab, Multi-Agent Simulation Suite);

  • программы-симуляторы управления – имитируют управление тем или иным транспортным средством, производственным процессом (имитация пульта управления) и т.д.
^

Программное обеспечение медиа-разработок


Программное обеспечение медиа-разработок (media development software) – служит для создания медиа-контента. В состав данного ПО входит:

  • программы для создания и редактирования графических изображений – графические редакторы (MS Paint, Adobe Photoshop), программы просмотра, каталогизации и хранения изображений (ACDSee) и т.д.;

  • программы для создания и редактирования аудио-файлов – музыкальные редакторы (Cool Edit, FL Studio), программы-конверторы музыкальных форматов (AudioGrabber) и т.д.;

  • программы для создания и редактирования видео-файлов – кодеки (K-Lite Codec Pack), видео-конверторы (VirtualDub), обработчики домашнего видео (Pinnacle Studio) и т.д.;

  • программы для создания и редактирования иного медиа-контента – разработка flash-анимации (Macromedia Flash Studio), программы для воспроизведения речи и т.д.



^

Инструментальное программное обеспечение


Инструментальное программное обеспечение представляют собой программы или целые пакеты программ, предназначенные для использования разработки новых программ. Современное инструментальное ПО – это целые интегрированные среды (англ. IDE, Integrated Development Environment), или системы программных средств, используемых программистами для разработки программного обеспечения. Обычно среда разработки включает в себя текстовый редактор, компилятор и/или интерпретатор, средства автоматизации сборки и отладчик. Иногда также содержит систему управления версиями и разнообразные инструменты для упрощения конструирования графического интерфейса пользователя. Многие современные среды разработки также включают браузер классов, инспектор объектов и диаграмму иерархии классов – для использования при объектно-ориентированной разработке ПО. Хотя и существуют среды разработки, предназначенные для нескольких языков – такие как Eclipse или Microsoft Visual Studio, обычно среда разработки предназначается для одного определённого языка. Примеры сред разработки – Sun Studio, Turbo Pascal, Borland C++, GNU toolchain, DrPython, Borland Delphi, Dev-C++, Lazarus. Частный случай ИСР – среды визуальной разработки, которые включают в себя возможность визуального редактирования интерфейса программы.

^

Программные средства защиты


Программные средства защиты предназначены для обеспечения хранения, обработки и передачи цифровых данных. К программным средствам защиты относят:

  • Криптошлюзы

  • Средства аутентификации

  • Средства мониторинга и аудита

  • Средства разграничения доступа

  • Системы криптографической защиты, шифрования и ЭЦП

  • Антивирусные программы

  • Антиспамовые программы

  • Межсетевой экран



^

Контрольные вопросы


  1. Из каких элементов состоит современное компьютерное обеспечение?

  2. Понятие программного обеспечения.

  3. Какие виды ПО можно выделить, классифицируя его по способу распространения? Приведите примеры.

  4. В чем различие свободно распространяемого ПО от бесплатного ПО?

  5. Понятие системного программного обеспечения.

  6. На какие группы делиться системное ПО?

  7. Понятие загрузчика операционной системы, его функции.

  8. Понятие операционной системы, ее функции.

  9. Понятие драйвера.

  10. Понятие и виды системных утилит.

  11. Понятие прикладного программного обеспечения.

  12. В чем отличие прикладного ПО от системного?

  13. Понятие промышленного ПО, его виды.

  14. Понятие информационного ПО, виды, примеры.

  15. Понятие ПО для доступа к контенту, виды, примеры.

  16. Понятие ПО для медиа-разработок, виды, примеры.

  17. Понятие инструментального ПО, примеры.

  18. Понятие программных средств защиты, виды.

Вопросы для самостоятельного изучения


  1. Взаимосвязь аппаратной и программной составляющих в современных персональных компьютерах.

  2. Современные языки программирования.

  3. Безопасность и защита компьютеров домашних пользователей.




Скачать 130,8 Kb.
оставить комментарий
Дата02.06.2012
Размер130,8 Kb.
ТипДокументы, Образовательные материалы
Добавить документ в свой блог или на сайт

средне
  1
хорошо
  1
отлично
  2
Ваша оценка:
Разместите кнопку на своём сайте или блоге:
rudocs.exdat.com

Загрузка...
База данных защищена авторским правом ©exdat 2000-2017
При копировании материала укажите ссылку
обратиться к администрации
Анализ
Справочники
Сценарии
Рефераты
Курсовые работы
Авторефераты
Программы
Методички
Документы
Понятия

опубликовать
Загрузка...
Документы

Рейтинг@Mail.ru
наверх