Для чего используется программное обеспечение. Классификация программного обеспечения пк

Программное обеспечение (ПО) - это совокупность всех программ и соответствующей документации, обеспечивающая использование ЭВМ в интересах каждого ее пользователя.

Различают системное и прикладное ПО. Схематически программное обеспечение можно представить так:

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

Базовое ПО включает в себя:

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

    оболочки;

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

Сервисное ПО включает в себя программы (утилиты):

    диагностики;

    антивирусные;

    обслуживания носителей;

    архивирования;

    обслуживания сети.

Прикладное ПО – это комплекс программ для решения задач определённого класса конкретной предметной области. Прикладное ПО работает только при наличии системного ПО.

Прикладные программы называют приложениями. Они включает в себя:

    текстовые процессоры;

    табличные процессоры;

    базы данных;

    интегрированные пакеты;

    системы иллюстративной и деловой графики (графические процессоры);

    экспертные системы;

    обучающие программы;

    программы математических расчетов, моделирования и анализа;

    коммуникационные программы.

Особую группу составляют системы программирования (инструментальные системы), которые являются частью системного ПО, но носят прикладной характер. Системы программирования – это совокупность программ для разработки, отладки и внедрения новых программных продуктов. Системы программирования обычно содержат:

    трансляторы;

    среду разработки программ;

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

    отладчики;

    редакторы связей и др.

2.Основные составляющие сист.прог.обеспеч. Операц.системы.Утилиты. системы програм.СУБД. основные функции,классификация СУБД по способу доступа.

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

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

Операционная система решает задачи, которые можно условно разделить на две категории:

    во-первых, управление всеми ресурсами компьютера;

    во-вторых, обмен данными между устройствами компьютера, между компьютером и человеком.

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

Ещё не так давно работы по настройке приходилось выполнять пользователю вручную, а сегодня производители компонентов компьютерной техники разработали протокол plug-and-play (включил - заработало). Этот протокол позволяет операционной системе в момент подключения нового компонента получить информацию о новом устройстве, достаточную для настройки ОС на работу с ним.

Операционные системы для ПК различаются по нескольким параметрам. В частности, ОС бывают:

    однозадачные и многозадачные ;

    однопользовательские и многопользовательские ;

    сетевые и несетевые .

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

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

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

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

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

В настоящее время, с появлением мощных компьютеров, широкое распространение получили два типа ОС. К первому типу относятся достаточно похожие ОС семейства Windows компании Microsoft. Они многозадачные и имеют многооконный графический интерфейс. На рынке персональных компьютеров с Windows конкурируют ОС типа UNIX . Это многозадачная многопользовательская ОС с командным интерфейсом. В настоящее время разработаны расширения UNIX, обеспечивающие многооконный графический интерфейс. UNIX развивалась в течение многих лет разными компаниями, но до недавнего времени она не использовалась на персональных компьютерах, т.к. требует очень мощного процессора, весьма дорога и сложна, её установка и эксплуатация требуют высокой квалификации. В последние годы ситуация изменилась. Компьютеры стали достаточно мощными, появилась некоммерческая, бесплатная версия системы UNIX для персональных компьютеров - система Linux . По мере роста популярности этой системы в ней появились дополнительные компоненты, облегчающие её установку и эксплуатацию. Немалую роль в росте популярности Linux сыграла мировая компьютерная сеть Internet. Хотя освоение Linux гораздо сложнее освоения систем типа Windows, Linux - более гибкая и в то же время бесплатная система, что и привлекает к ней многих пользователей.

Существуют и другие ОС. Известная компания Apple производит компьютеры Macintosh с современной ОС MacOS . Эти компьютеры используются преимущественно издателями и художниками. Фирма IBM производит ОС OS/2 . Операционная система OS/2 такого же класса надёжности и защиты, как и Windows NT.

На смену операционной системе MS DOS с ее графическими оболочками Windows 3.1 и Windows 3.11 пришли полноценные операционные системы семейства Windows (сначала Windows 95, затем Windows 98, Windows Millennium, Windows 2000, Windows XP, Windows Vista и Windows 7). На рисунке показаны этапы развития персональных компьютеров класса РС и операционной системы Windows:

Операционные системы семейства Windows представляет собой 32-разрядные операционные системы, обеспечивающую многозадачную и многопоточную обработку приложений. Они поддерживает удобный графический пользовательский интерфейс, возможность работы в защищенном режиме, совместимость с программами реального режима и сетевые возможности. В Windows реализована технология поддержки самонастраивающейся аппаратуры Plug and Play, допускаются длинные имена файлов и обеспечиваются повышенные характеристики устойчивости.

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

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

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

