Виды и структура программного обеспечения. Базовое программное обеспечение. Структура системного программного обеспечения. Структура программного обеспечения

Прикладное программирование

Курс лекций

Тема 1. Структура программного обеспечения ПК

Совокупность программ, предназначенная для решения задач на ПК,

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

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

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

проверку работоспособности устройств компьютера и т.д.

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

обработка информационных массивов и т.д.

инструментальное ПО (системы программирования),

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


Системное ПО

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

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

работоспособности устройств компьютера и т.п.

К системному ПО относятся:

операционные системы (эта программа загружается в ОЗУ при включении компьютера)


Программы – оболочки (обеспечивают более удобный и наглядный способ общения с компьютером, чем с помощью командной строки DOS, например, Norton Commander)



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

мультипрограммирования и.т.д.

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

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

которые представляют пользователю ряд дополнительных услуг)

К утилитам относятся:

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

количество информации на диске за счет ее динамического сжатия)

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

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

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

копирование, антивирусное ПО).

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


(системного) ПО входит в состав ОС. Часть общего ПО входит в состав самого компьютера (часть программ ОС и контролирующих тестов записана в ПЗУ или ППЗУ, установленных на системной плате). Часть общего ПО относится к автономными программам и поставляется отдельно. 01.09.2015

Прикладное ПО

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

составе программных комплексов или пакетов. Прикладное ПО –

программы, непосредственно обеспечивающие выполнение необходимых

работ на ПК: редактирование текстовых документов, создание рисунков или

картинок, создание электронных таблиц и т.д.

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

К прикладному ПО, например, относятся:

Комплект офисных приложений MS OFFICE

Бухгалтерские системы

Финансовые аналитические системы

Интегрированные пакеты делопроизводства

CAD – системы (системы автоматизированного проектирования)

Редакторы HTML или Web – редакторы

Браузеры – средства просмотра Web - страниц

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


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

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

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

1. Текстовый редактор для создания файла с исходным текстом программы.

2. Компилятор или интерпретатор .Исходный текст с помощью программы-

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

3. Редактор связей или сборщик , который выполняет связывание объектных модулей и формирует на выходе работоспособное приложение – исполнимый код.

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

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

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


Наиболее популярные редакторы (системы программирования программ с использованием визуальных средств) визуального проектирования:

Borland Delphi - предназначен для решения практически любых задачи прикладного программирования

Borland C++ Builder – это отличное средство для разработки DOS

и Windows приложений

Microsoft Visual Basic – это популярный инструмент для создания

Windows-программ

Microsoft Visual C++ - это средство позволяет разрабатывать любые приложения, выполняющиеся в среде ОС типа Microsoft

Тема 2. Виды ППО

Прикладное программное обеспечение (специальное программноеобеспечение; application software, special software) - часть программного обеспечения , состоящая из отдельных прикладных программ и пакетов прикладных программ, предназначенных для решения различных задач пользователей ЭВМ и автоматизированных систем. Набор (комплект)

