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


Каковы основные тенденции в разработке ЭВМ 5–­го поколения?

Опишите принцип действия лазерных принтеров.

Что такое материнская плата? Какие компоненты ПК на ней находятся?

Какие программы входят в состав BIOS?

Какие функции в компьютере выполняет оперативное запоминающее устройство?

Какие основные параметры процессора? Что характеризует тактовая частота и в каких единицах она измеряется?

В чем смысл магистрально – модульного принципа построения архитектуры ПК?

Какие типы шин существуют в компьютере и для чего они предназначены?

Какая элементная база была основой создания ЭВМ третьего поколения?

Какие принципы построения ЭВМ разработал Джон фон Нейман?

В чем состоит вклад Ч. Бэббиджа в развитие средств вычислительной техники?


ГЛАВА 3

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПЕРСОНАЛЬНЫХ КОМПЬЮТЕРОВ

КЛЮЧЕВЫЕ СЛОВА: программа, системное программное обеспечение, прикладное программное обеспечение, файл, папка, операции с файлами, файловая система, ОС Windows XP, главное меню, стандартные программы, ярлык, Рабочий стол, окна, панель управления, программа Проводник, Корзина, форматирование, поисковая система, пакет Microsoft Office, компьютерное пиратство, лицензионное соглашение.

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

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

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

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

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

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



Ядром любой СПО являются ОС, поэтому они более подробно будут рассмотрены далее.

Системы программирования в большинстве своем предназначены для создания новых программ. К этим системам обычно относят языки программирования, которые, как правило, предназначены для профессиональных программистов. Любая система программирования работает только в соответствующей ОС, под которую она и создана, однако она может позволить разрабатывать программы и под другие ОС. В последнее время появились мощные системы программирования на языках Java, Delphi, СИ++, Visual Basic.

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

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

Различают следующие разновидности утилит:

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

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

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

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

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

— программы восстановления информации, форматирования, защиты данных ;

— коммуникационные программы , организующие обмен информацией между компьютерами при их объединении в компьютерные сети;

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

— программы для записи CD – ROM, CD – RW, DVD и многие другие.

Часть утилит входит в состав ОС, а другие функционируют автономно.

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

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

По способам именования файлов различают «короткое» и «длинное» имя. До появле­ния ОС Windows 95 общепринятым способом именования файлов было Соглашение 8.3. Согласно этому соглашению, принятому в MS – DOS, имя файла состояло из двух частей: собственно имени и расширения. На имя файла отводится 8 символов, а на его расширение – 3 символа. Имя от расширения отделяется точкой. Как имя, так и расширение могут включать только алфавитно – цифровые символы латинского алфавита.

Основным недостатком «коротких» имен является их низкая содержательность. Далеко не всегда удается выразить несколькими символами характеристику файла, поэтому с появлением ОС Windows 95 было введено понятие «длинного» имени. Такое имя может содержать до 256 символов. Этого вполне достаточно для создания содержательных имен файлов. В имени разрешается использовать пробелы и несколько точек. Прописные и строчные буквы не различаются ОС, однако символы разных регистров отображаются ОС. Расширением имени счи­таются все символы, идущие после последней точки, например:


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

— .xls – электронная таблица MS Excel;

— .doc – текстовый файл редактора MS Word;

— .mdb – файл базы данных MS Access;

— .zip – упакованный файл;

— .bmp – графический файл и т.д.

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

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

Основных атрибутов четыре:

— Только для чтения (Read only);

— Скрытый (Hidden);

— Системный (System);

— Архивный (Archive).

Атрибут «Только для чтения » ограничивает возможности работы с файлом. Его уста­новка означает, что файл не предназначен для внесения изменений.

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

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

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

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

До появления ОС Windows 95 при описании иерархической файловой структуры использовался термин «каталог». С появлением семейства ОС Windows был введен новый термин – «папка». Эти термины равнозначны: каждому каталогу файлов на диске соответствует одно­именная папка ОС системы.

Папки – важные элементы иерархической структуры, необходимые для обеспечения удобного доступа к файлам, если файлов на носителе слишком много. Файлы объединяются в папки по любому общему признаку, заданному их созда­телем (по типу, принадлежности, назначению, времени создания и др.). Папки нижних уровней вкладываются в папки более высоких уровней и явля­ются для них вложенными. Верхним уровнем вложенности иерархической струк­туры является корневая папка диска.

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