Отличительной чертой Windows является объектно-ориентированный подход к построению системы. На уровне пользователя объектный подход выражается в том, что интерфейс представляет собой подобие реального мира, а работа с машиной сводится к действиям с привычными объектами. Так, папки можно открыть, убрать в портфель, документы – просмотреть, исправить, переложить с одного места на другое, выбросить в корзину, факс или письмо – отправить адресату и т. д. Пользователь работает с задачами и приложениями так же, как с документами на своем письменном столе. Обьектно-ориентированный подход реализуется через модель рабочего стола – первичного объекта Windows. После загрузки Windows он выводится на экран. На рабочем столе могут быть расположены различные объекты: программы, папки с документами (текстами, рисунками, таблицами), ярлыки программ или папок.

Ярлыки обеспечивают доступ к программе или документу из различных мест, не создавая при этом нескольких физических копий файла. На рабочий стол можно поместить не только пиктограммы приложений и отдельных документов, но и папок. Папки - еще одно название каталогов.

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

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

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

В Windows активно используется и правая кнопка мыши. Поместив указатель над интересующем объекте и сделав щелчок правой кнопкой мыши, можно раскрыть контекстное меню , содержащее наиболее употребительные команды, применимые к данному объекту.

При завершении работы нельзя просто выключить компьютер, не завершив работу системы по всем правилам - это может привести к потере некоторых несохраненных данных. Для правильного завершения работы необходимо сохранить данные во всех приложениях, с которыми работал пользователь, завершить работу всех ранее запущенных DOS-приложений, открыть меню кнопки “Пуск” и выбрать команду “Завершение работы”.

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

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

    управление данными во внешней памяти(на дисках);

    управление данными в оперативной памятис использованиемдискового кэша;

    журнализация изменений,резервное копированиеивосстановление базы данныхпосле сбоев;

    поддержка языков БД (язык определения данных,язык манипулирования данными).

    Файл-серверные

В файл-серверных СУБД файлы данных располагаются централизованно на файл-сервере. СУБД располагается на каждом клиентском компьютере (рабочей станции). Доступ СУБД к данным осуществляется черезлокальную сеть. Синхронизация чтений и обновлений осуществляется посредством файловых блокировок. Преимуществом этой архитектуры является низкая нагрузка на процессор файлового сервера. Недостатки: потенциально высокая загрузка локальной сети; затруднённость или невозможностьцентрализованногоуправления; затруднённость или невозможность обеспечения таких важных характеристик как высокаянадёжность,высокая доступностьи высокаябезопасность. Применяются чаще всего в локальных приложениях, которые используют функции управления БД; в системах с низкой интенсивностью обработки данных и низкими пиковыми нагрузками на БД.

На данный момент файл-серверная технология считается устаревшей, а её использование в крупных информационных системах - недостатком .

Примеры: Microsoft Access,Paradox,dBase,FoxPro,Visual FoxPro.

    Клиент-серверные

Клиент-серверная СУБД располагается на сервере вместе с БД и осуществляет доступ к БД непосредственно, в монопольном режиме. Все клиентские запросы на обработку данных обрабатываются клиент-серверной СУБД централизованно. Недостаток клиент-серверных СУБД состоит в повышенных требованиях к серверу. Достоинства: потенциально более низкая загрузка локальной сети; удобство централизованного управления; удобство обеспечения таких важных характеристик как высокая надёжность, высокая доступность и высокая безопасность.

Примеры: Oracle,Firebird,Interbase,IBM DB2,Informix,MS SQL Server,Sybase Adaptive Server Enterprise,PostgreSQL,MySQL,Caché,ЛИНТЕР.

    Встраиваемые

Встраиваемая СУБД - СУБД, которая может поставляться как составная часть некоторого программного продукта, не требуя процедуры самостоятельной установки. Встраиваемая СУБД предназначена для локального хранения данных своего приложения и не рассчитана на коллективное использование в сети. Физически встраиваемая СУБД чаще всего реализована в видеподключаемой библиотеки. Доступ к данным со стороны приложения может происходить черезSQLлибо через специальныепрограммные интерфейсы.

Примеры: OpenEdge,SQLite,BerkeleyDB,FirebirdEmbedded,Microsoft SQL Server Compact,ЛИНТЕР.

3. Этапы подготовки программы к выполнению. Программный модуль. Исходный модуль. Трансляция. Машинный язык. Трансляторы. Автоход. Язык ассемблера. Язык высокого уровня. Объектный модуль. Загрузочный модуль. Интерпретация.

Этапы подготовки программы

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

При выборе модульной структуры должны учитываться следующие основные соображения:

    Функциональность - модуль должен выполнять законченную функцию

    Несвязность - модуль должен иметь минимум связей с другими модулями, связь через глобальные переменные и области памяти нежелательна

    Специфицируемость - входные и выходные параметры модуля должны четко формулироваться

На рисунке показаны этапы, которые проходит программа от своего написания до выполнения

Программа пишется в виде исходного модуля, на рисунке - файл ИМ.