программ и связанной с ними документации (лицензионное свидетельство,

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

Условно выделяют:

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


2. Дружественное программное обеспечение (дружественный интерфейс; user-friendly software, user-friendly interface) - реализующее требования удобства и/или облегчения общения с программными средствами и ЭВМ для пользователей, в том числе и неопытных.

3. Бесплатное программное обеспечение (public-domain software) - программы без копирайта, которые можно свободно копировать, тиражировать, распространять. Бесплатное ПО не следует путать с условно-бесплатным программным обеспечением, на которое копирайт распространяется.

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

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

6. Free Software (FS, свободный софт) - свободное или свободно распространяемое ПО: термин предложен в 1984 году Ричардом Столлменом, который заявил, что каждый пользователь программы должен иметь четыре степени свободы: право свободно запускать, распространять, изучать и улучшать программу. В 1996 году было сформулировано более подробное определение свободного ПО - FSD (Free Software Definition), поддержанное общественной организацией


программистов - FSF (Free Software Foundation). В концепции

Copyleft программам и программистам предоставляется четыре вида

«права свободы» на выполнение программ для любых целей; изучение и модификацию программ, обеспеченное возможностью доступа к кодам; копирование и передачу копий; улучшение программ и передачу сообществу усовершенствованных версий. Эти права закрепляются в лицензиях, включая GNU General Public License и BSD.

Существует другое определение «свободного ПО» - DFSG (Debian

Free Software Guidelinnes, сформулированное в проекте Debian

примерно в то же время, что и FSD, Брюсом Перенсом (Bruce Perens) с

формально-юридических позиций.

7. Open Source (Открытый источник) - концепция создания свободно распространяемого ПО в открытых исходных кодах (ОИК), выделившаяся в 1998 году из Free Software и сформулированная Брюсом Перенсом в документе OSD (Open Source Definition). Она определяет авторское право на оригинальное ПО, а также права на репродуцирование и редактирование оригинальных разработок. Порожденные на основе этой концепции сообщество разработчиков ПО и так называемая Культура открытого источника (Open Source Culture) пытаются решить проблемы, возникающие между свободой распространения ПО и правом на интеллектуальную собственность. Для уточнения терминологии и снятия противоречий между Free Software и Open Source Европейская комиссия предложила в июне

2001 году термин FLOSS (Free/Libre and Open Source Software). Фирма

Sun Microsystems в декабре 2004 года предложила новую форму лицензии на свою версию ОС OpenSolaris . Она основана на Mozilla Public License и получила название CDDL (Common Development and Distribution License). В соответствии с этой лицензией разработчики, принимающие ее условия, должны дать право владения новыми


кодами программы разработчику исходного кода. Этим разработчику

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

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

9. Бета версия (beta version; b-version) - опытная версия программного обеспечения или прикладной программы, которая предварительно распространяется в ограниченном количестве преимущественно среди пользователей-экспертов или рецензентов для тестирования программного продукта и последующей его доводки перед выпуском

основного тиража программы.

10. Рабочая версия (run-time version) - копия программы с приложением,

которая может работать, но не обеспечивает все функциональные

возможности программы.

Тема 3. Классификация ППО

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


Рис.2. Классификация ППП (по области применения)

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

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

включая метод решения задачи и до выдачи выходного документа.

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

Процедурные ППП – автоматизируют создание ПО по реализации типовых процедур обработки информации (ввод, хранение, вывод,

корректирование, обновление, упорядочивание, поиск, фильтрация файлов и т.д.)

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


генератор ввода–вывода (ГВВ), генератор экранных форм, генератор документации (FOXDOC) : создание программного документа – текст и описание программы.

Сервисные – ориентированны на поддержку технологических процессов обработки программ, дополнение ОС.

Достоинства ППП.

1) Сокращение затрат на разработку; (до нескольких десятков процентов, в среднем 20–30%)

2) По сравнению с элементарными средствами, более высокая комплексная увязка решений;

3) Более высокое качество документирования ПИ;

4) Более высокая функциональная надежность;

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

которыеподдерживают эксплуатацию у пользователя);

6) ППП – средство передачи и обмена опытом между разработчиками

и между конечными пользователями;

Недостатки ППП.

1) Сложность освоения ППП;

2) Большое разнообразие ППП по распространенным задачам затрудняет выбор. На сегодня отсутствуют объективные методы оценки

3) Низкая степень системной увязки существующих ППП (в случае увязки нескольких конкретных программ по входам–выходам);

4) Проблема наращивания и модификации;

5) Малая функциональная полнота.

ППП общего назначения

Данный класс содержит широкий перечень программных продуктов,

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

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

программирования, могут пользоваться и программисты для создания

усложненных программ обработки данных.

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

либо централизованное хранение баз данных на файл-сервере и сетевой

доступ к ним.

В настоящее время наиболее широко представлены реляционные СУБД для персональных компьютеров, осуществляющие:

Работу с базой данных через экранные формы;

Организацию запросов на поиск данных с помощью специальных языков запросов высокого уровня;

