Перейти к содержанию
    

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

Тут логика вас подводит.

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

Скажем в промышленности обычный софт можете писать на чем угодно,

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Почитайте про тот же MISRA C и вспомните, что сейчас ПО на МК управляет в том числе и тормозами в автомобилях, причем зачастую немаленьких. Поэтому ответ на Ваш вопрос прост: сложность и подходы к разработке и тестированию зависят от критичности сбоя. Просто так никто не будет писать кучу юнит-тестов и гонять программы через разные анализаторы, не будет проводить множество дорогих испытаний, не будет исследовать влияние аппаратных отказов на работу ПО и т.п.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Скажем в промышленности обычный софт можете писать на чем угодно,

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

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

 

Просто так никто не будет писать кучу юнит-тестов и гонять программы через разные анализаторы, не будет проводить множество дорогих испытаний, не будет исследовать влияние аппаратных отказов на работу ПО и т.п.
Да, согласен, просто так ни кто этого делать не будет. Но если вы пишете ПО - вы обязаны это сделать. Для любого ПО. Эти тесты и испытания не такие уж и дорогостоящие. Если это зарядной устройство для аккумулятора - то какие там могут быть дорогие испытания? Если пойдет устройство в массы и софт начнет глючить - это гибель производителю. Если это система посадки - тут тесты не дороже... тут само устройство больше, соответственно и тестов больше, включая облёты. И ПО пишется, что для бытовухи, что для систем жизнеобеспечения одинакового, с применением одинаковых IDE, компиляторов, библиотек.... Если кто-то считает что иначе - я вас разочарую.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И ПО пишется, что для бытовухи, что для систем жизнеобеспечения одинакового, с применением одинаковых IDE, компиляторов, библиотек.... Если кто-то считает что иначе - я вас разочарую.

 

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

 

- Был высказан тезис, что HAL, SPL, Cube, Linux это все для мигания лампочкой, в сложных приложениях надо писать все самому, потому что не известно, чего там индусы "накодили". Далее, мною и еще рядом участников был задан вопрос: "а с чего вы взяли, что ваш быдло код, лучше индусского в перечисленных выше фреймворках? Вы его как-то сертифицируете или просто "зуб даете"?";

 

- Судя по написанному в дальнейшем в этой ветке, никто ничего не сертифицируют, а просто уверен, что он пишет код лучше индусов из СТ;

 

- В добавок ко всему, у меня возник уточняющий вопрос, а почему в домашних/офисных роутерах чаще всего крутится Линуксе, а на Боинг 737 линукс можно встретить разве что в развлекательной системе для пассажиров? Решать навигационные задачи и управлять элеронами с тягой куда как проще какой-нибудь rasberry pi было )). Я предполагаю, что для важных приложений, нужна сертификация, принятая в соответствующей отрасли. Написав код в соответствии со стандартом, легче потом будет его сертифицировать, линукс никогда не подразумевал какой-либо сертификации, поэтому его и не используют в важных приложениях, и это никак не связано со сложностью проекта (лампочкой там мигают или двумя).

 

 

В одних проектах достаточно с представителем заказчика проверить, работает ли устройство или нет, не зависает ли со временем или под влиянием очевидных факторов, а в других, надо доказывать надежность, проходя соответствующую сертификацию. Разговор о ВЕЛИКОЙ надежности своего кода, всех, кто его никак не сертифицирует это просто шум, сказка детям на ночь. Поэтому там, где поставленной задачей заранее, никак не ограничивается использование HAL, SPL, Cube, Linux (сертификация, или ограничения по производительности/быстродействию, или потреблению) - их вполне можно использовать.

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

И ПО пишется, что для бытовухи, что для систем жизнеобеспечения одинакового, с применением одинаковых IDE, компиляторов, библиотек.... Если кто-то считает что иначе - я вас разочарую.

К чему этот пафосный "разрыв шаблонов"?

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

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

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

 

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

А американцы на МКС уже годами держат глючного робота.

Упоминание космоса - это нынче не о чем.

 

