Определение программного обеспечения: Программное обеспечение — Википедия – Программное обеспечение компьютера

Содержание

Системное программное обеспечение — Википедия

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

Системное программирование — создание системного программного обеспечения.

Системный программист — программист, специализирующийся на системном программировании.

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

[⇨], утилиты[⇨], системы программирования[⇨], системы управления базами данных[⇨], широкий класс связующего программного обеспечения.

Место системного программного обеспечения (выделено зелёным) в многоуровневой схеме вычислительной системы

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

Функции операционных систем[править | править код]

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

  • Загрузка приложений в оперативную память и их выполнение.
  • Стандартизованный доступ к периферийным устройствам (устройства ввода-вывода).
  • Управление оперативной памятью (распределение между процессами, виртуальная память).
  • Управление доступом к данным на энергонезависимых носителях (таких как жёсткий диск, компакт-диск и т. д.), организованным в той или иной файловой системе.
  • Пользовательский интерфейс.
  • Сетевые операции, поддержка стека протоколов.

Понятие операционной системы[править | править код]

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

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

Основные идеи операционных систем[править | править код]

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

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

Встроенные программы или firmware — это программы, «зашитые» в цифровые электронные устройства. В ряде случаев (например, BIOS IBM-PC совместимых компьютеров) являются по сути частью операционной системы, хранящейся в постоянной памяти. В достаточно простых устройствах вся операционная система может быть встроенной. Многие устройства современных компьютеров имеют собственные «прошивки», осуществляющие управление этими устройствами и упрощающие взаимодействие с ними.

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

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

Типы утилит[править | править код]

  • Дисковые утилиты
    • Дефрагментаторы
    • Проверка диска — поиск неправильно записанных либо повреждённых различным путём файлов и участков диска и их последующее удаление для эффективного использования дискового пространства.
    • Очистка диска — удаление временных файлов, ненужных файлов, чистка «корзины».
    • Разметка диска — деление диска на логические диски, которые могут иметь различные файловые системы и восприниматься операционной системой как несколько различных дисков.
    • Резервное копирование — создание резервных копий целых дисков и отдельных файлов, а также восстановление из этих копий.
    • Сжатие дисков — сжатие информации на дисках для увеличения вместимости жёстких дисков.
  • Утилиты работы с реестром
  • Утилиты мониторинга оборудования
  • Тесты оборудования

К этой категории относятся системные программы, предназначенные для разработки программного обеспечения:

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

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

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

Основные функции СУБД[править | править код]

Классификация СУБД по способу доступа к базе данных[править | править код]
  • Файл-серверные, в которых файлы данных располагаются централизованно на файл-сервере, а программная реализация СУБД располагается на каждом клиентском компьютере целиком. Доступ к данным осуществляется через локальную сеть. Синхронизация чтений и обновлений осуществляется посредством файловых блокировок. Всплеск популярности файл-серверных систем управления базами данных относится к концу 1980-х — началу 1990-х годов.
  • Клиент-серверные СУБД состоят из клиентской части (которая входит в состав прикладной программы) и сервера (см. Клиент-сервер).
  • Встраиваемые — программные библиотеки, которые позволяют унифицированным образом хранить большие объёмы данных на локальной машине.
  • Васильев В. Г. Системное программное обеспечение

примеры ПО по назначению, какие бывают основные типы системных программ для ПК

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

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

Понятие

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


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

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

Какие бывают типы программного обеспечения: характеристика программ

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

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


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

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

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

Какие основные виды ПО бывают по назначению

Программное обеспечение, установленное на ПК, делится на 3 разновидности:

  • прикладное;
  • системное;
  • инструментальное.

виды программного обеспечения компьютеров

Системное

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

Таким ПО считается:

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

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

Прикладное

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

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

Инструментальное

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

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

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

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


Какие виды программного обеспечения (ПО) ПК вы знаете: примеры

Любой пользователь осведомлен, что такое пакет MS Office – текстовый редактор, утилита для работы с таблицами или презентациями. Многие пользуются веб-браузерами, с их помощью можно выйти в интернет. Использование других программ зависит от рода занятий владельца компьютера – архиваторы для сжатия размера файлов и контроля за архивами, системы управления базами данных, диспетчеры – они помогают перемещать, копировать и удалять различные документы. Важное место занимают почтовые клиенты для создания и отправки писем, а также Skype для формирования видеоконференций и звонков.