Генерацию отчётов различной структуры данных с подведением промежуточных и окончательных итогов;

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

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

Пользовательские приложения (прикладные программы),

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


СУБД (например, в СУБД Access 2010) содержатся элементы CASE-

технологии проектирования, в частности:

Визуализирована схема баз данных;

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

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

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

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

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

Многопользовательские СУБД (типа Paradox, Access, FoxPro и др.) в сетевом варианте обработки данных хранят информацию на файл-сервере – специально выделенном компьютере в централизованном виде, но сама обработка данных ведется на рабочих станциях. Серверы баз данных,

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

Большинство серверов баз данных может использовать одновременно несколько платформ (Windows NT, Unix, OS/2 и др.), поддерживает широкий


спектр протоколов передачи данных (IPX, TCP/IP, X.25 и др.).

Некоторые серверы реализуют распределенное хранение информации в сети, поддерживают интерфейсы на уровне вызова типа:

1. ODBC – Open Data Base Connectivity – для доступа к разнородным базам данных;

2. DAL – Data Access Language – для создания запроса на выборку данных, распределённых в сети;

3. SAG/CLI – SQL Access Group/Call Level Interface – для распределенных запросов и др.

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

2. Генераторы (серверы) отчётов –программные средства,

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

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

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

2. программы управления очередью запросов на формирование отчётов;

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

4. программы ведения архива отчётов и др.

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


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

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

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

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

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

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

в результате обмена из других программных систем.

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


вычислительной и операционной платформе.


Наиболее распространены интегрированные пакеты, компонентами которых являются:

2. текстовый редактор;

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

4. органайзер;

5. средства поддержки электронной почты;

6. программы создания презентаций;

7. графический редактор.

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

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

Полнота информационных технологий для конечных пользователей;

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

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

общий сервис для программ интегрированного пакета (например,

словарь и средства орфографии для проверки правописания, построитель диаграмм, конвертер данных и др.);


Легкость обмена и ссылок на объекты, созданные программами интегрированного пакета (применяется два метода: DDE – динамический обмен данными и OLE – динамическая компоновка объектами),

единообразный перенос объектов (метод drag-and-drop);

наличие единой языковой платформы для разбора макрокоманд,

пользовательских программ;

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

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

Методо-ориентированные ППП

Методо–ориентированное ППП реализуют тот или иной метод

(математический) обработки информации.

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

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

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

исследования операций.

Методы статистической обработки и анализа данных (описательная статистика, регрессионный анализ, прогнозирование значений технико-

экономических показателей и т. п.) имеют широкое применение. Так,

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


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

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

Офисные ППП

Данный класс программных продуктов включает программы,

обеспечивающие организационное управление деятельностью офиса:

1. Органайзеры (планировщики) – программное обеспечение для планирования рабочего времени, составления протоколов встреч,

расписаний, ведения записной и телефонной книжки.

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

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

информации и преобразования в текстовое представление. К ним относятся :


ППП OCR Cunei Form 2.0 – обеспечивает распознавание смешанных русско-английских текстов, в формате RTF сохраняется как текст, так и иллюстрации;

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

ППП Stylus Lingvo Office – реализует весь цикл «от листа до листа» – с помощью сканера осуществляется считывание текстового изображения, находящегося на печатном листе; FineReader осуществляет распознавание оптических образов и запись считанной информации в текстовом виде; Stylus for Windows выполняет перевод на указанный язык;

корректор орфографии Lingvo Corrector и резидентный словарь Lingvo

осуществляет проверку и правку. Результат перевода представляется в формате текстового редактора Word for Windows.

3. Коммуникационные ППП – предназначены для организации взаимодействия пользователя с удаленными абонентами информационной сети. В условиях развития глобальной информационной сети Internet

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

HTML, использованием цвета при оформлении фона, текста,

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

1. Eudora 2.1.2 (Qualcomm);

2. Pegasys Mail 2.4 (David Haris);


Они различаются платформами, на которых работают (DOS, Windows 3.x, Windows 95, Windows NT, Macintosh), ценой и условиями распространения,