Поэтому там, где поставленной задачей заранее, никак не ограничивается использование HAL, SPL, Cube, Linux (сертификация, или ограничения по производительности/быстродействию, или потреблению) - их вполне можно использовать.

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

 

А насчет надежности и безглючности согласен.

Не стоит приписывать HAL-у какую-то особенную глючность. Его все-таки солидная толпа проверяет.

HAL просто неэффективен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

А насчет надежности и безглючности согласен.

Не стоит приписывать HAL-у какую-то особенную глючность. Его все-таки солидная толпа проверяет.

 

HAL это вообще первое, что увидит начинающий в теме. Поэтому по нему и дофига вопросов на форумах, типа "НИ ЧЕГО НЕ РАБОТАЕТ ПАМАГИТЕ". У не окрепших умов создается впечатление, что это неработающее "Г...", вон же сколько тем по нему! Я сколько использую HAL, ни разу не сталкивался с чем-то, для чего нужна была бы помощь зала.

 

HAL просто неэффективен.

Linux тоже не эффективен, память жрет, мипсы тратит, четырехслойку с BGA требует, но его популярность на планете порой пугает.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Linux тоже не эффективен, память жрет, мипсы тратит, четырехслойку с BGA требует, но его популярность на планете порой пугает.

Только не надо уводить тему в сторону.

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

А c HAL-ом нормальная практика.

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Только не надо уводить тему в сторону.

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

А c HAL-ом нормальная практика.

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

 

По поводу каждого, вспомнилось:

Второе по значимости событие в жизни каждого мужчины — это день, когда он покупает яхту, а самое великое событие в его жизни — тот день, когда он ее продает.

 

Д. Трамп.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я так не считаю. я в этой теме писал, что стоит куб использовать в больших проектах. Я тоже не понимаю, почему кто-то "фу, калокуб"? А где там кал? Да, хал (впрочем как и спл) громоздкая. Но это != глючная. Есть конкретный глюк в hal?

 

Я не считаю свой код лучше индусского, ровно как и хуже, поэтому я не брезгую HAL/SPL. Более того, я считаю, что популярная РТОС стабильнее самописного loop. Но не смотря на то, что используется, хал/спл/лл/свойКод /ртос - в любом случае нужно тестировать конечное ПО. Если индусский код кривой, то кривизна обнаружиться сразу.

 

почему в домашних/офисных роутерах чаще всего крутится Линуксе, а на Боинг 737 линукс можно встретить разве что в развлекательной системе для пассажиров? ...........линукс ................. не используют в важных приложениях...........
я на боинге не работаю, но в смежной отрасли работаю. Могу от первого лица сказать - линукс (и не только) используется в авиации, сплошь и рядом. И купленный в составе с роутером, и в составе промышленной микроЭВМ, и свои сборки линукса из исходников.

 

Я предполагаю, что для важных приложений, нужна сертификация, принятая в соответствующей отрасли.
Я не предполагаю, я говорю. Сертификацию проходим в соответствии с требованиями всего изделия (например: "изделие должно обеспечивать выходной импульс шириной 3.5 мкс ±0.1" - а как вы это делаете? хал или спл, ртос или луп, верилог или си - это вообще всем до лампочки). Отдельно ПО не сертифицируется.

 

Написав код в соответствии со стандартом
Нет таких стандартов. Может такой стандарт и есть, если есть дайте пруфлинк.

 

вы не программировали системы отвественные за безопасность
Вы свечку держали?

в любой среде программирования промконтроллеров будет отдельная часть в которой делают ответственные приложения. Там будет свой язык и свои сертифицированные либы.
Не знаю о чем вы говорите, возможно у вас на предприятии так и есть. Свой язык? Это как? В автомобильном контроллере, ту часть кода, что управляет обдувом ног будете писать на си, а управление тормозами на особом языке? Мы всё пишем на Си/С++.

 

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

 