Программное обеспечение и его классификация: какие есть основные виды

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

По режиму эксплуатации

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

ПО может быть:

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

По масштабу

Масштабность зависит от набора функций и ресурсов, которые будет поглощать система. Это небольшая утилита для работы с графиками или объемная база данных, а также множество других элементов. Бывает:

  • малое;
  • среднее;
  • большое.

По стабильности

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

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

Делят на 3 класса:

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

виды по по назначению

По функции

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

  • Машинно-логическое. Его задача – обработать обеспечение и предоставить его в виде осознанного программного кода с определенными свойствами и структурой.
  • Интерфейсное. В его функционале – обработка и переработка двоичной системы в понятную для пользователя. С его помощью удается создать благоприятную среду «человек-компьютер».
  • Аппаратно-механическое. Это ПО должно спрягать разные части ПК для передачи сигнала между компонентами.
  • Информационно-командное. Создает структуру логистики и отправляют на исполнение.
  • Прикладное. Проводят логические, математические, физические и иные действия с данными. Их функция – обработать массив так, чтобы она решала поставленную цель.


По требованию защиты

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

По требованию надежности

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

Программы бывают:

  • надежные;
  • сомнительные.

По требуемым рабочим характеристикам

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

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

По исходному языку

То, каким образом написана программа, тоже влияет на ее функциональность. Существуют:

  • Машинные – программирование, которое воспринимается аппаратной частью компьютера.
  • Машинно-ориентированные – отражают структуру и работу конкретного ПК.
  • Алгоритмические – работают независимо от архитектуры техники, формируют действенность определенного алгоритма (Бейсик, Паскаль и др.).
  • Процедурно-ориентированные – выглядят как совокупность процедур и подпрограмм.
  • Интегрированные – системы, внедренные в основные элементы работы.
  • Проблемно-ориентированные – направлены на решение проблемы конкретного класса.

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

типы по

По прикладной области

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

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

По вычислительной системе и среде

Основные характеристики в этой классификации:

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

По классу пользователя

От должности и назначения начинается разделение прав:

  • специалист – ограниченный функционал;
  • руководитель – расширенный;
  • директор – почти все возможности;
  • владелец – максимум функций.

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

По требованию к вычислительным ресурсам

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

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

По критичности

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

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

По готовности

В зависимости от этого критерия делят на:

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

По представлению данных

Информация внутри компании находится в разной степени секретности доступа:

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

По использованию программных данных

Работникам выдается разный доступ:

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

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


По способу использования и распространения

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

Free

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

Adware

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

Shareware

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

Trial

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

Demo

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

Закрытое ПО

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

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

Основных ОС для компьютера всего 3: Linux, Microsoft Windows и Apple Mac Os. Важно знать и уметь обращаться с любой из них. У каждой есть свои плюсы и минусы. Большая часть использует продукцию Microsoft, реже – Linux. На платформе Apple Mac Os работает только небольшой процент компаний. Для мобильных устройств основных ОС две — Android и iOs.

Мы изучили, какие 3 вида программного обеспечения компьютера существуют, и привели примеры программ. Но если остались вопросы, то всегда можно посмотреть видеоматериал или обратиться в «Клеверенс».


Количество показов: 18956

Компьютерная программа — Википедия

Компьютерная программа.

Компью́терная програ́мма — 1) комбинация компьютерных инструкций и данных, позволяющая аппаратному обеспечению вычислительной системы выполнять вычисления или функции управления (стандарт ISO/IEC/IEEE 24765:2010)[1]; 2) синтаксическая единица, которая соответствует правилам определённого языка программирования, состоящая из определений и операторов или инструкций, необходимых для определённой функции, задачи или решения проблемы (стандарт ISO/IEC 2382-1:1993)[2].

Первое определение соответствует понятию «исполняемая программа», второе относится к понятию «исходный текст».

Другие определения из нормативных документов:

  • данные, предназначенные для управления конкретными компонентами системы обработки данных в целях реализации определённого алгоритма (ГОСТ 19781—90)[3];
  • представленная в объективной форме совокупность данных и команд, предназначенных для функционирования ЭВМ и других компьютерных устройств с целью получения определённого результата, включая подготовительные материалы, полученные в ходе разработки программы для ЭВМ, и порождаемые ею аудиовизуальные отображения (Гражданский кодекс Российской Федерации)[4].

Компьютерные программы как объект авторского права и других прав интеллектуальной собственности относятся к категории нематериальных активов.

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

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

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

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

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