поддерживаемыми транспортными протоколами, интерфейсом с сетями.

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

управление сообщениями по электронной почте (оповещение о новой почте,

организация почтовых ящиков, поиск, цитирование корреспонденции и т. д.).

Краткий обзор некоторых ППП

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

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

Autodesk AutoCAD

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

Первые версии системы AutoCAD, разрабатываемой американской фирмой Autodesk, появились еще в начале 80-х годов двадцатого века, и

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

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

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


Adobe Flash


Adobe (ранее Macromedia) Flash – это технология и инструментарий разработки интерактивного содержания с большими функциональными возможностями для цифровых, веб- и мобильных платформ. Она позволяет создавать компактные, масштабируемые анимированные приложения

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

плейерами для просмотра и редакторами для создания.

Пакет MatLab

MatLab (сокращение от англ. «Matrix Laboratory») – пакет прикладных программ для решения задач технических вычислений, и язык программирования, используемый в этом пакете. По данным фирмы-

разработчика, более 1000000 инженерных и научных работников используют этот пакет, который работает на большинстве современных операционных систем, включая GNU/Linux, Mac OS, Solaris и Microsoft Windows.

Разработка ПИ.

Составляющие процесса разработки ПИ:

1) подход – от задачи;

2) подход стандартный ЕСПД.

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

Подход – от задачи

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


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

производителями.

2. Выбор методов реализации задачи. Формирование задания разработки. (Имеется ввиду спецификация ПИ). Внешнее проектирование ПИ.

(составить формулу документа)

Результатом внешнего проектирования является подготовка внешней спецификации.

3. Внутреннее (детальное, структурное) проектирование (выработка программных решений раскрывающих внутреннюю часть ПИ).

Определение структуры программного комплекса, состава и структуры БД,

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

4. Подготовка (кодирование) программных текстов, параллельно с этим подготовка программной документации.

5. Автономная отладка (отладка в статике), отладка модулей, их связей.

6. Комплексирование компонент и комплексная отладка;

7. Испытание. Проверка работоспособности изделия в реальных условиях эксплуатаци

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

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

В зависимости от назначения программное обеспечение ПК можно разделить на три группы:

· системное обеспечение;

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

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


А) Системное обеспечение ПК состоит из операционных систем и средств контроля и диагностики.

Операционная система (ОС) – это совокупность про­грамм, обеспечивающих управление процессом обработ­ки информации и взаимодействие между аппаратными средствами и пользователем. Операционная система – программа, которая загружается при включении компь­ютера. Она осуществляет диалог с пользователем, управ­ление компьютером, его ресурсами, запускает другие программы на выполнение. Операционная система обеспечивает пользователю и прикладным программам удобный способ общения (интерфейс) с устройствами компьютера. Сейчас большинство компьютеров работают под управлением операционной системы Windows фирмы Мiсrоsоft. Можно спорить о ее достоинствах и недостатках, но нельзя не отметить тот факт, что большинство программ написано именно под нее. Использование других операционных систем приводит к проблеме поиска тех программ, которые понадобятся в повседневной работе. Кроме того, среди всех ОС нужно выделить класс UNIX-систем. Это, прежде всего Linux, FreeBSD,Solaris. Они устанавливаются в первую очередь на серверах, так как обладают большими возможностями управления компьютером и занимают небольшие ресурсы. Но в отличие от Windows-систем их администрирование доступно лишь профессионалам или очень грамотным пользователям, что существенно снижает область их применения.

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

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

- Программы-архиваторы (упаковщики) позволяют за счет применения специальных методов «упаковки» информации сжимать информацию на дисках, т.е. создавать копии файлов меньшего размера. Существует много программ архиваторов, имеющих различные показатели по степени и времени сжатия, эти показатели могут быть разными для различных файлов (текстовых, графических, исполняемых и т.д.), т.е. один архиватор хорошо сжимает текстовый файл, а другой – исполняемый. Среди самых известных и часто используемых программ выделяются следующие: ARJ, PKZIP, RAR, LНA, НА и др.

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

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

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

