ГОСТ Р МЭК 61508-7—2012
Я зы к програм м ированияУПБ1
УПБ2УПБЗУЛБ4
11 C++ (Руководящие указания по использованию объектно-R
ориентированных средств см. в приложении G.)
—NRNR
12 C++ с подмножеством и стандартом кодирования, а такжеHR
использование инструментов статического анализа (Руково
дящие указания по использованию объектно-ориентирован
ных средств см. в приложении G.)
HRHRHR
13 АссемблерR
R
—
—
14 Ассемблер с подмножеством и стандартом кодированияR
RRR
15 Многоступенчатые диаграммыR
RRR
16 Многоступенчатая диаграмма с определенным подмножеHR
ством языка
HRHRHR
17 Диаграмма функциональных блоковR
RRR
18 Диаграмма функциональных блоков с определенным подHR
множеством языка
HRHRHR
19 Структурированный текстR
RRR
20 Структурированный текст с определенным подмножеHR
ством языка
HRHRHR
21 Последовательная функциональная диаграммаR
RRR
22 Последовательная функциональная диаграмма с опредеHR
ленным подмножеством языка
HRHRHR
23 Список командR
—NRNR
24 Список команд с определенным подмножеством языкаHR
RRR
П р и м е ч а н и я
1 Пояснения к рекомендациям R. HR. NR см. в МЭК 61508-3. приложение А.
2 Системное программное обеспечение включает в себя операционную систему, драйверы, встроенные
функции и программные модули, являющиеся частью системы. Программные средства обычно обеспечиваются
системой безопасности при поставке. Подмножество языка следует выбирать очень внимательно с тем. чтобы
исключить сложные структуры, которые могут образоваться в результате ошибок реализации. Следует выпол
нять проверки для того, чтобы убедиться в правильном использовании подмножества языка программирования.
3 Прикладная программа представляет собой программу, разработанную для конкретного безопасного
применения. Во многих случаях такая программа разрабатывается конечным пользователем либо подрядчиком,
ориентированным на разработку прикладных программ. В тех случаях, когда ряд языков программирования под
держивает одни и те же рекомендации, разработчику следует выбрать тот. который повсеместно используется
персоналом в конкретной промышленности или отрасли. Подмножество языка программирования следует выби
рать с особым вниманием, чтобы исключить сложные структуры, которые могут привести к ошибкам реализации.
4 Если конкретный язык программирования не представлен в настоящей таблице, то это не означает, что он
исключен. Этот конкретный язык программирования должен соответствовать требованиям настоящего стандарта.
5 Существует ряд расширений языка Паскаль, включая свободно распространяемый Паскаль. Ссылки
на Паскаль включают эти расширения.
6 Java имеет сборщик мусора времени выполнения. Подмножество Java может не иметь сборщика мусора.
Некоторые реализации Java обеспечивают прогрессивную сборку мусора, которая восстанавливает свободную
память в процессе выполнения программы и предотвращает выполнение остановки, когда исчерпана доступная
память. Приложения жесткого реального времени не должны использовать любые средства сборки мусора.
7 Если применение языка Java требует использования интерпретатора времени выполнения для про
межуточного кода Java, то интерпретатор должен рассматриваться, как часть программного обеспечения,
связанного с безопасностью, и удовлетворять требованиям МЭК 61508-3.
8 О пунктах 15—24 см. [7J.
56