Интерпретируемые программы, для которых, как правило, не применяется процесс компиляции и которые интерпретируются операционной системой или специальными программами-интерпретаторами, называются скриптами или «сценариями».

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

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

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

Одновременное выполнение[править | править код]

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

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

Самомодифицирующиеся программы[править | править код]

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

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

Согласно ст. 1261 ГК РФ программой для ЭВМ является представленная в объективной форме совокупность данных и команд, предназначенных для функционирования ЭВМ и других компьютерных устройств в целях получения определённого результата, включая подготовительные материалы, полученные в ходе разработки программы для ЭВМ, и порождаемые ею аудиовизуальные отображения.

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

Компьютерные программы в большинстве стран являются объектами авторского права (включая Украину и Россию). В некоторых странах компьютерные программы могут защищаться патентами. Патентованию компьютерных программ способствовало Соглашение о торговых аспектах прав интеллектуальной собственности, которое установило минимальные[9] требования к охраняемому ряду объектов прав интеллектуальной собственности и фактически разрешило патентовать программы. Соглашение ТРИПС обязательно для выполнения на территории Украины и России как государств-членов ВТО.

Таким образом программа может охраняться и как «литературное произведение» и как «изобретение». Для определения режима правовой охраны в первом случае используется «текст кода», в другом — признаки применяемые для изобретений, предлагаемых для патентования (то есть нужно доказать «инновационность», «оригинальность» и «неочевидность», а также возможность решения существующей технической проблемы и коммерческую пригодность)[10]. При этом существует проблема правового разграничения компьютерных программ от проприетарного цифрового контента и проприетарного программного обеспечения[11].

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

Действующим законодательством Российской Федерации не предусмотрено патентование компьютерных программ как таковых. Данные объекты интеллектуальной собственности охраняются авторским правом, которое возникает автоматически с момента их создания и не требуют обязательной государственной регистрации. Однако программы для ЭВМ и базы данных могут быть зарегистрированы в Роспатенте по желанию правообладателя.[12]

Авторское и некоторые другие[какие?] права интеллектуальной собственности позволяют ограничивать доступ к исходным текстам программ.

  • Silberschatz Abraham. Operating System Concepts, Fourth Edition. — Addison-Wesley, 1994. — С. 97. — ISBN 0-201-50480-4.
  • Knuth, Donald E. The Art of Computer Programming, Volume 1, 3rd Edition (англ.). — Boston: Addison-Wesley, 1997. — ISBN 978-0-201-89683-1.
  • Knuth, Donald E. The Art of Computer Programming, Volume 2, 3rd Edition (англ.). — Boston: Addison-Wesley, 1997. — ISBN 978-0-201-89684-8.
  • Knuth, Donald E. The Art of Computer Programming, Volume 3, 3rd Edition (англ.). — Boston: Addison-Wesley, 1997. — ISBN 978-0-201-89685-5.
(!)Эта статья или раздел описывает ситуацию применительно лишь к одному региону, возможно, нарушая при этом правило о взвешенности изложения.

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

Определение свободного программного обеспечения — Википедия

Материал из Википедии — свободной энциклопедии

«Определение свободного программного обеспечения» (ранее — «Что такое свободное программное обеспечение?», англ. «The Free Software Definition») — статья Ричарда Столлмана, содержащая определение свободного ПО согласно Фонду свободного программного обеспечения. Столлман опубликовал первый вариант своего определения в феврале 1986[1], где он описал, что под свободой ПО он имеет в виду свободу копировать, распространять и изменять его. Современная версия статьи, с переводом на 39 языков, опубликована на сайте Фонда свободного ПО.[2]

Согласно Столлману, «Свобода ПО» означает «право пользователя свободно запускать, копировать, распространять, изучать, изменять и улучшать его». Его современная версия определения свободы ПО состоит из четырёх пунктов, пронумерованных от 0 до 3:

  • Свобода запускать программу в любых целях (свобода 0).
  • Свобода изучения работы программы и адаптация её к вашим нуждам (свобода 1). Доступ к исходным текстам является необходимым условием.
  • Свобода распространять копии, так что вы можете помочь вашему товарищу (свобода 2).
  • Свобода улучшать программу и публиковать ваши улучшения, так что всё общество выиграет от этого (свобода 3). Доступ к исходным текстам является необходимым условием.