· программы-доктора, или фаги, «лечат» программы, восстанавливая их первоначальный вид и удаляя при этом из них вирус;

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

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

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

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

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

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

– различные вспомогательные программы.

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

Языки программирования – это специально созданные языки для описания алгоритмов обработки данных на ЭВМ. В настоящее время их насчитывается несколько сотен. На языках программирования разрабатываются программы для ПК. В пору раннего развития компьютерных технологий особой популярностью пользовался язык программирования Фортран – специальный язык для программирования машинных инструкций, он использовался в основном на больших ЭВМ. С развити­ем эры ПК популярность перешла к языкам Бейсик и Паскаль. Они представляли собой компромисс между мощностью и доступностью, благодаря чему многие профессионалы начинали с написания программ именно на этих языках. Но в основном профессионалы работают на языке Си (или его объектно ориентированном подвиде Си++). Его возможности настолько велики, что позволя­ют писать как программы для печати бухгалтерских расчетов, так и драйверы для операционных систем.

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

Транслятор – это переводчик с языка программирования на язык ЭВМ, т.е. в команды, состоящие из машинных кодов. Различают основные виды трансляторов: интерпретаторы и компиляторы.

Интерпретатор – транслятор, который обеспечивает покомандный перевод в машинные коды с одновременным их исполнением. Достоинством интерпретатора является возможность организации работы в режиме диалога «пользователь – компьютер». Недостаток состоит в низкой скорости выполнения программы.

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

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

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

Специализированные пакеты прикладных программ – программы для решения определенного класса задач, конкретной предметной области, которые предназначены для обеспечения потребностей большого числа пользователей. Например, текстовые редакторы (Лексикон, Word), электронные таблицы (SuperCalc, Excel), Базы данных (dBase, Access) и др.

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

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

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

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

1) Браузеры – программы, которые отражают содержание ресурсов в компьютерных сетях, могут быть построены на технологии НTML, FTP или Telnet. Наиболее известны Мiсrоsоft Internet Explorer, Netscape Navigator, Opera.

2) Почтовые программы применяются для пересылки текстовых сообщений (писем) и любых файлов пользователями компьютерных сетей. Например, программы Microsoft Oиtlook Express, The Bat!, Eиdora.

Коммуникационные программы позволяют пользователям общаться посредством текстовых сообщений (ISQ, AOL Instant Messenger, Yahoo! Pager), потокового аудио (Microsoft Net Meeting) или потокового видео (Quick Movie).

Служебные программы помогают следить за состоянием «здоровья» компьютера (Reestr Cleaner), вести дела (Display Notes), менять текущий язык на компьютере (Snoop!), отслеживать трафик Интернет-соединений (NetStat) и правильность перекачки файлов из Интернета (ReGet).

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

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

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

Обзорная лекция № 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

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

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

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

В базовое программное обеспечение входят:

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

· операционные оболочки (обычно текстовые и графические);

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

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

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

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

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

· наличие компрессии диска;

· возможность архивирования файлов;

· поддержка многозадачного режима работы;

· поддержка сетевого программного обеспечения;

· наличие качественной документации;

· условия и сложность процесса инсталляции;

· мобильность (переносимость), безопасность, надежность и др.

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

В базовое программное обеспечение входят:

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

    Операционные оболочки (текстовые и графические);

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

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

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

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

DOS (Disk Operating System) выпущена в 1981 г. и была предназначена для поставки с компьютерами IBM PC.

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

    Работа с оперативной памятью (стандартный сервис DOS не позволял работать с памятью более 640 Кбайт);

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

    Для нормальной работы требовались специальные программы-оболочки (Norton Commander, Volkov Commander);

    Однозадачность;

    Отсутствие механизмов защиты информации.

В результате, с появлением Windows 95, DOS практически сошла со сцены, хотя до сих пор используется в качестве составляющей ядра Windows.

