Главная » Просмотр файлов » Густав Олссон, Джангуидо Пиани - Цифровые системы автоматизации и управления

Густав Олссон, Джангуидо Пиани - Цифровые системы автоматизации и управления (1087169), страница 112

Файл №1087169 Густав Олссон, Джангуидо Пиани - Цифровые системы автоматизации и управления (Книга - Цифровые системы автоматизации и управления) 112 страницаГустав Олссон, Джангуидо Пиани - Цифровые системы автоматизации и управления (1087169) страница 1122018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 112)

В многозадачных систеляах программные модули вначале тестируются отдельно Во время такого тестирования должно быть проверено, что каждая строка программы выполняется хотя бы один раз. Иными словами, если программа содержит команды ветвления типа "Ы..сЬеп..е!зе", то тестовые данные должны обеспечить выполнение обеих ветвей. На этой фазе тестирования обычно полезны отладчики. Они позволяют непосредственно просматривать и изменять регистры процессора и области памяти при исполнении машинного кода, Отладчик вставляет в машинный код программы точки останова, в которых можно проверить состояние регистров и переменных и сравнить их со значениями, требуемыми логикой процесса.

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

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

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

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

Дальнейшее обсуждение надежности програлчлс ного обеспечения приведено в разделе 12.3А. 1О.7. Языки программирования и операционные системы реального времени 10 7.1. Требования к языкам и операционным системам реального времени Программирование в реальном времени требует специальных средств, которые не сегда встречаются в обычных языках последовательного программирования. Язык кяи операционная система для программирования в реальном времени должны преясставлять следующие возможности: — описание параллельных процессов; — переключение процессов на основе динамических приоритетов, которые могут изменяться, в том числе и прикладными процессами; — синхронизация процессов; — обмен данными между процессами; — функции, связанные с часами и таймером, абсолютное и относительное время ожидания; — прямой доступ к внешнилч аппаратным портам; — обработка прерываний; — обработка исключений.

Немногие языки обеспечивают все эти возможности. Большинство имеет лишь часть из них, хотя для определенных приложений этого оказывается достаточно. Некогорые компании разработали специальные языки для поддержки своих собственных шцаратных средств. Эти языки не претендуют на универсальность и ориентированы скорее на конкретные ЭВМ и их интерфейсы. Обычно они базируются на сушествуюячих языках — ЕОКТКАЫ, ВАЗ1С вЂ” с расширениями, включающими функции реаль- кого времени, о чем свидетельствуют их названия типа "Ргосезз ВА51С" и "Кеа1-11ше гОКТВАХ".

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

Программист не должен сталкиваться с деталями мацкин . н" ого уровня, а работать только в терминах абстрактных структур и типов данных. Опыт показал нереалистичность такого подхода. универсальные, сильно типизи- Р ванпьче языки программирования гарантируют определенный уровень нэдежносРован тип "Рограммы, но в то же время ограничивают гибкость. Быстрое развитие технических с средств предъявляет новые требования, которые не могли быть предусмотрены в сУШе Уще гвуюпчих язь|ках, и многие рограммисть! чувствуют ограничения, используя яес амые современные языки программирования.

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

й Несуществуетнаи„ лучшего языка — для каждого приложеяи я и среды необходимо о подбирать свои с е с р яства и при этом учитывать квалификааботчиков. яисо и предпочтения разраб 456 457 Глава 10, Программирование систем реального в меьи !0 . 0 7 Языки программирования и операционные системы 10.7.2. Язык программирования АОА Первым полным языком программирования в реальном времени является Л!) В середине 1970-х годов Министерство обороны СШАдля сокращения расходов и р работку и сопровождение своих систем управления реального времени приняло ние ввести единый язык программирования в качестве альтернативы сотням исп~л павшихся тогда языков. В 1979 году министерство одобрило предложения, выдан„ французской компанией Нопеуч е!1 Вц!1.

Язык назван в честь Августы Ады Байрон фини Лавлейс (Ац8цьча Лг!а Вугоп, Соцпгезз о1Боче1асе, 1815 — 1852), которую мож„ считать первым программистом в истории — она писала программы для аналитическ „" машины (механического компьютера, который никогда не был построен), спроектир . ванной английским изобретателем Чарльзом Бэббиджем (СЬаг!ез ВаЬЬайе). Язык АОЛ является полной средой разработки программ с текстовым редакторои отладочными средствами, системой управлениями библиотеками и т, д Специфика. ции АОА закреплены американским стандартом А)з18!/МП.-ЗТО-1815А и включают средства контроля соответствия этому стандарту. Не допускаются диалекты языков для сертификации компилятор должен правильна выполнить все эталонные тесты Структура языка ЛОА похожа на структуру языка Разов!, но его возможности значительно шире, в особенности применительно к системам реального времени.

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

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

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

До ожидавшейся популярности, и сомнительно, что это когд — у а-ниб дь произойлет. 10.7.3. Языки С и С++ ств, кото Язык программирования С, несмотря ' у на ото тствие в нем многих срелс п о аммировавнж читают необходимыми для хорошего языка программиров ' рые теоретики считают н н . ее в емя Этот яз" пользуется ольшим успех . б . м успехом начиная с 1980-х годов по настоящее время. вности, в час стал популярным для всех пр, всех приложений, требую ших высокой эффективности, о ов использ.

м, реального времени. 2!ля обычных микропроцессоров, испо. емых в системах упр ах правления, имеются С-компиляторы и системы разработки м оизводителей. В промышленности существует явная тенленция к широкому прицро вен нению языка С и операционной системы ОЫ!Х, которая сама написана на С, по„льку приложения, написанные на С, машинно-независимы и требуют очень негхо. „ьших усилий для адаптации к работе в различной аппаратной среде. рол философией С является разбиение программ на функции. С вЂ” слаботипизировм вэый язык и позволяет программисту делать почти все вплоть до манипуляции с гистрами и битами. Такая свобода делает язык небезопасным, поскольку компилягор ве может проверить, являются ли подозрительные операции умышленными или „ет Небольшое количество заранее определенных функций и типов данных делает „рограммы легко переносимыми между разными системами. С поддерживает как хооюнй, структурированный, так и плохой стиль программирования, оставляя ответгтзенность за качество разработки на программисте.

Характеристики

Тип файла
DJVU-файл
Размер
5,19 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6553
Авторов
на СтудИзбе
299
Средний доход
с одного платного файла
Обучение Подробнее