В иерархических структурах данных адрес объекта задается маршрутом (путем доступа), ведущим от вершины структуры к объекту. При записи пути доступа к файлу, проходящего через систему вложенных каталогов, все промежуточные ката­логи разделяются между собой определенным символом. Во многих ОС в качестве такого символа используется «\» (обратная косая черта), например:


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

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

Для загрузки самой ОС и организации работы той или иной системы управления файлами были приняты специальные соглашения о структуре жесткого диска.Принцип организации файловой системы зависит от ОС. Жесткий диск представляется как набор поверхностей. У гибких дисков их всего две (верхняя и нижняя). Жесткие диски – это на самом деле «этажерки», состо­ящие из нескольких пластин, поэтому количество поверхностей у них больше. Каждая поверхность диска разделяется на кольцевые дорожки, а каж­дая дорожка – на секторы (рис. 3.2). Размеры секторов фиксированы и равны 512 байт.

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

Цилиндр – это совокупность всех дорожек, имеющих одинако­вые номера, то есть равноудаленные от оси вращения. Поэтому реально местопо­ложение файла на жестком диске определяется номером цилиндра, номером поверх­ности и номером сектора.

Сектор – это наименьшая единица хранения данных, но для адресации она используется далеко не во всех файловых системах из – за малого размера. Такие ОС, как MS – DOS, Windows, OS/2, используют для адресации более крупную единицу хранения, называемую клас­тером. Кластер – это группа соседних секторов. Размер кластера зависит от раз­мера жесткого диска. Чем больше диск, тем большим назначается размер кластера. Типовые значения размера одного кластера: 8, 16, 32 или 64 сектора.

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

В таблице 3.1. перечислены типы файловых систем и версии ОС Windows, которые их используют.

Используемыми ОС Windows файловыми системами являются:

— FAT16 – наиболее старая файловая система, которую могут использовать практически все Из – за имеющихся ограничений она не может использовать диски больше, чем 4096 Мб. Система FAT16 считается устаревшей, хотя иногда успешно применяется и по сей день. Максимально возможный размер файла – 4 Гб.

— FAT32 – более новая файловая система, с которой могут работать все новые ОС, выпущенные после 1998 г. Размер дисков под FAT32 может достигать 127 Гб. Максимально возможный размер файла – 4 Гб.

— NTFS – старая, но тщательно разработанная файловая система, отличающаяся от FAT16 и FAT32 своей надежностью и способностью обеспечить защиту от несанкционированного доступа. Эту файловую систему «понимают» далеко не все ОС.

— CDFS – файловая система, используемая для дисков CD – ROM. На жестких дисках она не применяется. Используется всеми современными ОС.

Обзорная лекция № 32

для студентов специальности

«Программное обеспечение информационных технологий»

доцента кафедры ИВТ, к.т.н. Ливак Е.Н.

СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

Основные понятия, факты

Назначение и классификация СПО. Требования к СПО. Базовое и сервисное СПО. Операционные системы. Системы управления файлами. Системные утилиты. Системы программирования.

Навыки и умения

Разработка системного программного обеспечения в соответствии с требованиями к СПО на языках Assembler , С++.

Установка и использование системных утилит.

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

Традиционно все программное обеспечение подразделяют на два класса:

1) системное программное обеспечение (СПО) и

2) прикладное (пользовательское)программное обеспечение (ППО)

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

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

Это самый многочисленный класс программных продуктов.

К специальному программному обеспечению информационных и управляющих систем относятся

· программы (системы) управления базами данных;

· программы управления языком интерфейса информационных систем;

· программы сбора и предварительной обработки информации (в информационно-измерительных системах, например, бортовые системы).

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

Поэтому часто такие ПО относят к системному программному обеспечению.

Системное программное обеспечение (System Software) - совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ.

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

Назначение системного программного обеспечения

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

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

· автоматизации разработки (создания) новых программ;

· обеспечения надежной и эффективной работы самого компьютера и вычислительной сети;

· проведения диагностики и профилактики аппаратуры компьютера и вычислительных сетей;

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

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

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

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

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

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

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

