Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Kandaurova_N_Vychislitelnye_sistemy_seti_i_telekommunikatsii

.pdf
Скачиваний:
245
Добавлен:
12.03.2016
Размер:
6.64 Mб
Скачать

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

Сопряжение компьютера с электромузыкальными инструментами осуществляется с помощью интерфейса электромузыкальных инструментов.

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

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

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

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

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

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

системы, ориентированные на восприятие отдельных слов;

системы, воспринимающие связную речь.

Разница между ними весьма существенна, так как при слитном произношении слов изменяется их звучание.

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

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

проблеме синтеза речи:

метод сжатия-восстановления формы сигналов – самый простой. Фразы и слова записываются раздельно и выбираются для воспроизведения в нужный момент по командам, поступающим от соответствующей программы. В такой системе невозможно воспроизвести слово, которое не было заранее записано. Качество воспроизведения речи очень высокое, но требуется память большого объема. Метод эффективен, когда словарный запас невелик 10-15 слов (говорящие часы, калькулятор, календарь);

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

130

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

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

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

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

[23, 24, 25]. Для работы со звуковой информацией необходимо соответствующее программное обеспечение: музыкальные редакторы, «говорящие машины», речевые и аудиоредакторы.

Музыкальные редакторы служат для:

1)ввода звукового эффекта в ОП компьютера:

с нотного листа (кодированием нотной записи с помощью клавиатуры);

подбором мелодии по слуху;

загрузкой мелодии с внешнего носителя (магнитофона, радиоприемника, телевизора);

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

3)автоматической нотной записи вводимой мелодии;

4)оформления мелодии в виде программы для включения ее в состав презентации или использования для индикации хода вычислительного процесса;

5)воспроизведения мелодии на акустическом устройстве вывода или на профессиональной аппаратуре, подключенной к ПК;

6)профессиональной обработки введенной мелодии (оркестровка, аранжировка), вывода нотной записи;

7)машинного синтеза музыки;

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

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

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

131

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

Литература

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

1.Бройдо В.Л., Ильина О.П. Вычислительные системы, сети и телекоммуникации. – 3-е изд. – СПб.: Питер, 2008.

2.Истомин Е.П., Неклюдов С.В., Чертков А.А. Вычислительные системы, сети и телекоммуникации: учебник. – СПб.: Андреевский издательский дом, 2007.

3.Поветкин С.Н. Вычислительные системы, сети и телекоммуникации (краткий курс): учеб. пособие. – СПб.: Андреевский издательский дом,

2005.

4.Пятибратов А.П. Вычислительные системы, сети и телекоммуникации: учебник / А.П. Пятибратов, Л.П. Гудыно, А.А. Кириченко; под ред. А.П. Пятибратова. – 4-е изд., перераб. и доп. – М.: Финансы и статистика; ИНФРА-М, 2008.

Список дополнительной литературы

1.Бройдо В.Л. Вычислительные системы, сети и телекоммуникации: учебник. – 2-е изд. – СПб.: Питер, 2005.

2.Основы современных компьютерных технологий: учебник / под ред. проф. А.Д. Хомоненко. – СПб.: КОРОНА принт, 2005.

3.Пятибратов А.П. Вычислительные системы, сети и телекоммуникации: учебник / А.П. Пятибратов, Л.П. Гудыно, А.А. Кириченко; под ред. А.П. Пятибратова. – 3-е изд., перераб. и доп. – М.: Финансы и статистика,

2005.

4.Пятибратов А.П. и др. Вычислительные системы, сети и

телекоммуникации: учебник / А.П. Пятибратов, Л.П. Гудыно, А.А. Кириченко; под ред. А.П. Пятибратова. – 2-е изд., перераб. и доп. – М.: Финансы и статистика, 2002.

Лекция № 10. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

10.1. Структура программного обеспечения компьютеров

Литературные источники по-разному трактуют структуры программного обеспечения (ПО) компьютеров различных классов [6, 9, 20, 23]. В общем случае ПО компьютеров делят на общее (системное) и специальное (прикладное), см. рисунок 10.1.

 

 

 

 

Программное

 

 

 

 

 

Специальное

 

 

 

 

 

 

 

 

 

обеспечение

 

 

 

 

 

 

 

ПО

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Общее

 

 

 

 

 

 

 

 

 

