Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Последовательный и параллельный интерфейсы ввода-вывода
В состав микропроцессорного комплекта входит большая интегральная схема УСАПП (универсальный синхронно-асинхронный приемопередатчик) или UART (Universal Asynchronous Receiver Transmitter), предназначенная для реализации интерфейса типа RS-232 (V24). УСАПП является программируемой микросхемой, преобразующей параллельный код, получаемый от шины данных системной магистрали, в последовательный, для передачи по двухпроводной линии связи. В качестве УСАПП используются БИС i8250, i16450, i16550А и др. Функции, выполняемые этими микросхемами, одинаковы. Различия заключаются в обеспечиваемом ими быстродействии. Типовая структурная схема УСАПП приведена на рис.13.5. От микропроцессора передаваемый байт данных поступает по шинам данных (ШД) в буфер данных УСАПП на входной регистр (РгВх), затем через внутреннюю шину передается в регистр передатчика (РгПд). В момент передачи содержимое РгПд серией сдвигов выдвигается в канал с преобразованием в последовательный код. В синхронном режиме передаваемые данные сопровождаются управляющими сигналами, называемыми синхронизирующими словами (СС). Для хранения СС используются специальный регистр РгСС на входе УСАПП и регистр состояния (РгС) - на выходе. Из РгС информация в виде байта состояния передается в микропроцессор по его запросу. Устройство управления (УУ) содержит регистр режима (РгР), предназначенный для хранения передаваемой из микропроцессора информации о режиме работы, и регистр команд (РгК) для хранения принимаемой из микропроцессора команды на обмен данными. Передаваемый последовательный код перед выходом из передатчика УСАПП в линию связи комплектуется управляющими сигналами, необходимыми для настройки приемника. После такого укомплектования образуется кодовая посылка следующей структуры (рис.13.6). Рис. 13.6. Кодовая посылка УСАПП Старт-бит всегда имеет единичное значение, отличное от состояния "молчащего" канала. Вслед за старт-битом расположены информационные биты, принятые от шины данных системной магистрали. В зависимости от настройки УСАПП в одной посылке может содержаться от 5 до 8 информационных битов. Значение этих битов в каждой посылке непредсказуемо. В процессе передачи они могут быть искажены помехами. Поэтому в посылке должны содержаться не только биты, говорящие о начале и конце посылки, но и биты для контроля правильности передачи.
В качестве контрольного выступает бит паритета, следующий сразу вслед за информационными битами. С помощью бита паритета осуществляется контроль на четность или нечетность. При контроле на четность сначала подсчитывается количество единиц в информационной части посылки, затем определяется, четное оно или нет. Если полученное число нечетное, бит паритета устанавливается в единицу, в этом случае в правильно переданной посылке всегда будет содержаться четное количество единиц (т.е. единиц, содержащихся в информационных разрядах вместе с битом паритета). При контроле на нечетность бит паритета устанавливается так, чтобы общее количество единиц было всегда нечетным. При программировании УСАПП программист выбирает: использовать режим контроля или отказаться от него. Он может отказаться от контроля, и бит паритета всегда будет нулевым; может включить контроль на четность или контроль на нечетность. Выбор, что необходимо - контроль на четность или на нечетность, осуществляется в зависимости от характера возможных помех. Если воздействие возможных помех будет проявляться преимущественно в появлении лишних единиц, необходим контроль на четность. Если же воздействие помех будет проявляться преимущественно в исчезновении единиц, то необходим контроль на нечетность (чтобы отличать передаваемый О от полной потери информации из-за помех). После бита паритета в кодовой посылке следуют стоп-биты. Для стоп-битов в кодовой посылке отводятся два двоичных знакоместа. Если выбран режим " 1 стоп-бит", то после бита паритета всегда (в каждой посылке) будет следовать комбинация 01. Если выбран режим "1,5 стоп-бита", то после бита паритета всегда будет следовать комбинация 10. Если же выбирается режим "2 стоп-бита", то каждая посылка будет завершаться цифрами 11. В УСАПП-приемнике поступившая от канала связи кодовая комбинация проверяется в соответствии с установленным заранее режимом контроля (на четность или нечетность), освобождается от управляющих сигналов и передается в шину данных системной магистрали параллельным кодом.
Настраиваться УСАПП-приемник и УСАПП-передатчик, работающие в паре, должны согласованно. Программирование УСАПП может вестись на физическом или логическом уровне. Программирование на физическом уровне производится на языках низкого уровня или в машинных кодах. Логический уровень программирования обеспечивается алгоритмическими языками высокого уровня, коммуникационными программами, некоторыми пакетами прикладных программ. Параллельный интерфейс представлен в микропроцессорном комплекте микросхемой типа i8255- контроллером параллельного интерфейса или программируемым интерфейсным адаптером. Микросхема подключается к системной магистрали ЭВМ (соответственно - к шинам данных, адреса и управления) и имеет три независимых канала для подключения внешних устройств. Внутренний блок управления позволяет программировать каждый канал на ввод или вывод информации по 8 линиям, т.е. 8 бит параллельно.
Контрольные вопросы Что означает термин "автономность внешних устройств"? Какие виды интерфейсов используются в электронных вычислительных машинах? Какие способ ы управления обменом нашли применение в интерфейсах? Для чего необходим прямой доступ к памяти? По каким параметрам можно определить, совместимы ли интерфейсы системной шины? Какие черты характеризуют различные виды программ, используемых для управления ЭВМ? Каким образом можно создать благоприятную для пользователя операционную обстановку? Чем различаются протоколы обмена информацией DTR/DSR и XON/ XOFF? Какую структуру имеет кодовая посылка, используемая в RS-232?
Лекция №14. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ 14.1. Структура программного обеспечения ЭВМ В настоящее время отсутствует единая классификация состава программного обеспечения. Литературные источники по-разному трактуют структуры программных средств ЭВМ различных классов. Наиболее сложное ПО по структуре и составу имеют большие универсальные ЭВМ широкого назначения, так как они призваны обеспечивать пользователей самыми разнообразными сервисными услугами независимо от характера их задач. Программное обеспечение ЭВМ разделяют на общее, или системное (general Software), и специальное, или прикладное (application or special Software) (рис.14.1). Рис. 14.1. Структура программного обеспечения Общее ПО объединяет программные компоненты, обеспечивающие многоцелевое применение ЭВМ и мало зависящие от специфики вычислительных работ пользователей. Сюда входят программы, организующие вычислительный процесс в различных режимах работы машин, программы контроля работоспособности ЭВМ, диагностики и локализации неисправностей, программы контроля заданий пользователей, их проверки, отладки и т.д. Общее ПО обычно поставляется потребителям комплектно с ЭВМ. Часть этого ПО может быть реализована в составе самого компьютера. Например, в ПЭВМ часть программ ОС и часть контролирующих тестов записана в ПЗУ этих машин. Специальное ПО (СПО) содержит пакеты прикладных программ пользователей (ППП), обеспечивающие специфическое применение ЭВМ и вычислительной системы (ВС).
Прикладной программой называется программный продукт, предназначенный для решения конкретной задачи пользователя. Обычно прикладные программы объединяются в пакеты, что является необходимым атрибутом автоматизации труда каждого специалиста-прикладника. Комплексный характер автоматизации производственных процессов предопределяет многофункциональную обработку данных и объединение отдельных практических задач в ППП. Специализация пакета определяется характером решаемых задач (пакеты для разработки экономических документов, рекламных роликов, планирования и др.) или необходимостью управления специальной техникой (управление сложными технологическими процессами, управление бортовыми системами кораблей, самолетов и т.п.). Такие специальные пакеты программ могут использовать отдельные подразделения, службы, отделы учреждений, предприятий, фирм для разработки различных планов, проектов, документов, исследований. В некоторых случаях СПО может иметь очень сложную структуру, включающую библиотеки, каталоги, программы-диспетчеры и другие обслуживающие компоненты. Программы СПО разрабатываются с учетом интересов определенной группы пользователей, иногда даже по их заказам и при их непосредственном участии. СПО ПЭВМ комплектуется в зависимости от места и роли автоматизированного рабочего места (АРМ) работника, использующего в своей деятельности компьютер. В ПО ПЭВМ обычно включают небольшое число пакетов программ (табличный процессор, текстовый редактор, систему управления базами данных и др.). В последнее время наметилась тенденция к комплексированию и слиянию их в интегрированные программные продукты. Например, пакет MS Office фирмы Microsoft объединяет все перечисленные продукты. Общее ПО включает в свой состав операционную систему (ОС), средства автоматизации программирования (САП), комплекс программ технического обслуживания (КПТО), пакеты программ, дополняющие возможности ОС (ППос), и систему документации (СД). Операционная система служит для управления вычислительным процессом путем обеспечения его необходимыми ресурсами. Средства автоматизации программирования объединяют программные модули, обеспечивающие этапы подготовки задач к решению. Модули КПТО предназначены для проверки работоспособности вычислительного комплекса. Важной частью ПО является система документации, хотя она и не является программным продуктом. СД предназначается для изучения программных средств, она определяет порядок их использования, устанавливает требования и правила разработки новых программных компонентов и особенности их включения в состав ОПО или СПО.
По мере развития ЭВМ и ВС программное обеспечение постоянно усложняется по своей структуре и составу программных модулей. В настоящее время затраты на разработку и приобретение программных продуктов в несколько раз превышают стоимость технических средств (Hardware). Наиболее динамичное развитие оно получило в 80-85-е годы, когда были выявлены закономерности управления вычислительными процессами в однопроцессорных (одномашинных) системах. Программное обеспечение современных ЭВМ и ВС строится по иерархическому модульному принципу. Это обеспечивает возможность адаптации ЭВМ и ВС к конкретным условиям применения, открытость системы для расширения состава предоставляемых услуг, способность систем к совершенствованию, наращиванию мощности и т.д. Программные модули ПО, относящиеся к различным подсистемам, представляют для пользователя своеобразную иерархию программных компонентов, используемую им при решении своих задач (рис. 14.2). Нижний уровень образуют программы ОС, которые играют роль посредника между техническими средствами системы и пользователем. Однако прямое использование команд ОС требует от пользователя определенных знаний и специальной компьютерной подготовки, сосредоточенности, точности и внимания. Этот вид работ отличается трудоемкостью и чреват появлением ошибок в работе оператора. Поэтому на практике пользователи, как правило, работают не напрямую с ОС, а через командные системы - пакеты программ, дополняющие возможности ОС (ППос). Ярким примером подобных систем могут служить пакеты Norton Commander, Volkov Commander, DOS Navigator и другие, завоевавшие заслуженную популярность у пользователей. С помощью этих систем трудоемкость работы с компьютером значительно сокращается. Работа пользователя при этом заключается в выборе определенных рубрик меню. Механизм обращения к модулям ОС упрощается. Развитие и усложнение средств обработки ОС и командных систем привело к появлению операционных сред (например, Microsoft Window 3-х, Windows 95), обеспечивающих графический интерфейс с широчайшим спектром услуг. С помощью ОС или операционных сред пользователь может активизировать любую нужную ему программу. В настоящее время на любой вид деятельности существуют, разрабатываются и совершенствуются ППП, позволяющие пользователям, даже не имеющим хорошей компьютерной подготовки, эффективно решать специфические задачи обработки информации (подготовка справок, писем, разработка документов, графическое представление данных и т.д.). Квалифицированные пользователи, разрабатывающие собственные программные продукты, используют компоненты САП. Программы КПТО непосредственного участия в вычислениях не принижают, они только обеспечивают их. Перед началом вычислений их задачей является проверка работоспособности аппаратуры и параметров сопряжения перечисленных уровней ПО.
14.2. Операционные системы Центральное место в структуре ПО занимает операционная система. Она представляет собой "систему программ, предназначенную для обеспечения определенного уровня эффективности цифровой вычислительной системы за счет автоматизированного управления ее работой и предоставляемого пользователям набора услуг" (ГОСТ 15971-84). Программные компоненты ОС обеспечивают управление вычислениями и реализуют такие функции, как планирование к распределение ресурсов, управление вводом-выводом информации, управление данными. Объем ОС и число составляющих ее программ в значительной степени определяются типом используемых ЭВМ, сложностью режимов работы ЭВМ и ВС, составом технических средств и т.д. Применение ОС имеет следующие цели: • увеличение пропускной способности ЭВМ, т.е. увеличение общего объема работы, выполняемой ЭВМ в единицу времени; • уменьшение времени реакции системы, т.е. сокращение интервала времени между моментами поступления заданий в ЭВМ и моментами получения результатов; • контроль работоспособности технических и программных средств; • помощь абонентам и операторам при использовании ими технических и программных средств, облегчение их работы; • управление программами и данными в ходе вычислений; • обеспечение адаптации ЭВМ, ее структурной гибкости, заключающейся в способности изменяться, пополняться новыми техническими и программными средствами. Любая ОС имеет средства приспособления к классам решаемых пользователями задач и к конфигурации средств, включаемых в ВС. Назначение состава услуг, которыми могут пользоваться абоненты, осуществляется различными методами. В больших ЭВМ формирование конкретной конфигурации ОС осуществляется на нескольких уровнях. Предварительно этот состав определяется при генерации ОС. "Генерация системы - это процесс выделения отдельных частей операционной системы и построения частных операционных систем, отвечающих требованиям системы обработки данных" (стандарт ISO2382/10-79). Из полного набора программных модулей ОС (дистрибутива) формируется специальный набор этих средств, в наибольшей степени отвечающий запросам пользователей. Коррекция же состава используемых услуг может быть выполнена непосредственно перед решением задач операторами вычислительного центра или самими пользователями. Оперативное обращение к средствам ОС возможно и из программ пользователей, путем включения в них специальных директив. Применительно к ПЭВМ типа IBM PC, у которых пользователь является одновременно и оператором, этот процесс видоизменен. Для каждой ПЭВМ создается так называемый системный диск с соответствующим набором программ дисковой операционной системы (ДОС). При включении компьютера программой Bios Setup Program (программа начальных установок) обеспечивается запись основных параметров системы, которые сохраняются в CMOS-памяти компьютера. Окончательная настройка ДОС производится файлами autoexec.bat и config.sys, а также выполнением отдельных команд, набираемых в командной строке ДОС. Для каждого типа ЭВМ возможно использование нескольких типов ОС. Все они имеют несколько версий. Для ЮМ PC распространение получили MS DOS фирмы Microsoft, OS/2Warp и DOS фирмы ЮМ, DR DOS фирмы Digital Research, DOS фирмы Novell. Отличия ОС определяются составом и детализацией системных функций. Более распространенной является MS DOS, она используется в большинстве компьютеров. Система DR DOS имеет очень развитые средства защиты информации и разграничение доступа, что предопределяет ее использование в системах с закрытием обрабатываемой информации. OS/2Warp позволяет более полно использовать возможности самых мощных микропроцессоров при организации вычислительного процесса. Novell DOS ориентирована на работу ЭВМ в сети. Для уяснения процедур планирования вычислениями конкретизируем понятие вычислительного процесса. Вычислительный процесс в системе представляется в виде последовательности, как правило, ветвящейся, простых процессов - одноразовых работ, выполняемых ресурсами ВС. Ресурсы ВС - это средства, необходимые для вычислений. К ресурсам ВС в первую очередь относят машинное время ЭВМ (процессоров), объемы внешней и особенно оперативной памяти, любые внешние устройства, подключаемые к ВС, вплоть до каналов связи. Ресурсами являются и программные средства как общего, так и специального ПО и даже отдельные информационные массивы, например базы данных, библиотеки и т.д. Функции управления ресурсами осуществляет операционная система путем построения специальных управляющих таблиц, отражающих наличие и состояние ресурсов. Связь процессов в цепочки осуществляется по событиям, где событие - это изменение состояния ресурса, изменение его характеристик. Именно по событиям ОС включается в работу и адекватно реагирует на сложившуюся ситуацию. Управление вычислительным процессом практически не может быть оптимизировано, если не считать "заложенной стратегии" в саму ОС, так как для этого просто отсутствуют необходимые данные. Основу любой ОС составляет управляющая программа, основными функциями которой являются: управление заданиями, управление задачами - управление ходом выполнения отдельных программ, и управление данными. Задание - это требование пользователя на выполнение некоторого объема вычислительных работ. Процедуры управления заданиями обеспечивают предварительное планирование работы ЭВМ и оперативную связь пользователя и оператора с машиной во время работы. Планирование работы включает: ввод пакетов или одиночных заданий, формирование очередей заданий в соответствии с их приоритетами, активизацию (запуск) и завершение заданий. Каждое задание реализуется как определенная последовательность отдельных программ - задач. Задачи образуют отдельные программы вместе с обрабатываемыми ими данными. Например, типовое задание пользователя включает этапы трансляции, редактирования и собственно выполнения сформированной машинной программы. На каждом из этих этапов выполняется некоторая программа (задача), обрабатывающая определенные данные. Комплекс программ управления задачами обеспечивает автоматическое выполнение последовательности программ каждого задания пользователя. Управление задачами требует распределения и назначения ресурсов (управления временем работы процессора, распределения оперативной памяти для программ пользователей и программ ПО, синхронизации выполнения задач и организации связей между ними, управления очередностью задач, внешними устройствами, защиты задач от взаимных помех). Ведущей программой управления задачами является управляющая программа-диспетчер: супервизор, базовый модуль ДОС или др. Часто используемые модули образуют ядро ОС, которое постоянно находится в оперативной памяти и быстро реагирует на изменяющиеся условия функционирования. Примером такой программы может служить командный процессор command.com для ПЭВМ типа ЮМ PC. Остальные программы ОС вызываются из ВЗУ в оперативную память ЭВМ по мере их надобности в вычислительном процессе. Набор программ управления данными обеспечивает процессы организации, идентификации, размещения в ОП и на ВЗУ, хранения, построения библиотек и выборки всех данных, которые могут обрабатываться в ЭВМ. В ПЭВМ программы управления заданиями представлены достаточно слабо, так как они изначально создавались как однопользовательские и однозадачные ЭВМ. С появлением ОС типа Windows, ориентированных на многозадачные и многопользовательские режимы, появились и эти процедуры. Программы управления задачами и данными представлены достаточно полно. Так, ядро MS DOS включает следующие системы: файловую, управления памятью, управления программами, связи с драйверами устройств для управления серийной аппаратурой, обработки ошибок, службы времени, общения с оператором. Структурно ОС IBM PC состоит из следующих элементов, представленных на рис.14.3. Кроме программных компонентов, указанных на рисунке, к ДОС относят еще вспомогательные файлы autoexec.bat и config.sys. Они предназначаются для настройки на конкретные режимы работы. Рис. 14.3. Структура ДОС ПЭВМ Программа начальной загрузки (Boot Record) находится в первом секторе на нулевой дорожке системного диска. Она занимает объем 512 байт. После включения компьютера и его проверки постоянный модуль BIOS формирует вызов данной программы и ее запуск. Назначением программы начальной загрузки является вызов модуля расширения IO.sys и базового модуля ДОС MS DOS.sys. Базовая система ввода-вывода (BIOS) является надстройкой аппаратурной части компьютера. Постоянный модуль BIOS отвечает за тестирование компьютера после его включения, вызов программы начальной загрузки. Модули BIOS обрабатывают прерывания вычислительного процесса нижнего уровня и обслуживают стандартную периферию: дисплей, клавиатуру, принтер, дисководы. Модуль расширения BIOS обеспечивает подключение к компьютеру дополнительных периферийных устройств, изменение некоторых параметров ДОС, замещение некоторых стандартных функций, загрузку командного процессора и его запуск. Базовый модуль ДОС (MS DOS.sys или IBM DOS.com) отвечает за работу файловой системы, обслуживает прерывания верхнего уровня (32...63), обеспечивает информационное взаимодействие с внешними устройствами. Командный процессор (command.com) предназначен для выполнения команд, загружаемых в командную строку ДОС. Все команды ДОС делят на внутренние и внешние. Внутренние команды содержатся внутри самого файла command.com. Внешние команды - это требования запуска каких-либо программ, находящихся на дисках. Кроме этого, командный процессор выполняет команды файла autoexec.bat, если он находится на системном диске. Файл autoexec.bat содержит список команд, выполнение которых позволяет развернуть в оперативной памяти компьютера некоторый набор вспомогательных программ или пакетов для обеспечения последующей работы пользователя. Файл config.sys отражает специфические особенности формирования конфигурации компьютера, т.е. состава его технических и программных средств. В связи с постоянным совершенствованием ПЭВМ и улучшением их характеристик (быстродействия и емкости памяти) все большее число ЭВМ используют более сложные интегрированные ОС типа MS Windows 95, OS/2 Warp и им подобные. 14.3. Системы автоматизации программирования К системам (или средствам) автоматизации программирования (САП) относят языки программирования, языковые трансляторы, редакторы, средства отладки и другие вспомогательные программы. Языки программирования служат средством передачи информации, средством записи текстов исходных программ. Поэтому в состав программ общего ПО они не входят. Учитывая важность языковых средств, рассмотрим их состав более подробно. В настоящее время известно несколько сотен языков программирования, которые используют пользователи при разработке своих заданий. Появление новых типов ЭВМ, например ПЭВМ, и новых областей их применения способствует появлению следующих поколений языковых средств, в большей степени отвечающих требованиям потребителей. Вместе с тем число интенсивно применяемых языков программирования относительно невелико. Для каждого класса ЭВМ всегда существует несколько таких языков, ориентированных на определенные виды обработки информации, на уровень подготовки пользователей в области программирования. При выборе языка программирования пользователь должен учитывать, что описание алгоритма решаемой задачи можно выполнить на любом алгоритмическом языке в силу его универсальности. Однако изобразительные средства языков очень сильно отличаются, и задача выбора заключается в том, чтобы выбранный язык наилучшим образом соответствовал требуемым процедурам обработки данных в задании пользователя. Различают три уровня пользователей, работающих с языковыми средствами: пользователи-прикладники, системные программисты и инженерно-технический персонал, обеспечивающий техническое обслуживание ЭВМ. Каждая категория пользователей использует определенный набор языков. Важнейшими характеристиками языка являются трудоемкость программирования и качество получаемого программного продукта. Качество программ определяется длиной программ (количеством машинных команд или емкостью памяти, необходимой для хранения программ), а также временем выполнения этих программ. Для языков различного уровня эти характеристики взаимосвязаны. Чем выше уровень языка (рис.14.4), тем меньше трудоемкость программирования, но тем сложнее средства САП (трансляторы, средства отладки и др.), привлекаемые для получения машинных программ, тем ниже качество генерируемых программных продуктов.
Машинные языки современных ЭВМ практически не используются для программирования даже программистами-профессионалами из-за чрезмерной трудоемкости процесса разработки программ. В редких случаях их используют инженерно-технические работники вычислительных центров для проверок работы устройств и блоков ЭВМ, для выяснения нестандартных, нештатных ситуаций, когда другими средствами не удается выявить причины их появления. Применение машинных языков требует знания специфики представления и преобразования информации в ЭВМ. Особое место имеют машинно-ориентированные языки (язык Ассемблер, автокоды, языки символического кодирования и др.). Несмотря на высокую трудоемкость, ими часто пользуются профессиональные системные программисты, например при разработке программ общего или специального ПО, особенно в тех случаях, когда эти программы должны быть максимально компактными и быстродействующими. Пользователям с недостаточной программистской подготовкой эти языки практически недоступны. Из процедурно-ориентированных языков широко известны языки Фортран, Алгол, Кобол, Basic, Pascal, Ада, Си и др. Спектр языков этой группы очень широк, и среди них существует определенная иерархия. Считается, что язык Basic предназначается для начинающих программистов, язык Pascal - язык для студентов, это язык "правильного", классического программирования, язык СИ - язык квалифицированных программистов и т.д. Существуют определенные соглашения в использовании языков программирования. Так, при создании программ для собственных работ пользователь может использовать любой язык, даже Basic. При разработке ПО для одного заказчика корректно использовать язык Pascal, при разработке программных средств для многих потребителей целесообразно использование языков Си и Ассемблер. С появлением ПЭВМ наиболее распространенными языками являются Basic и Pascal. Первоначально они разрабатывались для целей обучения. Их применение обеспечивает быстрый и удобный перенос программ, написанных на этих языках, с одной ПЭВМ на другую. Наиболее простым языком является Basic. Трансляторы для этого языка имеются практически на всех ПЭВМ. Язык отличает простота и наличие средств интерактивной работы, что обеспечило ему популярность среди непрофессиональных программистов. Однако для построения сложных программ он в силу ограниченных возможностей (структурирование программ и данных, идентификация переменных и т.д.) подходит плохо. Современный язык высокого уровня Pascal получил широкое распространение в силу ряда достоинств: простоты, ясности, сравнительно узкого набора возможных синтаксических конструкций наряду с семантическим их богатством. Общепризнано, что он является наилучшим средством для обмена программами между различными типами ПЭВМ. На основе разработки языка Pascal предложен ряд новых языков, например язык Модула-2, в котором особое внимание уделяется построению программы как набора независимых модулей. На базе языка Pascal создан достаточно мощный язык Ада, который задумывался как универсальный и наиболее перспективный язык программирования. К нему было приковано внимание разработчиков всех новых типов ЭВМ. Однако широкого распространения этот язык до сих пор не получил. Для разработки коммерческих программ больше используется язык Си, который удачно сочетает в себе средства языка высокого уровня и языка Ассемблер, что позволяет разрабатывать компактные, быстродействующие, высокоэффективные программные продукты. Все описанные выше языки программирования используют так называемые пошаговые описания алгоритмов. Именно в этом и заключается источник большой трудоемкости подготовки задач к решению. Несомненно, что для машин будущих поколений будут предложены более эффективные средства программирования. Так, например, все больше внимания уделяется разработке проблемно-ориентированных языков программирования (Симула, GPSS и др.). В этих языках имеется возможность описывать специфические алгоритмы обработки информации более крупными конструкциями. Это делает программы пользователей более наглядными, так как каждая используемая конструкция соответствует вполне определенному объекту, исследуемому пользователем. Другой интересной тенденцией является появление непроцедурных описательных языков. Конструкции этих языков констатируют, какой результат желателен пользователю, не указывая, каким образом это сделать. Примером такого языка служит язык ПРОЛОГ (ПРОграммирование ЛОГики), который широко используется специалистами в области искусственного интеллекта. Конструкции языка соответствуют не математическим формулам, а определяют отношения между объектами и величинами. Язык состоит только из описаний и не имеет как таковых команд-инструкций. В заключение необходимо отметить, что в машинах будущих поколений будут использоваться языки программирования, имеющие средства распараллеливания вычислительных работ для многомашинных и многопроцессорных вычислительных систем. Проблемы построения таких языков еще полностью не разрешены и находятся в стадии исследования. В состав САП включаются также языковые трансляторы для всех языков, которые используют пользователи при разработке своих программ. В Зависимости от специфики вычислительного центра и контингента пользователей их состав формируется эмпирически. Обычно же он включает трансляторы процедурно-ориентированных языков высокого уровня (Pascal, Basic, Си) и машинно-ориентированных языков (Ассемблер). Различают трансляторы двух типов: интерпретаторы и компиляторы. Трансляторы-интерпретаторы предназначаются для последовательного пооператорного преобразования каждого предложения исходного Модуля программы в блок машинных команд с одновременным их выполнением. Машинная программа в полном объеме при этом не создается, решение задач пользователей происходит замедленными темпами. Этот вид трансляции рекомендуется использовать при отладке новых программных продуктов. Трансляторы-компиляторы, напротив, предназначаются для формирования полного загрузочного модуля по исходным программам пользователя. Это позволяет отделить полученный программный продукт от среды его разработки и в последующем использовать его автономно. Из системных обслуживающих программ, широко используемых при подготовке вычислений, следует выделить редактор, загрузчик, библиотекарь, средства отладки и другие вспомогательные программы. Назначение программ вытекает из их названия. Программы пользователей после обработки их транслятором (трансляторами) представляются в виде набора программных блоков, имеющих промежуточный формат, общий для всех трансляторов. Специфика исходных языков программирования при этом теряется. Объединение программных блоков в единую программу выполняет редактор. В зависимости от того, в какой стадии подготовки к решению находятся программы абонентов, они могут размещаться в различных библиотеках. Управляет размещением программ, последующей идентификацией и выборкой библиотекарь. Вызов готовых к решению программ в оперативную память, активизацию их с учетом их места размещения выполняет загрузчик. Средства отладки обеспечивают проверку заданий пользователей, поиск в них различного рода ошибок, вывод на печать запрашиваемой отладочной информации, распечатку содержимого зон оперативной памяти, выдачу различных управляющих блоков и таблиц и т.п. Вспомогательные программы (утилиты) служат для перемещения информации с одного носителя на другой, разметки накопителей, редактирования информации в наборах данных, сбора информации об ошибках. 14.4. Пакеты программ Согласно рис.14.1 в ПО ЭВМ имеются две группы пакетов программ: пакеты прикладных программ (ППП) и пакеты, дополняющие возможности ОС (ППос). С развитием программного обеспечения ЭВМ наметилась тенденция к слиянию их в единые интегрированные пакеты. Например, операционная среда Windows может подключать и пакеты MS Office, объединяющие программы для работы экономиста-делопроизводителя. Однако не всегда централизованные средства обработки удовлетворяют всем требованиям пользователей, поэтому многие ЭВМ, наряду с интегрированными пакетами, продолжают использовать и более эффективные специализированные ППП. ППП - это комплекс программ, предназначенных для решения определенного класса задач пользователей. Сначала к ППП относили только готовые программы, которые регулярно использовал пользователь. Однако каждая рабочая программа постоянно совершенствуется, дополняется, модифицируется. Поэтому все чаще к ППП относят наряду с комплексом готовых программ и программную среду, оболочку, в которой создаются пользовательские программы. Программы вместе со средой значительно облегчают процессы подготовки и решения задач и во многих случаях не требуют от пользователя знаний специфических языков и процедур программирования.
|
||||||||||||||||||
Последнее изменение этой страницы: 2016-04-07; просмотров: 672; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.15.1 (0.083 с.) |