В СПО традиционно включают

· системные управляющие и

· системные обрабатывающие программы.

Управляющие системные программы организуют корректное функционирование всех устройств системы.

Основные системные функции управляющих программ -

· управление вычислительными процессами и вычислительными комплексами и

· работа с внутренними данными ОС.

Как правило, они находятся в основной памяти. Это резидентные программы, составляющие ядро ОС. Управляющие программы, которые загружаются в память непосредственно перед выполнением, называю транзитными ( transitive ).

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

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

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

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

Другая классификация

Часто Системное ПО компьютера подразделяют на БАЗОВОЕ и СЕРВИСНОЕ программное обеспечение.

БАЗОВОЕ программное обеспечение (base software) - минимальный набор программных средств, обеспечивающих работу компьютера.

К базовому программному обеспечению компьютера относятся

· операционные системы и драйверы в составе ОС;

· интерфейсные оболочки для взаимодействия пользователя с ОС (операционные оболочки) и программные среды;

· системы управления файлами.

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

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

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

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

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

Любая система управления файлами не существует сама по себе - она разработана для работы в конкретной ОС и с конкретной файловой системой. То есть можно было бы систему управления файлами отнести к ОС.

Но в связи с тем, что

1) ряд ОС позволяет работать с несколькими файловыми системами (либос одной из нескольких, либо сразу с несколькими одновременно); а дополнительную файловую систему можно установить (т.е. они самостоятельны)

2) простейшие ОС могут работать и без файловых систем;

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

Заметим, что часто в специальной литературе системы управления файлами относят все-таки к операционным системам.

СЕРВИСНОЕ программное обеспечение - программы и программные комплексы, которые расширяют возможности базового программного обеспечения и организуют более удобную среду работы пользователя.

Это набор сервисных, дополнительно устанавливаемых программ, которые можно классифицировать по функциональному признаку следующим образом:

· драйверы специфических и специальных устройств (те, которые не поставляются в составе ОС).

· программы диагностики работоспособности компьютера;

· антивирусные программы, обеспечивающие защиту компьютера, обнаружение и восстановление зараженных файлов;

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

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

· программы обслуживания сети.

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

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

Наибольшее распространение сегодня имеют комплекты утилит: Norton Utilities - фирма Symantec; Checkit PRO Deliuxe 2.0 - фирма Touch Stone; PC Tools for Windows 2.0; программа резервного копирования HP Colorado Backup for Windows 95.

Системы программирования

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

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

Система программирования включает следующие программные компоненты:

· редактор текста;

· транслятор с соответствующего языка;

· компоновщик (редактор связей);

· отладчик;

· библиотеки подпрограмм.

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

Например, одна из популярных систем программирования на языке С/С++ от фирмы Watcom для OS /2 позволяет получать программы и для самой OS /2, и для DOS , и для Windows .

Редактор текста - это программа для вводаи модификации текста.

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

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

(У интерпретаторов два основных недостатка. Первый - низкая скорость работы интерпретируемых программ.)

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

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

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

· пошаговое выполнение программы (режим трассировки) с отображением результатов,

· остановка в заранее определенных точках,

· возможность остановки в некотором месте программы при выполнении некоторого условия;

· изображение и изменение значений переменных.

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

Средства сетевого доступа обеспечивают обработку, передачу и хранение данных в сети.

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

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

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

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

Пример. Приложения Netscape Navigator , Internet Explorer - программы- клиенты.

Таким образом, в системном ПО мы выделили пять групп системных программ :

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

· интерфейсные оболочки для взаимодействия пользователя с ОС (операционная оболочка) и программные среды;

· системы управления файлами;

· системы программирования;

· утилиты;

· средства сетевого доступа.

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

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

Требования к системному программному обеспечению

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

· прозрачность работы;

· гарантированная надежность выполнения в соответствии со спецификациями (спецификациями называютсяфункциональные требования);

· максимальная скорость выполнения;

· минимальные затраты на хранение машинных кодов;

· поддержка стандартных средств связи с прикладными программами.

Эффективность системных программ зависит от времени их создания и надежности исполняемого кода.

Требование эффективности системных программ вызывает необходимость использования специальных языков