Следует заметить, что не все организации согласны с определением Столлмана. Например, дистрибутив Debian использует свои собственные критерии для определения свободы ПО, которые несколько отличаются от четырёх пунктов Столлмана. В результате, Debian считает лицензию 1-ю версию Artistic License свободной, а GNU Free Documentation License с неизменяемыми разделами несвободной[3]; Столлман и Фонд свободного ПО считают наоборот.

Разногласие по поводу GNU FDL исходит из того, что Ричард Столлман не считает, что произведения искусства и другие работы, не являющиеся инструментами или учебниками, должны быть свободными, хотя и поддерживает сокращение сроков охраны прав на них. Так, например, разрабатываемые в 2008 году рекомендации для свободных дистрибутивов разрешают использование данных, имеющих лишь эстетическое назначение, на любых условиях, если разрешается их коммерческое и некоммерческое копирование и распространение.[4]

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

Что же такое программное обеспечение компьютера? Рассмотрим этот термин подробнее.

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

Всё программное обеспечение можно разделить на следующие типы

1. Системное программное обеспечение. Это такие программы, которые входят в состав операционной системы и являются составной ее частью. Обычно они обеспечивают управление компонентами компьютерной системы, такими как процессор, оперативная память, устройства ввода-вывода а также сетевое оборудование. Типичным примером для системной программы является драйвер. Драйверэто компьютерная программа, при помощи которой другие программы получают доступ к аппаратному обеспечению некоторого устройства (например, к принтеру, сканеру, видеокарте и т. д.). Драйверы являются неотъемлемой составляющей операционной системы – совокупность программ, организующих согласованную работу всех модулей компьютера.

2. Обслуживающие программы.К ним относятся те программы, которые выполняют вспомогательные, обслуживающие либо сервисные функции, например архиваторы, антивирусы и программы для обслуживания жесткого диска компьютера. Программы такого типа также называют утилитами (от англ. utilize – «использовать»).

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

Большинство программ на сегодняшний день создаются с привязкой к конкретной операционной системе (например, Windows, Linux, Android, MacOS) и т. д. Этот факт необходимо обязательно учитывать при выборе той или иной программы.

Перед запуском программы ее нужно правильным образом инсталлировать, то есть установить на данный компьютер. Существуют специальные программы-инсталляторы, например Rpm для ОС Linux или Windows Installer для Windows. Очень часто программы-инсталляторы входят в состав операционной системы по умолчанию. Инсталлировать программу – означает установить (распаковать) все ее значимые файлы в соответствующие директории операционной системы. Для того чтобы программа инсталлировалась верно, она должна содержать так называемый дистрибутив. Дистрибутив программы (от англ. distribute – распределять) – это совокупность компонентов, необходимых для ее установки (инсталляции). Дистрибутив операционной системы обычно содержит в себе программы для начальной инициализации системы.

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

1. В первую очередь необходимо найти установочный файл setup.exe или install.exe и запустить их двойным щелчком мыши.

2. В открывшемся диалоговом окне необходимо выбрать язык программы. Это можно сделать, например, в выпадающем списке. Далее необходимо нажать кнопку ОК.

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

4. После этого обычно предлагается выбрать устанавливаемые компоненты программы. Необходимо выбрать нужные (поставить напротив необходимого компонента галочку) и нажать «Далее».

5. Далее появится окно выбора пути установки программы. Необходимо указать точный путь директории, в которую будет установлена папка. После этого нажать «Далее». По умолчанию в системе Windows это обычно папка C:\\Program Files.

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

7. После завершения инсталляции для выхода из установщика необходимо нажать Finish.

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

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

1. В меню «Пуск» нужно выбрать Панель управления и в появившемся окне выбрать «Программы». Далее нажать на «удаление программ». Появится список всех установленных на этом компьютере программ.

2. Выберем ненужную нам программу и нажмем наверху кнопку «Удалить/изменить».

3. В открывшемся окне нажмем на кнопку «Удалить».

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

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

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

· Free – бесплатная программа. Не требует активации и ввода серийного номера.

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

· Sharewareусловно бесплатная программа. Может иметь ограничения в функциональности и ограниченный срок работы без активации.

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

· Demo – демонстрационная версия программы.

Также существуют так называемые бесплатные лицензии для программ (например, GPL). GPL означает GeneralPublicLicence(c англ. «универсальная общественная лицензия»). Ее основной принцип – это распространение программного обеспечения с открытым для всех программным кодом, что позволяет изменять и дополнять программу.

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