Windows 3.1/3.11. Первая версия этой ОС вышла в свет в конце 80-х годов, а в 1994 году появились действительно рабочие версии 3.1 и 3.11. Windows 3.1/3.11 устанавливалась поверх MS DOS и фактически, она представляла графическую оболочку, надстройку над MS-DOS.

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

К числу недостатков Windows 3.1/3.11 относятся: неустойчивость и большое число ошибок, поскольку программам приходилось работать в общем пространстве, конкурируя за ресурсы оперативной памяти или процессора, то есть модель многозадачной работы была упрощенной; отсутствие механизмов защиты информации.

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

Достоинства Windows 95: развитый графический интерфейс; возможность работать в обычном режиме DOS, не загружая графическую оболочку; операционная система стала 32-разрядной.

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

Если Windows 3.11 обладала лишь относительной поддержкой мультимедиа, то в Windows 95 впервые был интегрирован программно-драйверный комплекс DirectX, Благодаря этому стало возможным создание игр для Windows 95. А другая система - ActiveMovie - обеспечивала поддержку воспроизведения большого количества мультимедийных файлов - от музыки в формате MIDI до видеодисков.

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

Windows 98/98 SE. ОС Microsoft Windows 98 появилась в июне 1998 года. В конце 1999 года появилась русскоязычная версия Windows 98 SE. Основные отличия Windows 98/98 SE: 1) рабочий стол Windows 98 полностью интегрирован со средствами доступа к Internet. Основным средством работы с файлами и папками служит программа Internet Explorer; 2) расширенные возможности управления интерфейсом; 3) корректная работа с новыми комплектующими - процессором Pentium II, графическим портом AGP, шиной USB, новыми моделями видеокарт, материнских плат, модемов и т. д.

Windows 98 содержала много новых программ и утилит - в первую очередь полный комплект программного обеспечения для работы в Интернет и утилиту конвертации файловой системы FAT16 в более экономную FAT32.

Windows NT. Первая версия 32-разрядной ОС Windows NT (New Technology) появилась в 1993 году. С самого начала эта ОС разрабатывалась для работы в локальных компьютерных сетях (ЛВС).

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

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

Windows 2000. Следующая версия Windows NT (5.0) получила иное название - Windows 2000.

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

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

Windows ME (Millennium Edition). Потерпев относительную неудачу в деле продвижения Windows 2000 на рынок домашних ПК, Microsoft выпустила в последнем году второго тысячелетия новый, обновленный вариант «домашней ОС» линии Windows 98/МЕ - Millennium.

Достоинства: новая версия Microsoft Internet Explorer 5.5; обновленный пакет драйверов DirectX 7.1; ряд новых дополнительных программ (например, универсальный проигрыватель Windows Media Player); введена поддержка цифровых фото- и видеокамер, сканеров; отказ от поддержки режима MS-DOS; можно удалять и добавлять любые компоненты ОС, не обращаясь к установочному компакт-диску; добавлен ряд инструментов обеспечения сохранности конфигурации и системных файлов; стабильность работы выше, чем у Windows 98.

Недостатки: полный комплект Windows ME занимает на жестком диске от 300 до 500 Мбайт - примерно втрое больше, чем Windows 98 (при установке сохраняется дистрибутив, немало места занимает папка RESTORE для системных файлов); скорость работы в Windows ME несколько снизилась; повысился требуемый объем оперативной памяти.

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

Windows ME хорошо поддерживает только домашние сети; для корпоративных сетей используется Windows 2000.

Windows XP. Преемница Windows 2000, 32-разрядная операционная система с новой, защищенной архитектурой, получила имя - Windows XP (сокращенное от «experience»).

Под именем Windows XP представлена целая линейка операционных систем: корпоративные ОС Windows XP Server и Windows XP Professional и домашняя Windows XP Home.

Отличия системы состоят в следующем: улучшенная защита системных файлов; ряд новых драйверов устройств; встроенная система распознавания голосовых команд и данных. Windows XP - первая операционная система Microsoft с полностью настраиваемым интерфейсом; «интеллектуальное» меню «Пуск» предлагает вам меню часто используемых программ; переработана Панель управления - все иконки распределены по группам; поддержка записи CD-R и CD-RW дисков на уровне самой ОС (можно работать с этими дисками, как с обычными дискетами, копируя на диск файлы с помощью проводника).