· машинно-ориентированных типа языка Assembler и

· высокого уровня типа C или C ++.

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

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

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

1.Гордеев А.В., Молчанов А.Ю. Системное программное обеспечение. - СПб.: Питер, 2001. - с. 17-21

2.Пустоваров В.И. Ассемблер: программирование и анализ корректности машинных программ: - К.: Издательская группа BHV , 2000. -с. 5-25

3. Internet- источник // iit.khsu.ru/isitc/informatika/6_2.htm

4. Internet- источник // www.stu.ru/inform/glaves2/glava8/gl_8_2.htm

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

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

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

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

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

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



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

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

Существует несколько видов операционных систем: DOS, Windows, UNIX, Macintosh OS, Linux. У других современных ОС, например Linux, UNIX, OS/2, имеют свои преимущества и недостатки. Linux предоставляет наиболее совершенную защиту, чем Windows, и имеет более продуманный интерфейс; UNIX применяется там, где требуется высокая надежность систем. Большим недостатком OS/2 и UNIX является довольно скудный выбор программных средств, и здесь Windows выигрывает у остальных операционных систем.

Основные функции ОС:

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

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

· Дра́йвер (англ. driver, мн. ч. дра́йверы ) - компьютерное программное обеспечение, с помощью которого другое программное обеспечение (операционная система) получает доступ к аппаратному обеспечению некоторого устройства .

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

Прикладной уровень

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



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

Алфавитно-цифровые клавиши - используются для ввода букв, цифр, пробела и специальных знаков;

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

Клавиши управления курсором - применяются для перемещения курсора;

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

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

Дополнительная клавиатура чем-то напоминает обычный калькулятор.

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

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

Если лампочка (индикатор) не горит, то на дополнительной клавиатуре включен режим навигации. Если лампочка светится, то на дополнительной клавиатуре включен цифровой режим.

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

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

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

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

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

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

Рис. 100.

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

Рассмотрим уровни программного обеспечения.

Базовый уровень

Самый низкий уровень программного обеспечения. Оно отвечает за взаимодействие с базовыми аппаратными средствами. Базовые программные средства хранятся в микросхемах ПЗУ. Программы и данные записываются в микросхемы ПЗУ на этапе производства. В тех случаях, когда изменение базовых программных средств во время эксплуатации является технически целесообразным, вместо микросхем ПЗУ применяются перепрограммируемые постоянно запоминающие устройства (ППЗУ - англ. Erasable and Programmable Read Only Memory, EPROM).

Системный уровень

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

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

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

Служебный уровень

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

Прикладной уровень

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

К прикладным программным средствам относят:

  • - текстовые редакторы - предназначены для создания и редактирования текста. Дополнительные функции состоят в автоматизации процесса ввода и редактирования. В качестве примера можно привести программу Notepad (Блокнот);
  • - текстовые процессоры. Основным отличием текстовых процессоров от текстовых редакторов в том, что они позволяют не только вводить и редактировать тексты, но и внедрять в него графики, формулы, таблицы и других объекты. Классическим примером текстового процессора является Microsoft Word;
  • - графические редакторы - предназначены для создания или обработки графических изображений.

Различают: растровые редакторы, векторные редакторы и программные средства для создания и обработки трехмерной графики (ЗО-редакторы). Самый простой пример растрового графического редактора, который присутствует на каждом компьютере - Paint. Растровые изображения имеют несколько видов расширения: jpeg или jpg, png, gif, bmp и др. Второй пример графического растрового редактора - Adobe Photoshop. Photoshop имеет огромный функционал, поддержку большого числа плагинов (программные модули, динамически подключаемые к основной программе и предназначенные для расширения и/или использования ее возможностей) и инструментов. Позволяет работать в различных цветовых моделях и с различными расширениями файлов.

Векторный графический редактор CorelDRAW из пакета CorelDRAW Graphics Suite представляет собой мощный профессиональный продукт для создания различного рода графики и анимации. Тем не менее благодаря встроенной развитой системе обучения и справки программа весьма проста для освоения даже новичками в области векторной графики.

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