В законодательствах некоторых стран существуют определенные законы, регламентирующие права на использование программного обеспечения. Например, в России до 2008 года существовал такой закон. Однако затем он утратил свою силу и был заменен частью 4-й Гражданского кодекса РФ, статьями 1225-й и последующими. 

Если пользователь имеет желание написать свою собственную программу, то в этом ему помогут языки программирования, которых на сегодняшний день существует очень много. Например, языки программирования, C++, Java, C#, PHP, Delphi являются очень популярными, а их функционал является широким. Об этих средах мы будем говорить на последующих уроках.

 

Список литературы

1. Соловьева Л.Ф. Учебник: Информатика и ИКТ. Учебник для 8 класса. – Спб: БХВ-Петербург, 2011.

2. Босова Л.Л. Информатика и ИКТ: Учебник для 8 класса. – М.: БИНОМ. Лаборатория знаний, 2012.

3. Босова Л.Л. Информатика: Рабочая тетрадь для 8 класса. – М.: БИНОМ. Лаборатория знаний, 2010.

4. Голицына О. Л., Партыка Т. Л., Попов И. И., Программное обеспечение. – М.: ФОРУМ.

 

Дополнительные рекомендованные ссылки на ресурсы сети Интернет

1. Интернет портал «mepavel.narod.ru» (Источник)

2. Интернет портал «chaynikam.info» (Источник)

3. Интернет портал «Producing Open Source Software» (Источник)

 

Домашнее задание

1. Какие виды программного обеспечения вам известны?

2. Что означает термин «инсталляция программы?»

3. Каким образом можно удалить программу из системы Windows?

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

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

Материал из Википедии — свободной энциклопедии

Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 1 марта 2019; проверки требуют 5 правок. Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 1 марта 2019; проверки требуют 5 правок.

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

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

По типу[править | править код]

Источники[1][2]

  • программное обеспечение общего назначения
  • программное обеспечение развлекательного назначения
  • программное обеспечение специального назначения
  • профессиональное программное обеспечение

По сфере применения[править | править код]

  • Прикладное программное обеспечение предприятий и организаций. Например, финансовое управление, система отношений с потребителями, сеть поставок. К этому типу относится также ведомственное ПО предприятий малого бизнеса, а также ПО отдельных подразделений внутри большого предприятия. (Примеры: управление транспортными расходами, служба IT-поддержки)
  • Программное обеспечение, обеспечивающее доступ пользователя к устройствам компьютера.
  • Программное обеспечение инфраструктуры предприятия. Обеспечивает общие возможности для поддержки ПО предприятий.
  • Программное обеспечение информационного работника. Обслуживает потребности индивидуальных пользователей в создании и управлении информацией. Это, как правило, управление временем, ресурсами, документацией, например, текстовые редакторы, электронные таблицы, программы-клиенты для электронной почты и блогов, персональные информационные системы и медиаредакторы.
  • Программное обеспечение для доступа к контенту. Используется для доступа к тем или иным программам или ресурсам без их редактирования (однако может и включать функцию редактирования). Предназначено для групп или индивидуальных пользователей цифрового контента. Это, например, медиаплееры, веб-браузеры, вспомогательные браузеры и др.
  • Образовательное программное обеспечение по содержанию близко к ПО для медиа и развлечений, однако в отличие от него имеет четкие требования по тестированию знаний пользователя и отслеживанию прогресса в изучении того или иного материала. Многие образовательные программы включают функции совместного пользования и многостороннего сотрудничества.
  • Имитационное программное обеспечение. Используется для симуляции физических или абстрактных систем в целях научных исследований, обучения или развлечения.
  • Инструментальные программные средства в области медиа. Обеспечивают потребности пользователей, которые производят печатные или электронные медиаресурсы для других потребителей, на коммерческой или образовательной основе. Это программы полиграфической обработки, вёрстки, обработки мультимедиа, редакторы HTML, редакторы цифровой анимации, цифрового звука и т. п.
  • Прикладные программы для проектирования и конструирования. Используются при разработке аппаратного и программного обеспечения. Охватывают автоматизированное проектирование (системы автоматизированного проектирования — САПР), автоматизированную инженерию (computer aided engineering — CAE), редактирование и компилирование языков программирования, программы интегрированной среды разработки (Integrated Development Environments — IDE).

По типу запуска[править | править код]

Качество программного обеспечения — Википедия

Материал из Википедии — свободной энциклопедии