Недостатком системы являются повышенные потребности в ресурсах компьютера. Так, для нормальной работы Windows XP потребует не меньше 128 Мбайт оперативной памяти, процессора с частотой не менее 700-800 МГц и около 1 Гбайт дискового пространства.

Windows СЕ. Эта операционная система предназначена для установки на «карманные» компьютеры (palmtop). Сегодня «электронными органайзерами» пользуются и деловые люди, постоянно находящиеся в разъездах, и студенты - благо стоят новинки не слишком дорого.

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

PC-DOS 2000 (IBM). Хотя Windows успешно завоевала большую часть домашних компьютеров, в локальных сетях многих крупных фирм США и Европы до сих пор используются старые компьютеры с процессорами 386 и 486 - крупные организации очень неохотно обновляют парк своих сетевых ПК. Эти соображения побудили корпорацию IBM продолжить, казалось бы, угасшую линию DOS. В конце 1998 года появился последний представитель этой линии - DOS 2000. Его отличия от предшественников в основном заключаются в усовершенствованной системе оптимизации памяти и сжатия дисков.

MacOS (Apple). Эта ОС на PC-совместимые компьютеры не устанавливается . MacOS предназначена для компьютеров Macintosh, выпускаемые корпорацией Apple.

В свое время Macintosh считался лидером рынка ПК. И именно MacOS стала первой операционной системой, предложившей пользователю удобства графического интерфейса, Рабочий Стол с иконками, соответствующими папкам и программам, удобные средства настройки, работа с мышью. Наконец, еще в начале 80-х компьютеры Macintosh уверенно работали с мощными графическими пакетами, не ведали «барьера 640 Кбайт», на долгие годы ставшего бичом семейства PC. Видео и звук на компьютере, цветная печать и многое другое стало известно именно благодаря Macintosh и MacOS, хотя не все они были разработаны этой фирмой.

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

Сегодня Macintosh и MacOS широко используют в процессе допечатной подготовки книг, журналов, газет. Такие программы, как Adobe Photoshop, Adobe Illustrator, Adobe PageMaker, изначально были предназначены для MacOS, и лишь потом переведены под Windows. И если вы планируете работать с графикой, анимацией, живым видео - вполне вероятно, что работать вам придется именно на Macintosh и MacOS, Рабочий стол, структура папок и файлов - все это присутствует и здесь. К тому же большинство популярных программ для PC сегодня имеет своих «двойников», предназначенных для работы на «Маках» (хотя часто логичнее сказать наоборот).

OS/2 (IBM). Из-за нестабильности Windows, параллельно с ее совершенствованием, корпорация Microsoft совместно с корпорацией IBM вела активную работу по созданию более совершенной и защищенной системы - OS/2.

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

Тем не менее, OS/2 существует до сих пор и даже приобрела некоторую популярность в среде корпоративных сетей. Для OS/2 разработано большое количество программных продуктов, в том числе, деловые приложения (полный пакет программ от Lotus - «прародителя» этой категории программ и создателя популярной электронной таблицы «1-2-3») и средства для разработки программ.

Linux. Операционная система Linux, выпущенная в 1994 г. Линусом Торвальдсом, существенно отличается от всех других операционных систем. Linux - единственная популярная ОС, созданная программистом-любителем. Она поддерживается, развивается и дополняется она сотнями тысяч таких же энтузиастов из разных стран мира. Наконец, Linux - единственная свободно распространяемая (то есть абсолютно бесплатная) ОС. По стабильности ОС Linux давно и уверенно занимает первое место. Однако до некоторого времени для того, чтобы работать с Linux, нужно было, как минимум разбираться в программировании . Поэтому единственной областью, в которой работал Linux, вплоть до самого последнего момента оставались сети . До сих пор бльшая часть Web-серверов Internet работает именно под управлением Linux.

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

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

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

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

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

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

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

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