Первым (не для всех языков программирования обязательным) этапом подготовки программы является обработка ее Макропроцессором (или Препроцессором). Макропроцессор обрабатывает текст программы и на выходе его получается новая редакция текста (на рис. - ИМ"). В большинстве систем программирования Макропроцессор совмещен с транслятором, и для программиста его работа и промежуточный ИМ" "не видны". Следует иметь в виду, что Макропроцессор выполняет обработку текста, это означает, с одной стороны, что он "не понимает" операторов языка программирования и "не знает" переменных программы, с другой, что все операторы и переменные Макроязыка (тех выражений в программе, которые адресованы Макропроцессору) в промежуточном ИМ" уже отсутствуют и для дальнейших этапов обработки "не видны". Так, если Макропроцессор заменил в программе некоторый текст A на текст B, то транслятор уже видит только текст B, и не знает, был этот текст написан программистом "своей рукой" или подставлен Макропроцессором.

Следующим этапом является трансляция.

Как правило, выходным языком транслятора является машинный язык целевой вычислительной системы. (Целевая ВС - та ВС, на которой программа будет выполняться.)

Трансляторы - общее название для программ, осуществляющих трансляцию. Они подразделяются на Ассемблеры и Компиляторы - в зависимости от исходного языка программы, которую они обрабатывают. Ассемблеры работают с Автокодами или языками Ассемблера, Компиляторы - с языками высокого уровня.

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

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

Разрешение внешних ссылок выполняется на следующем этапе подготовки, который обеспечивается Редактором Связей (Компоновщиком). Редактор Связей соединяет вместе все объектные модули, входящие в программу. Поскольку Редактор Связей "видит" уже все компоненты программы, он имеет возможность обработать те места в объектных модулях, которые содержат внешние ссылки. Результатом работы Редактора Связей является загрузочный модуль.

Загрузочный модуль сохраняется в виде файла на внешней памяти. Для выполнения программа должна быть перенесена (загружена) в оперативную память. Иногда при этом требуется некоторая дополнительная обработка (например, настройка адресов в программе на ту область оперативной памяти, в которую программа загрузилась). Эта функция выполняется Загрузчиком, который обычно входит в состав операционной системы.

Возможен также вариант, в котором редактирование связей выполняется при каждом запуске программы на выполнение и совмещается с загрузкой. Это делает Связывающий Загрузчик. Вариант связывания при запуске более расходный, т.к. затраты на связывание тиражируются при каждом запуске. Но он обеспечивает:

    большую гибкость в сопровождении, так как позволяет менять отдельные объектные модули программы, не меняя остальных модулей;

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

Вариант интерпретации подразумевает прямое исполнение исходного модуля.

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

Примеры интерпретаторов: языки процедур (sell, REXX), JVM.

4. общая характеристика интегрированных сред разработки. Основные компоненты ИСР.

Интегри́рованная среда́ разрабо́тки, ИСР (англ. IDE, Integrated development environment) - система программных средств, используемая программистами для разработки программного обеспечения (ПО).

Обычно, среда разработки включает в себя:

текстовый редактор,

компилятор и/или интерпретатор,

средства автоматизации сборки,

отладчик.

Иногда содержит также средства для интеграции с системами управления версиями и разнообразные инструменты для упрощения конструирования графического интерфейса пользователя. Многие современные среды разработки также включают браузер классов, инспектор объектов и диаграмму иерархии классов - для использования при объектно-ориентированной разработке ПО. Хотя и существуют ИСР, предназначенные для нескольких языков программирования - такие как Eclipse, Embarcadero RAD Studio, Qt Creator, последние версии NetBeans, Xcode или Microsoft Visual Studio, но обычно ИСР предназначается для одного определённого языка программирования - как, например, Visual Basic, Delphi, Dev-C++.

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

5. программный модуль. Статическая библиотека. Динамические библиотеки. Плагины.

Программный модуль

Программный модуль - согласно ГОСТ 19781-90 - программа или функционально завершенный фрагмент программы, предназначенный для:

1- хранения;

2- трансляции;

3- объединения с другими программными модулями; и

4- загрузки в оперативную память.

Различают:

Стандартные модули, входящие в язык программирования; и

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

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

И программных документов, необходимых для эксплуатации этих программ.

Также - совокупность программ, процедур и правил, а также документации, относящихся к функционированию системы обработки данных .

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

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

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

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

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

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

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

Понятие операционной системы

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

Есть приложения вычислительной техники, для которых ОС излишни. Например, встроенные микрокомпьютеры содержатся сегодня во многих бытовых приборах, автомобилях (иногда по десятку в каждом), сотовых телефонах и т. п. Зачастую такой компьютер постоянно исполняет лишь одну программу, запускающуюся по включении. И простые игровые приставки - также представляющие собой специализированные микрокомпьютеры - могут обходиться без ОС, запуская при включении программу, записанную на вставленном в устройство «картридже» или компакт-диске . Тем не менее, некоторые микрокомпьютеры и игровые приставки всё же работают под управлением особых собственных ОС. В большинстве случаев, это UNIX-подобные системы (последнее особенно верно в отношении программируемого коммутационного оборудования: файрволов , маршрутизаторов ).

Основные идеи ОС

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

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

Функции ОС

Основные функции (простейшие ОС):

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

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

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

§ Управление доступом к данным на энергонезависимых носителях (таких как жёсткий диск , компакт-диск и т. д.), организованным в той или иной файловой системе .

§ Пользовательский интерфейс.

§ Сетевые операции, поддержка стека протоколов.

Дополнительные функции:

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

§ Взаимодействие между процессами: обмен данными, взаимная синхронизация.

§ Защита самой системы, а также пользовательских данных и программ от действий пользователей (злонамеренных или по незнанию) или приложений.

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

Встроенные программы

Встроенные программы или firmware - это программы, "зашитые" в цифровые электронные устройства.

Утилиты

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

Иногда утилиты относят к классу сервисного программного обеспечения .

Утилиты используются для:

§ Мониторинга показателей датчиков и производительности оборудования - мониторинг температур процессора, видеоадаптера; чтение S. M.A. R.T. жёстких дисков;

§ Управления параметрами оборудования - ограничение максимальной скорости вращения CD-привода; изменение скорости вращения вентиляторов .

§ Контроля показателей - проверка ссылочной целостности; правильности записи данных.

§ Расширения возможностей - форматирование и/или переразметка диска с сохранением данных, удаление без возможности восстановления.

Типы утилит

§ Дисковые утилиты

¨ Дефрагментаторы

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

¨ Очистка диска - удаление временных файлов, ненужных файлов, чистка «корзины».

¨ Разметка диска - деление диска на логические диски, которые могут иметь различные файловые системы и восприниматься операционной системой как несколько различных дисков.

¨ Резервное копирование - создание резервных копий целых дисков и отдельных файлов, а также восстановление из этих копий.

¨ Сжатие дисков - сжатие информации на дисках для увеличения вместимости жёстких дисков.

§ Утилиты работы с реестром

§ Утилиты мониторинга оборудования

§ Тесты оборудования

§ ассемблеры - компьютерные программы, осуществляющие преобразование программы в форме исходного текста на языке ассемблера в машинные команды в виде объектного кода .

§ трансляторы - программы или технические средства, выполняющее трансляцию программы.

§ компиляторы - Программы, переводящие текст программы на языке высокого уровня, в эквивалентную программу на машинном языке.

§ интерпретаторы - Программы (иногда аппаратные средства), анализирующие команды или операторы программы и тут же выполняющие их

§ компоновщики (редакторы связей) - программы, которые производят компоновку - принимают на вход один или несколько объектных модулей и собирают по ним исполнимый модуль.

§ препроцессоры исходных текстов - это компьютерные программы, принимающие данные на входе, и выдающие данные, предназначенные для входа другой программы, например, такой, как компилятор

§ Отладчик (debugger)- является модулем среды разработки или отдельным приложением, предназначенным для поиска ошибок в программе.

§ текстовые редакторы - компьютерные программы, предназначенные для создания и изменения текстовых файлов, а также их просмотра на экране, вывода на печать, поиска фрагментов текста и т. п.

§ специализированные редакторы исходных текстов - текстовые редакторы для создания и редактирования исходного кода программ. Специализированный редактор исходных текстов может быть отдельным приложением, или быть встроен в интегрированную среду разработки (IDE).

§ библиотеки подпрограмм - сборники подпрограмм или объектов, используемых для разработки программного обеспечения.

§ Редакторы графического интерфейса

Системы управления базами данных

Системауправлениябазамиданных (СУБД) - специализированная программа (чаще комплекс программ), предназначенная для организации и ведения базы данных.

Так как системы управления базами данных не являются обязательным компонентом вычислительной системы, зачастую их не относят к системному программному обеспечению. Часто СУБД осуществляют лишь служебную функцию при работе других видов программ (веб-серверы, серверы приложений), поэтому их не всегда можно отнести к прикладному программному обеспечению. Поэтому СУБД иногда относят к промежуточному программному обеспечению (Middleware )

Основные функции СУБД

§ управление данными во внешней памяти (на дисках);

§ управление данными в оперативной памяти с использованием дискового кэша ;

§ журнализация изменений , резервное копирование и восстановление базы данных после сбоев;

§ поддержка языков БД (язык определения данных, язык манипулирования данными).

Классификация СУБД по способу доступа к БД

§ Файл-серверные

В файл-серверных СУБД файлы данных располагаются централизованно на файл-сервере . Ядро СУБД располагается на каждом клиентском компьютере. Доступ к данным осуществляется через локальную сеть. Синхронизация чтений и обновлений осуществляется посредством файловых блокировок. Преимуществом этой архитектуры является низкая нагрузка на ЦП сервера, а недостатком - высокая загрузка локальной сети.

На данный момент файл-серверные СУБД считаются устаревшими.

Примеры : Microsoft Access , Paradox , dBase .

§ Клиент-серверные

Такие СУБД состоят из клиентской части (которая входит в состав прикладной программы) и сервера

Примеры : Firebird , Interbase , IBM DB2 , MS SQL Server , Sybase , Oracle , PostgreSQL , MySQL , ЛИНТЕР , MDBS.

§ Встраиваемые

Встраиваемая СУБД - библиотека , которая позволяет унифицированным образом хранить большие объёмы данных на локальной машине.

Примеры: OpenEdge , SQLite , BerkeleyDB , один из вариантов Firebird , один из вариантов MySQL , Sav Zigzag , Microsoft SQL Server Compact , ЛИНТЕР .

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

К прикладному программному обеспечению (application software) относятся компьютерные программы , написанные для пользователей или самими пользователями, для задания компьютеру конкретной работы. Программы обработки заказов или создания списков рассылки - пример прикладного программного обеспечения. Программистов, которые пишут прикладное программное обеспечение, называют прикладными программистами.

Классификация

По типу

§ программные средства общего назначения

§ Текстовые редакторы

§ Системы компьютерной вёрстки

§ Графические редакторы

§ СУБД

§ программные средства специального назначения

§ Экспертные системы

§ Мультимедиа приложения (Медиаплееры , программы для создания/редактирования видео, звука, Text-To-Speech и пр.)

§ Гипертекстовые системы (Электронные словари , энциклопедии, справочные системы)

§ Системы управления содержимым

§ программные средства профессионального уровня

§ САПР

§ АРМ

§ АСУ

§ АСУ ТП

§ АСНИ

§ Геоинформационные системы

§ Биллинговые системы

§ CRM

По сфере применения

§ Прикладное программное обеспечение предприятий и организаций. Например, финансовое управление, система отношений с потребителями, сеть поставок. К этому типу относится также ведомственное ПО предприятий малого бизнеса, а также ПО отдельных подразделений внутри большого предприятия. (Примеры: Управление транспортными расходами, Служба IT поддержки)

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

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

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

§ Программное обеспечение для доступа к контенту. Используется для доступа к тем или иным программам или ресурсам без их редактирования (однако может и включать функцию редактирования). Предназначено для групп или индивидуальных пользователей цифрового контента. Это, например, медиа-плееры , веб-браузеры , вспомогательные браузеры и др.

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

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

§ Инструментальные программные средства в области медиа. Обеспечивают потребности пользователей, которые производят печатные или электронные медиа ресурсы для других потребителей, на коммерческой или образовательной основе. Это программы полиграфической обработки, верстки , обработки мультимедиа, редакторы HTML , редакторы цифровой анимации, цифрового звука и т. п.

§ Прикладные программы для проектирования и конструирования. Используются при разработке аппаратного («Железо») и программного обеспечения. Охватывают автоматизированный дизайн (computer aided design - CAD), автоматизированное проектирование (computer aided engineering - CAE), редактирование и компилирование языков программирования, программы интегрированной (Integrated Development Environments), интерфейсы для прикладного программирования (Application Programmer Interfaces).

Проприетарное программное обеспечение ( англ. proprietarysoftware ; от proprietary - частное , патентованное, в составе собственности http://ru. wikipedia. org/wiki/%D0%9F%D1%80%D0%BE%D0%BF%D1%80%D0%B8%D0%B5%D1%82%D0%B0%D1%80%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D0%BE%D0%B5_%D0%BE%D0%B1%D0%B5%D1%81%D0%BF%D0%B5%D1%87%D0%B5%D0%BD%D0%B8%D0%B5 - cite_note-slov-0и software - программное обеспечение) - программное обеспечение , являющееся частной собственностью авторов или правообладателей и не удовлетворяющее критериям свободного ПО (наличия открытого программного кода недостаточно). Правообладатель проприетарного ПО сохраняет за собой монополию на его использование, копирование и модификацию, полностью или в существенных моментах. Обычно проприетарным называют любое несвободное ПО, включаяполусвободное .

Несвободное ПО, которое разрешает практически неограниченное использование, распространение и изменение (в том числе с распространением изменённых версий) ПО в некоммерческих целях.

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

Свободное программное обеспечение (СПО) - широкий спектр программных решений , в которых права пользователя («свободы») на неограниченную установку, запуск, а также свободное использование, изучение, распространение и изменениеб (совершенствование) http://ru. wikipedia. org/wiki/%D0%A1%D0%B2%D0%BE%D0%B1%D0%BE%D0%B4%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D0%BE%D0%B5_%D0%BE%D0%B1%D0%B5%D1%81%D0%BF%D0%B5%D1%87%D0%B5%D0%BD%D0%B8%D0%B5 - cite_note-gnu. org-0 программ защищены юридически авторскими правами при помощи свободных лицензий . Обычно СПО доступно без всякой оплаты, но может иметь цену, например, в форме взимания платы за компакт-диски или другие носители. Чтобы распространяемое ПО было свободным, получателям должны быть доступны его исходные коды, из которых можно получить исполняемые файлы, с соответствующими лицензиями.

Движение СПО зародилось в 1983 году, когда Ричард Столлман сформировал идею о необходимости дать программную свободу (англ. softwarefreedom ) пользователям. В 1985 году Столлман основал Фонд свободного программного обеспечения , чтобы обеспечить организационную структуру для продвижения своей идеи.

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

§ Программу можно свободно использовать с любой целью («нулевая свобода »).

§ Можно изучать, как программа работает, и адаптировать её для своих целей («первая свобода »). Условием этого является доступность исходного текста программы.

§ Можно свободно распространять копии программы - в помощь товарищу («вторая свобода »).

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

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

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

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

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

Термин opensource (англ. открытое программное обеспечение ) был создан вместе с определением в 1998 году Эриком Реймондом и Брюсом Перенсом , которые утверждали, что термин freesoftware (свободное программное обеспечение ) в английском языке неоднозначен и смущает многих коммерческих предпринимателей .

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

Отличие между движениями открытого ПО и свободного ПО заключается в основном в приоритетах. Сторонники термина «open source» делают упор на эффективность открытых исходников как метода разработки, модернизации и сопровождения программ. Сторонники термина «free software» считают, что именно права на свободное распространение, модификацию и изучение программ являются главным достоинством свободного открытого ПО.

Существуют программы, имеющие открытый исходный код, но не являющиеся свободными, например, UnRAR, распаковщик RAR -архивов. Его исходный код находится в открытом доступе, но лицензия запрещает использовать его для создания RAR-совместимых архиваторов. Так же существует целый класс программ, называемых коммерческим ПО с открытым исходным кодом или Open Core, которые используют термин «Open Source» применительно к несвободному программному обеспечению .

Исходные коды открытых программ выпускаются либо как общественное достояние , либо на условиях «свободных» лицензий - как, например, GNU General Public License или BSD License . Свободная лицензия позволяет использовать исходный код программы для своих нужд с минимальными ограничениями, не противоречащими определению OpenSource. org. Таким ограничением может быть требование ссылаться на предыдущих создателей или требование сохранять свойство открытости при дальнейшем распространении той же самой или модифицированной открытой программы (копилефт ). В некоторых случаях (например, Apache или FreeBSD ) эти ограничения очень малы, в других (например, GNU General Public License ) достаточно распространять ПО вместе с исходным кодом и текстом лицензии, не изменяя её.

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

Поскольку без ПО функционирование ПК невозможно в принципе, оно является неотъемлемой составной частью любого ПК и поставляется вместе с его аппаратной частью (hardware ).

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

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

Обрабатывают информацию, управляют работой компьютера программы , а не устройства.

Новинки программного обеспечения уже давно доминируют над новыми аппаратными разработками. Комплект ПО по стоимости превосходит (иногда в несколько раз) стоимость компьютера адекватного класса.

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

Назначение ПО:

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

Программное обеспечение позволяет:

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

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

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

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

Расширение существующего ПО предполагает наличие следующих возможностей:

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

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

  • модульность;
  • наращиваемость и развитие;
  • надежность;
  • предсказуемость;
  • удобство и эргономичность;
  • гибкость;
  • эффективность;
  • совместимость.

Основные принципы разработки современного программного обеспечения:

  • параметрическая универсальность;
  • функциональная избыточность;
  • функциональная избирательность.

Программы на компьютер можно установить двумя способами:

  • Инсталляцией с дистрибутива
  • Простым копированием

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

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

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

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

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

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

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

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

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

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

Драйверы имеют следующие особенности:

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

К основным драйверным программам относятся: драйвер жесткого диска, драйвер видеоадаптера, драйвер клавиатуры, драйвер печатающего устройства, системные драйверы (установка таймера, проверка конфигурации компьютера, определение емкости ОЗУ), дополнительные драйверы (драйвер связи и др.).

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

ОС представляет собой набор программ управления ПЭВМ.

Состав ПО определяется кругом задач, которые пользователь предполагает решать с помощью компьютера.

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

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

Схема общей классификации ПО

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

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

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

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

База

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

Любое программное обеспечение состоит из файлов, в которых прописаны процедуры и функции, которым следует программа при исполнении.

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

Начнем разбор вопроса о том, что такое программное обеспечение, с его классификации.

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

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

В этом классе можно выделить два важных подраздела:

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

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

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

Для компьютера

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

В инструментальном ПО можно выделить три подгруппы:

  • языки и системы программирования;
  • интегрированные среды программирования;
  • программные комплексы.

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

Нельзя не сказать несколько слов и о том, что такое машинно-ориентированные языки программирования. Они служат для написания программного обеспечения не для конечного пользователя, а для создания поддерживающего программного кода непосредственно для аппаратуры. Эти языки позволяют учитывать уникальность архитектуры и принципов работы конкретной ЭВМ или, например, рабочего станка на заводе, не работающего под распространёнными операционными системами.

Для пользователя

Машинно-независимые языки программирования исполняют функцию написания программных кодов, а также прикладных программ для готовых оболочек и операционных систем.

  • Процедурно-ориентированные языки программирования - это специализированное программное обеспечение. Примеры - Паскаль (Pascal), Бэйсик (Basic). Эти простейшие языки программирования служат для написания элементарных прикладных программ, функций и процедур. А также, для описания алгоритмов решения поставленных задач.
  • Проблемно-ориентированные языки - позволяют решать задачи в более узких конкретных областях программирования, их примерами можно назвать - Лисп, АПЛ.
  • Объектно-ориентированные языки - более современные и удобные средства для создания прикладных приложений и создающие различные виды программного обеспечения для конечного пользователя. Главной их особенностью является возможность делать готовые элементы приложения, такие как диалоговые окна, поля для заполнения, кнопки. Для иллюстрации можно назвать такие языки, как С++ и Visual Basic.

С чем мы работаем

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

  1. Пожалуй, самая распространённая категория приложений - это мультимедиа. Т. е. программы воспроизведения видео, аудио, игры. Всё то, что служит для развлечения конечного пользователя. Таким образом, одно из величайших изобретений человечества из рабочего научного инструмента превратилось в средство развлечения широкой публики.
  2. Информационно-поисковое ПО. Как понимаете, это различные браузеры и клиенты интернет-технологии, предназначенные для получения информации из мировой сети.
  3. Общего назначения. Это виды программного обеспечения, используемого в обычной жизни исключительно по необходимости. Это графические и текстовые редакторы, почтовые сервисы, базы данных.
  4. Проблемно-ориентированное. Например, экспертные системы или системы аудио- и видеоконференций.
  5. Программные среды профессионального уровня. Это бухгалтерские и педагогические системы, системы контроля управления доступа.

Наглядный пример

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

  • 1C Бухгалтерия. Яркий пример профессионального ПО, служащего для работы с бухгалтерией, правовой областью и ещё множеством поддерживаемых и смежных областей.
  • Microsof Office Word. Самый понятный и доступный пример ПО общего назначения. Практически каждый в своей жизни запускал этот пакет программ для составления резюме, реферата или отчета.
  • Microsof Office Access. Простейшая реализация базы данных, также являющееся ПО общего назначения.
  • О категории мультимедиа слышали все. Это всем известный Windows Media Player, способный проигрывать как аудио-, так и видеофайлы.
  • Photoshop - очередной пример ПО общего назначения. Являясь профессиональным графическим редактором, используемым во многих полиграфических фирмах, также относится к программной среде профессионального уровня.
  • Если говорить о ПО общего назначения, то с ним сталкивался каждый человек, хоть раз запускавший компьютер. Это всем известный Windows.

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

Инсталляция

Установка программного обеспечения в большинстве случаев не вызовет затруднений у обычного пользователя. Большинство приложений, которыми мы пользуемся в повседневной жизни, специально ориентированы на непосвященного пользователя. В готовую программу вшивается специальный модуль - инсталлятор.

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

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

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

Творение

Разработка программного обеспечения проходит в несколько этапов.

  • Начальная стадия - это этап появления и реализации идеи. Создание дизайна будущего приложения, а также его функционала.
  • Альфа-тестирование - процесс внутреннего тестирования. Его и добавление каких-либо функций проводят внутри ограниченного круга людей, обычно разработчиков или близких к ним людей.
  • Бета-тестирование проводят среди потребителей по решению производителя. Это процесс отладки программы.
  • Релиз-кандидат. Программа, прошедшая все стадии тестирования, с найденными и исправленными критическими ошибками. Практически готовое приложение к релизу.
  • И, наконец, релиз. Готовый к выпуску и тиражированию продукт.
  • Последний этап, который продолжает длиться после выпуска - программная поддержка и сопровождение приложения.

Выводы

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

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

Виды программного обеспечения

Можно выделить три основных вида программного обеспечения: системное, прикладное и инструментальное.

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

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

Можно сказать, что операционная система является средой, в которой выполняются остальные программы.

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

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

Прикладное программное обеспечение (приложения) – это программы, непосредственно предназначенные для удовлетворения потребностей пользователя. Типичные представители прикладного программного обеспечения:

  • текстовые и графические редакторы;
  • программы работы с электронными таблицами;
  • системы управления базами данных;
  • средства просмотра web-страниц;
  • обучающие системы, электронные энциклопедии, игры;
  • специализированные программные системы, предназначенные для
  • автоматизации определенного вида профессиональной деятельности, например, банковские системы, системы управления транспортными перевозками, системы геометрического моделирования в машиностроении.

К инструментальному программному обеспечению относятся средства автоматизации разработки компьютерных программ, то есть инструменты программиста. Инструментальное ПО - это разновидность прикладного ПО (оно является прикладным для разработчика).

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

Билет № 16

Паке́т прикладны́х програ́мм (аббр. ППП, англ. application package ) или паке́т програ́мм - набор взаимосвязанных модулей, предназначенных для решения задач определённого класса некоторой предметной области.

Характеристика пакетов прикладных программ (ППП) общего назначения
Прикладные программы предназначены для того, чтобы обеспечить применение вычислительной техники в различных сферах деятельности человека. Помимо создания новых программных продуктов разработчики прикладных программ большие усилия тратят на совершенствование и модернизацию популярных систем, создание их новых версий. Новые версии, как правило, поддерживают старые, сохраняя преемственность, и включают в себя базовый минимум (стандарт) возможностей.
Пакеты прикладных программ являются наиболее динамично развивающейся частью программного обеспечения: круг решаемых с помощью ППП задач постоянно расширяется. Во многом внедрение компьютеров практически во все сферы деятельности стало возможным благодаря появлению новых и совершенствованию существующих ППП.
Достижения в области микроэлектроники, приводящие к появлению более мощных по своим функциональным возможностям компьютеров, также являются причиной создания новых ППП. В свою очередь, необходимость улучшения характеристик использования пакета при решении конкретных задач пользователя стимулирует совершенствование архитектуры и элементной базы компьютеров и периферийных устройств.
Структура и принципы построения ППП зависят от класса ЭВМ и операционной системы, в рамках которой этот пакет будет функционировать. Наибольшее количество разнообразных ППП создано для IBM PC-совместимых компьютеров с операционными системами MS DOS и Windows.
Каждая группа пакетов имеет свои проблемы организации, трудности разработки и создания. Каждый пакет реализуется на конкретном языке программирования в соответствии с требованиями, предъявленными к пакету, и возможностям языка.
Один из возможных вариантов классификации программных средств, составляющих прикладное программное обеспечение, отражен на рисунке 7.15. Как и почти всякая классификация, приведенная на рисунке, не является единственно возможной.
Текстовые редакторы (процессоры) - специальные программы, предназначенные для работы с документами (текстами), позволяющие компоновать, форматировать, редактировать тексты при создании пользователем документа. Обычно они включают в себя дополнительные функции по работе с блоками текста и объектами.
Настольные издательские системы (desktop publishing) - программы, предназначенные для профессиональной издательской деятельности и позволяющие осуществлять электронную верстку широкого спектра основных типов документов, типа информационного бюллетеня, краткой цветной брошюры и объемного каталога или торговой заявки, справочника. Предусмотренные в пакетах данного типа средства позволяют:
- компоновать (верстать) текст;
- использовать всевозможные шрифты и осуществлять полиграфические изображения;
- осуществлять редактирование текста на уровне лучших текстовых процессоров;
- обрабатывать графические изображения;
- обеспечивать вывод документов полиграфического качества;
- работать в сетях и на разных платформах.
Наилучшими пакетами в этой области для ЭВМ являются: Corel Venture, PageMaker, QuarkXPress, FrameMaker, Microsoft Publisher, Illustrator for Windows и др.
Графические системы - пакеты, предназначенные для обработки графической информации.
Компьютерная графика в настоящее время является одной из самых динамично развивающихся областей программного обеспечения. Она включает в себя ввод, обработку и вывод графической информации - чертежей, рисунков, картин и т.д. - средствами компьютерной техники. Различные типы графических систем позволяют быстро строить изображения, вводить иллюстрации с помощью сканера или видеокамеры, создавать анимационные ролики.
Графические редакторы позволяют пользоваться различным инструментарием художника, стандартными библиотеками изображений, наборами стандартных шрифтов, редактированием изображений, копированием и перемещением фрагментов по страницам экрана и др.
Графические пакеты делятся на пакеты обработки растровой графики и изображений, и пакеты векторной графики.
Графические пакеты растровой графики предназначены для работы с фотографиями и включают в себя набор средств по кодированию фотоизображений и цифровую форму. Признанный лидер среди пакетов данного класса - Adobe Photoshop. Известны также пакеты Aldus Photo Styler, Picture Publisher, Photo Works Plus.
Пакеты для работы с векторной графикой предназначены для профессиональной работы, связанной с художественной и технической иллюстрацией с последующей цветной печатью (на рабочем месте дизайнеров, например), занимают промежуточное положение между пакетами для систем автоматизированного проектирования (САПР) и настольными издательскими системами.
Пакеты данного класса в настоящее время обладают достаточно широким набором функциональных средств для осуществления сложной точной обработки графических изображений и включает в себя:
- инструментарий для создания графических изображений;
- средства выравнивания (по базовой линии и странице, по сетке, пересечению, ближайшей точке и т.п.);
- средства манипулирования объектами;
- средства обработки текста в части оформления и модификации параграфов, работы с различными шрифтами;
- средства импорта (экспорта) графических объектов (файлов) различных форматов;
- средства вывода на печать с соответствующей настройкой экранного образа на полиграфическое исполнение;
- средства настройки цвета.
Своеобразным стандартом в этом классе является пакет CorelDraw. Можно также отметить такие пакет, как Adobe Illustrator, Aldus Free Hand, Professional Draw.