Редакторы трехмерной графики служат для создания фильмов, компьютерных игр, графического дизайна, изобилующих анимацией, визуальными эффектами. Широкое распространение подобные программы нашли в области машиностроения, архитектуры, производства потребительских товаров и т.п. В качестве примера можно привести такие программные продукты, как Autodesk Maya, Autodesk 3ds Max:

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

Принято делить СУБД на настольные и промышленные. Примером настольных СУБД служат: Access, FoxPro. Промышленные СУБД ориентированы на создание информационных систем, оперирующих большим объемом информации с повышенным требованием безопасности, например: Oracle, MS SQL Server:

  • - электронные таблицы - представляют собой программный инструмент, предназначенный для хранения различных типов данных, проведения над ними расчетов. Самое популярное средство работы с электронными таблицами - программа Excel;
  • - системы автоматизированного проектирования (САПР) - предназначены для автоматизации проектно-конструкторских работ. Применяются в машиностроении, приборостроении, архитектуре.

Наиболее распространенной САПР в мире является программа AutoCAD (англ. Computer-Aided Design) - двух- и трехмерная система автоматизированного проектирования и черчения. В качестве примера российской САПР можно привести систему ADEM (англ. Automated Design Engineering Manufacturing), предназначенную для автоматизации конструкторско-технологической подготовки производства;

  • - настольные издательские системы - позволяют осуществлять электронную верстку широкого спектра основных типов документов: информационного бюллетеня, цветной брошюры, каталога, справочника. Примерами таких программ являются: Corel Ventura, Page Maker, QuarkXPress, Frame Maker, MS Publisher;
  • - экспертные системы - предназначены для анализа данных, содержащихся в базе знаний, и выдачи рекомендаций по запросу пользователя.

Экспертные системы способны в сложной ситуации (при недостатке времени, информации или опыта) дать квалифицированную консультацию (совет, подсказку), помогающую специалисту или менеджеру принять обоснованное решение. База знаний экспертной системы содержит сведения о предметной области (медицина, юриспруденция и т.п.) и правила - набор инструкций, применяя которые к известным фактам можно получать новые факты. В качестве примера можно привести программную экспертную систему CLIPS (англ. С Language Integrated Production System);

  • - web-редакторы (HTML-редакторы) - позволяют создавать с минимальными временными затратами простые и сложные, красиво оформленные Web-страницы. Одним из наиболее популярных HTML-редакторов в мире является программа Adobe Dreamweaver;
  • - браузеры (обозреватели) - программные средства, предназначенные для просмотра web-сайтов. Наиболее популярными являются программы Internet Explorer, Mozilla Firefox, Google Chrome, Opera;
  • - бухгалтерские системы (системы автоматизации бухгалтерского учета) - предназначены для автоматизации подготовки бухгалтерских документов предприятия и их учета, для подготовки регулярных отчетов по итогам производственной, хозяйственной и финансовой деятельности.

Бухгалтерский учет в крупных предприятиях ведется при помощи современных ERP (англ. Enterprise Resource Planning System - система планирования ресурсов предприятия) - систем, позволяющих автоматизировать не только бухгалтерский учет, но и управление производством. В этих целях обычно используются такие системы, как SAP, Oracle E-Business Suite, 1С:Предприятие, Microsoft Dynamics NAV (Navision), ERP «Галактика» и др.;

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

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

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

К служебным программным средствам относят:

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

Типичными представителями этого класса программ являются FAR Manager, Total Commander, FreeComander;

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

Из числа наиболее популярных программ можно выделить: ARJ, РКРАК, LHA, ICE, HYPER, ZIP, РАК, ZOO, RAR;

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

Диагностика - систематизированный способ поиска неисправностей с последующим их устранением. Среди программ диагностики можно выделить SiSoftware Sandra (англ. System ANalyser, Diagnostic and Reporting Assistant) - это информационная и диагностическая программа. Она предоставляет практически всю информацию об аппаратном и программном обеспечении компьютера. Другая программа - 3DMark, ориентированная исключительно на измерение производительности видеосистемы;

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

В качестве примера можно привести программу MB Probe, с помощью которой можно снимать температуру от нескольких термодатчиков, определить напряжения ядра процессора и материнской платы, держать под контролем обороты вентиляторов. Температура винчестера, атрибуты внутренней системы диагностики S.M.A.R.T., а также напряжения датчиков оборотов вентиляторов материнской платы могут быть представлены с помощью утилиты SpeedFan;

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