У не окрепших умов создается впечатление, что это неработающее "Г..."
чаще у неокрепших умов создается впечатление, что у них руки не из плеч. А вот у профессионалов динозавров-консерваторов, те да.... те несправившись с инитом в хале, выпиливают его и чуть-ли не свой стартап на асме пишут, со словами "тут без хала всё просто, лучше выучить и всё написать самому, хал - отстой/глючный/громоздкий/индусский".

 

 

ps

Я предполагаю .... мне кажется
я своё мнение высказал про куб/хал. Я влез в дискуссию, чтоб развеить подобные мифы. Может быть в боинге так и есть, управление вентиляцией не тщательно тестируют, а работу закрылок более тщательно, но на предприятиях, которые разрабатывают системы, связанные с жизнью, картина немного другая. Пишут ПО, тестируют, сертифицируют. Особыми либами и особыми инструментами не пользуются. Используют и спл, и хал, и линукс. Находят глюки в купленных корках альтеры - переписывают на свои. Находят дыры в ПО у ti - переписывают и т.д. .... Отдельно ПО не сертифицируется, сертифицируется весь комплекс.

Есть мифы, что для чистого звука, нужен особый USB кабель. И есть мифы, что важное ПО как-то по особому пишется, без хал, на специальном языке. Одинаково всё пишется.

 

pps все мои высказывания - только касательно встроенного ПО, где и используется HAL. Что касается сертификации и тестирования системного и прикладного ПО, которое продается/поставляется как ПО без железа (всякие астра-линуксы) - тут я молчу.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Свой язык? Это как? В автомобильном контроллере, ту часть кода, что управляет обдувом ног будете писать на си, а управление тормозами на особом языке?

Да именно так.

Это все станкостроение, промышленная автоматизация.

Если вы об этом не знаете, то что у вас там за отрасль такая?

Если говорите за свою отрасль то назовите хоть ее, а то только наводите тень на плетень.

Все одинаково важным быть не может.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

что у вас там за отрасль такая?
аэронавигация, промышленное/тяговое энергоснабжение.

 

Да именно так.
Очень интересно.... Особый язык - это АСМ? Критические куски пишете на асме?

 

ps стало интересно, что там в боингах.... погуглил.... Ada, ось для Ada, даже Windows есть, но винда там не в системах=жизнь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

аэронавигация, промышленное/тяговое энергоснабжение.

А че космос, уже выпал из списка? :lol:

Не сочиняйте.

В этих отраслях пишут огромные коллективы.

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

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В этих отраслях пишут огромные коллективы.

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

гггггг...... )))))))))))))))))))))) СВОИ БИБЛИОТЕКИ!!! Как же вы всё таки далеки от реалии.... ладно дилетанты, начинающие.... но вы то!!!

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

 

А че космос, уже выпал из списка?
а он был в списке? "как для космоса" != "для космоса".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а он был в списке? "как для космоса" != "для космоса".

Я вижу вы стесняетесь своих разработок.

Видимо сильно приукрасили их значение для "космической аэронавигации".

Вот никто за язык не тянул. :laughing:

 

Ладно читайте про сертификацию софта - https://www.micrium.com/certification/why-s...-certification/

Я имел дело с IEC 61508 Safety Integrity Level 1.

Если вы с такими вещами не сталкивались, то скорее всего вас не посвятили в эти дела.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ps стало интересно, что там в боингах.... погуглил.... Ada, ось для Ada, даже Windows есть, но винда там не в системах=жизнь.

 

Ада это конечно жесть.

 

Я тут почитал сайт VxWorks, их ОС якобы используется в авиа. Вот чем они хвастаются в плане Critical Safety:

 

Safety-critical certification support: Wind River VxWorks Cert Platform provides a COTS

solution for delivering safety-critical applications that must be certified to the stringent

requirements of RTCA DO-178, EUROCAE ED-12, or IEC 61508 certification evidence in

avionics, transportation, industrial automation, and medical device industries

 

https://www.windriver.com/products/product-...ct-Overview.pdf

 

Ну то есть, когда речь идет действительно о Safety-critical, а не о каких-то фантазиях, местных "гениев", всплывает сразу много красивых аббревиатур, которым надо соответствовать.

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...