ППП

 

 

 

 

 

 

 

 

 

 

 

ПО

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ОС

 

 

 

САП

 

 

 

ППОС

 

 

 

КПТО

 

 

СД

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управление

 

 

 

Трансляторы

 

 

 

 

 

Проверочные

 

 

 

 

заданиями

 

 

 

 

 

 

 

тесты

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управление

 

 

 

Редакторы

 

 

 

 

 

Наладочные

 

 

 

 

задачами

 

 

 

 

 

 

 

тесты

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управление

 

 

 

Загрузчики

 

 

 

 

 

Диагностические

 

 

 

данными

 

 

 

 

 

 

 

тесты

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Системные Библиотекари обслуживаю-

щие

программы

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

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

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

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

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

133

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

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

СПО ПК комплектуется в зависимости от места и роли автоматизированного рабочего места (АРМ) пользователя. В ПО ПК обычно включают небольшое число программ (текстовый и табличный процессор, система управления базами данных и др.). Например, пакет MS Office объединяет все перечисленные продукты.

Общее ПО включает в свой состав:

операционную систему (ОС);

систему автоматизации программирования (САП);

пакеты программ, дополняющие возможности ОС (ППОС);

комплекс программ технического обслуживания (КПТО);

систему документации (СД).

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

САП объединяют программные модули, обеспечивающие этапы подготовки задач к решению.

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

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

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

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

 

Модули

Командные

 

 

Программы

системы,

 

Аппаратура

САП,

Ядро ОС

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

оболочки,

компьютера

ППП

 

Пользователь

среды

 

Рисунок 10.2 – Иерархия программных средств компьютеров

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

134

Однако на практике пользователи работают не напрямую с ОС, а через командные системы – пакеты программ, дополняющие возможности ОС (ППОС). Работа пользователя при этом заключается в выборе определенных рубрик меню. Механизм обращения к модулям ОС упрощается. Развитие и усложнение средств обработки, ОС и командных систем привело к появлению ОС MS Win.95/98/2к/XP/2к3 и др., обеспечивающих графический интерфейс с широчайшим спектром услуг.

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

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

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

Центральное место в структуре ПО занимает операционная система [6, 8, 9, 19, 23]. Программные компоненты ОС обеспечивают управление вычислениями и реализуют такие функции, как планирование и распределение ресурсов, управление вводом-выводом информации, управление данными. Объем ОС и число составляющих ее программ в значительной степени определяются типом и режимами работы компьютера, составом технических средств и т.д.

Применение ОС имеет следующие цели:

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

уменьшение интервала времени между моментами поступления заданий в компьютер и моментами получения результатов;

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

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

управление программами и данными в ходе вычислений;

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

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

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

135

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

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

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

[19].

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

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

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

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

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

136

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

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

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

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

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

В связи с постоянным совершенствованием ПК все больше усиливается роль интегрированных сетевых ОС типа Windows, Linux, NetWare и др.

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

10.3.Системы автоматизации программирования

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

др. Языки программирования служат средством записи текстов исходных программ, поэтому в состав программ ОПО они не входят [6, 9, 23].

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

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

137

выполнения. Для языков различного уровня эти характеристики взаимосвязаны. Чем выше уровень языка (рисунок 10.3), тем меньше трудоемкость программирования, но сложнее средства САП (трансляторы, средства отладки и др.), используемые для получения машинных программ, и ниже качество генерируемых программных продуктов.

Рисунок 10.3 – Классификация языков программирования

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

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

Basic, Pascal, Ада, Си и др.

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

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

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

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

138

процедурно-ориентированных языков высокого уровня (Pascal, Basic, Си) и машинно-ориентированных языков (Ассемблер).

Различают трансляторы двух типов: интерпретаторы и компиляторы.

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

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

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

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

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

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

10.4. Пакеты программ

Согласно рисунка 10.1 в ПО компьютеров имеются две группы пакетов программ: пакеты прикладных программ (ППП) и пакеты, дополняющие возможности ОС (ППОС). С развитием программного обеспечения компьютеров наметилась тенденция к слиянию их в единые интегрированные пакеты. Например, ОС Windows может подключать пакеты MS Office. Однако наряду с интегрированными пакетами, продолжают использовать и более эффективные специализированные ППП [6, 9, 23].

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

139

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]