К антивирусному программному обеспечению данной категории относят Kaspersky Virus Removal Tool - программу разработанную специалистами лаборатории Касперского для сканирования компьютера на наличие вредоносных программ. Kaspersky A VP Tool находит и изолирует: вирусы, трояны, черви, шпионские и рекламные модули, все типы руткитов и тому подобные вредоносные программы. Другая популярная программа Dr.Web Curelt! - бесплатный антивирус для сканирования, обнаружения и удаления (лечения) компьютеров под управлением Windows.

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

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

Контрольные вопросы и задания

  • 1. Что называется программой? Дайте определение понятию «программная конфигурация».
  • 2. Начертите схему уровней программного обеспечения.
  • 3. Дайте характеристику базовому уровню программного обеспечения.
  • 4. Что называется драйвером устройства? Опишите назначение программ системного уровня.
  • 5. Каково назначение утилит? Поясните назначение программ системного уровня. Приведите примеры подобных программ.
  • 6. Перечислите программы, которые относят к прикладному уровню программного обеспечения.
  • 7. Какие типы программ, относящиеся к графическим редакторам, вы знаете?
  • 8. Поясните основные функции систем управления базами данных. Приведите примеры программ данного класса.
  • 9. В чем особенности экспертных систем?
  • 10. Раскройте назначение финансовых аналитических систем. Приведите примеры программ данного класса.
  • 11. Перечислите программы, относящиеся к служебным программным средствам.
  • 12. Какой класс программ позволяет выполнять основные операции над файлами? Приведите примеры.
  • 13. В чем отличие программ, предназначенных для диагностики и мониторинга компьютерных систем?
  • 14. Что относится к средствам обеспечения компьютерной безопасности? Перечислите и опишите соответствующие программы.
  • 15. Разработайте таблицу, которая содержит рассмотренные виды программного обеспечения, установленные на вашем компьютере.

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

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

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

Впервые, идею того, что любое, наперёд заданное состояние системы может быть достигнуто, последовательным выполнением элементарных команд, переводящим её из одного стабильного состояния в другое, предложил английский математик по имени Алан Тьюринг . В своём эссе «Computable numbers with an application to the Entscheidungsproblem (Decision problem)» он создал теоретическую модель, представлявшую собой абстрактную машину (автомат), способную выполнять элементарные действия и, переводившую её из одного фиксированного состояния в другое фиксированное состояние. В результате автоматом могли выполняться простейшие, рудиментарные операции. Такой автомат, впоследствии, получил в литературе название – «машина Тьюринга» . Главная идея заключалась в математическом доказательстве того, что любое, заданное наперёд состояние этого автомата можно достигнуть, выполняя конечный набор определённых команд, из всего фиксированного набора (программы). Благодаря этой теории, впоследствии, и родилась такая (если так можно выразиться) наука, как программирование.

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

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

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

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

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

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

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

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

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

Таким образом, все программное обеспечение можно условно разделить на три вида:

  1. Системное ПО;
  2. Прикладное ПО;
  3. Инструментальное ПО.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  1. Бесплатно распространяемые программы . Как правило, их можно свободно копировать и распространять абсолютно бесплатно. Распространитель при этом, может взимать плату, но не за само программное обеспечение, а, например, за услуги записи на носитель, канал передачи данных и т. п.;
  2. Свободно распространяемое ПО . Как и в случае с «бесплатным» денег за такие программы никто не взимает, но основным отличием от первого, является возможность вносить изменения в программный код и распространять новые версии полученного ПО вместе со своими изменениями. Таким образом, «свободное» ПО распространяется вместе с исходным кодом;
  3. Открытое ПО . ПО условиям лицензии в обязательном порядке распространяется с открытым исходным кодом;
  4. Закрытое ПО . Является частной собственностью своих авторов и распространяется строго на определённых условиях. Это может быть, как денежное вознаграждение, так и иные виды вознаграждений не противоречащие законодательству, которые разработчик может потребовать за его использование. Например, это может быть условно бесплатное распространение, при котором для возможности использования программы потребуется пройти регистрацию на сайте. Как правило, распространяется без исходных кодов.

Заключение

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

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