Ка́чество програ́ммного обеспечения — способность программного продукта при заданных условиях удовлетворять установленным или предполагаемым потребностям (ISO/IEC 25000:2014)[1].

Другие определения из стандартов:

  • весь объём признаков и характеристик программ, который относится к их способности удовлетворять установленным или предполагаемым потребностям (ГОСТ Р ИСО/МЭК 9126-93, ISO 8402:94)[2][3];
  • степень, в которой система, компонент или процесс удовлетворяют потребностям или ожиданиям заказчика или пользователя (IEEE Std 610.12-1990)[4].

Том Демарко в 1999 году предлагал при оценке качества программного обеспечения учитывать, что «качество программного продукта является показателем того, насколько он меняет мир к лучшему»[5].

Джеральд Вайнберг в своей работе 1992 года Quality Software Management: Volume 1, Systems Thinking давал определение качества как «значимого для какого-либо человека»[6][7], подчеркивая тем самым, что понятие качества является по своей природе субъективным — разные люди будут оценивать качество одного и того же программного обеспечения по-разному. Одной из сильных сторон этого определения являются вопросы, на которые должны ответить команды разработчиков программного обеспечения, такие как «Кто те люди, которые будут оценивать наше программное обеспечение?» и «Что будет ценным для них?».

Стандарт ISO/IEC 25010:2011 (ГОСТ Р ИСО/МЭК 25010-2015)[8] определяет модель качества продукта, которая включает восемь характеристик верхнего уровня:

В этом стандарте модель качества продукта (англ. software product quality model) рассматривается отдельно от субъективного качества в использовании, которое может сильно отличаться для различных стейкхолдеров[9]. Модель качества в использовании (англ. quality in use model) включает следующие характеристики верхнего уровня[8]:

Роберт Гласс в известной книге «Факты и заблуждения профессионального программирования» утверждает, что большинство профессиональных разработчиков согласны с выделением семи показателей качества как основных[10]:

Среди относительно новых моделей качества программного обеспечения можно упомянуть SQUALE и Quamoco[11], которые были применены в промышленных условиях, но пока не получили широкого распространения.

  1. Software quality — capability of software product to satisfy stated and implied needs when used under specified conditions: ISO/IEC 25000:2014(en) Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — Guide to SQuaRE
  2. ↑ ГОСТ Р ИСО/МЭК 9126-93. Оценка программной продукции. Характеристики качества и руководства по их применению
  3. ↑ ISO 8402:94. Управление качеством и обеспечение качества. Словарь
  4. The degree to which a system, component, or process meets customer or user needs or expectations: IEEE Std 610.12-1990. IEEE Standard Glossary of Software Engineering Terminology
  5. ↑ DeMarco, T., Management Can Make Quality (Im)possible, Cutter IT Summit, Boston, April 1999
  6. ↑ Weinberg, Gerald M. (1992), Quality Software Management: Volume 1, Systems Thinking, New York, NY: Dorset House Publishing, с. 7 
  7. ↑ Weinberg, Gerald M. (1993), Quality Software Management: Volume 2, First-Order Measurement, New York, NY: Dorset House Publishing, с. 108 
  8. 1 2 ISO/IEC 25010:2011 Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — System and software quality models
    ГОСТ Р ИСО/МЭК 25010-2015 Информационные технологии. Системная и программная инженерия. Требования и оценка качества систем и программного обеспечения (SQuaRE). Модели качества систем и программных продуктов
  9. ↑ Wijnholds, et al, 2016.
  10. Роберт Гласс. Факты и заблуждения профессионального программирования. = Facts and Fallacies of Software Engineering. — 2004. — ISBN 5-93286-092-8; 978-5-93286-092-2.
  11. Wagner, Stefan; Goeb, Andreas; Heinemann, Lars; Kläs, Michael; Lampasona, Constanza; Lochmann, Klaus; Mayr, Alois; Plösch, Reinhold; Seidl, Andreas. Operationalised product quality models and assessment: The Quamoco approach (англ.) // Information and Software Technology (англ.)русск. : journal. — 2015. — Vol. 62. — P. 101—123. — DOI:10.1016/j.infsof.2015.02.009.
  • ГОСТ 28195-89 — Оценка качества программных средств
  • Gijs Wijnholds, Zeeger Lubsen, Sylvan Rigal, Joost Visser. Building Software Teams. — O’Reilly Media, Inc., 2016.

Leave a comment