ЖУРНАЛ «СТА» №1/2007

70 СТА 1/2007 ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ www.cta.ru В ОЗРАСТАЮЩАЯ СЛОЖНОСТЬ Совсем недавно большинство про- мышленных систем управления имело ограниченные требования к программ- ному обеспечению – как правило, оно содержало лишь несколько тысяч строк исходного кода. В настоящее время, од- нако, встраиваемая система управления может содержать в себе сотни тысяч или даже миллионы строк исходного кода и использовать большое количество взаи- модействующих сложным образом про- граммных компонентов, и это при усло- вии ограниченного объёма памяти и процессорного времени. Чтобы ускорить процесс разработки сложных систем, проект разделяется между многочисленными группами раз- работчиков, каждая из которых в ходе исполнения имеет свои собственные цели, схемы назначения приоритетов задач и подходы к оптимизации процес- са выполнения. При данном параллель- ном способе разработки в процессе ин- тегрирования подсистем, созданных ка- ждой группой разработчиков, неизмен- но возникают вопросы, связанные с производительностью, прежде всего изза того, что различные подсистемы начинают конкурировать между собой за системные ресурсы. Подсистемы, прекрасно работающие в изолирован- ном режиме, в этом случае начинают медленно реагировать на запросы, а по- рой и вообще дают сбои. Все усугубля- ется еще и тем, что многие из этих про- блем возникают только в процессе ин- теграции и проверочного тестирования, когда стоимость перепроектирования и перекодирования программного обес- печения очень высока. Диагностика и решение таких проблем чрезвычайно трудны. Разработчики должны умело манипулировать приори- тетами задач с возможным изменением поведения потоков в системе, а затем проводить повторное тестирование и уточнять собственные модификации. На этот процесс может уйти несколько рабо- чих недель, что приведёт к увеличению затрат и задержке выпуска продукта. Р АЗДЕЛЕНИЕ КАК МЕТОД РЕШЕ - НИЯ В последнее время понятие разделе- ния стало рассматриваться как способ управления сложностью системы и обеспечения более высокой системной доступности. Кратко это можно опреде- лить как подход, дающий возможность командам разработчиков делить про- граммное обеспечение на отдельные группы, где каждой группе назначается выделенная часть (или запас) систем- ных ресурсов. Как результат каждая составная часть обеспечивает стабильную, известную среду исполнения, которую команды разработчиков могут формировать и проверять индивидуально. Если про- граммный процесс в пределах выделен- ной области без сбоев выполняется в ходе тестирования, можно с полной уверенностью сказать, что и на стадии интеграции он покажет такую же про- изводительность. Если деление статического ресурса, такого как память, на разделы не вызы- вает особых трудностей, разделить вре- мя процессорной обработки гораздо сложней. Так как стоимость и энергопо- требление для встраиваемых систем из- начально имеют ограничения, процес- соры для таких систем имеют сравни- Снижение стоимости разработки промышленных систем управления посредством использования адаптивной декомпозиции системных ресурсов Роман Кипрушенков С ростом сложности и объёма программного кода вероятность проявления проблем нехватки процессорного времени в конечном продукте возрастает — усложняется этап отладки и интеграции разрабатываемой системы при финальной сборке, увеличиваются затраты по выявлению и устранению дефектов. Использование запатентованной технологии адаптивной декомпозиции позволяет обеспечить приложения гарантированным реальным временем процессорной обработки, нейтрализовать угрозы, связанные с захватом процессорных ресурсов вредоносным и сбойным программным обеспечением. Происходит сокращение издержек по устранению неполадок, вызванных дефицитом процессорных ресурсов, продукт становится более надёжным и защищённым, выход конечного продукта на рынок происходит быстрее.

RkJQdWJsaXNoZXIy MTQ4NjUy