В ИСС испытывают новую БЦВМ

Автор TAU, 06.10.2016 22:32:32

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

SGS_67

#40
ЦитироватьNot пишет:
ЦитироватьSGS_67 пишет:
Большое спасибо.
Получается, что ИСС для каждой платформы заказывает "на стороне" разработку кросс-системы для языка Модула-2, что занимает в среднем 3 года и хз сколько средств.
Все что нужно - кодогенератор из пи-кода в машкод.
Нефиг делать, верно?
А расширения языка, специфические для данной архитектуры, а оптимизация исполняемого кода, а средства отладки, а библиотеки?
Батенька, вы о кодогенераторах хоть какое-нибудь представление имеете?

Цитировать
ЦитироватьSGS_67 пишет: 
Плюс к тому, двойная компиляция даёт, мягко говоря, не слишком оптимальный исполняемый код для целевого устройства.
Где вы увидели двойную компиляцию? 
Не просто дятел, но ещё и слепой...
Вот, например:
Цитировать5. Договор №109, 2000 – 2002, март 2003. Кросс-система программирования на языке Модула-2 для OBC-1750 (с участием ООО "Эксельсиор"  ;)  
Договор выполнен на 110% – по доп. соглашению в работы был включен этап, в рамках которого в целях использования в международных проектах система сделана полностью двуязычной.
Главное  достижение – в короткие сроки создана кросс-система программирования на Модуле-2 через ANSI Си для немецкой БЦВМ OBC-1750, полностью сохраняющая пользовательские и программные интерфейсы КСП-CAMV.
Нормальные люди для данной БЦВМ пишут на С, а не изобретают кросс-системы на Модуле-2.


Цитировать
ЦитироватьSGS_67 пишет: 
Честно говоря, мне такой подход не слишком понятен.
Так спросите, вам разжуют, если не будете навязывать свои методы:
ЦитироватьSGS_67 пишет: 
но чистить зубы через задний проход-то зачем?    :(     
Так это же про вас, и ваши методы написано.  :)

Not

ЦитироватьSGS_67 пишет:
ЦитироватьNot пишет:
ЦитироватьSGS_67 пишет:
Большое спасибо.
Получается, что ИСС для каждой платформы заказывает "на стороне" разработку кросс-системы для языка Модула-2, что занимает в среднем 3 года и хз сколько средств.
Все что нужно - кодогенератор из пи-кода в машкод.
Нефиг делать, верно?
А расширения языка, специфические для данной архитектуры, а оптимизация исполняемого кода, а средства отладки, а библиотеки?
Батенька, вы о кодогенераторах хоть какое-нибудь представление имеете?
Вы или умнее Вирта (в чем я сомневаюсь) или болтун (что похоже на правду). Приведите пример специфического для архитектуры расширения языка, обсудим. Средства отладки уже включены в комплилятор Модулы. Библиотеки, если они свои, фирменные, элементарно транслируются из исходных текстов. Оптимизиция, естественно высокоуровневыми алгоритмами компилятора, плюс низкоуровневое дополнение, входящее в кодогенератор.

О кодогенераторах имею самое непосредственное представление, спрашивайте.

thunder26

#42
ЦитироватьSGS_67 пишет:
Нормальные люди для данной БЦВМ пишут на С, а не изобретают кросс-системы на Модуле-2.
Нормальные люди один раз делают кросс-систему, а не переписывают все БПО на Си
Очень трудно сделать точный прогноз, особенно о будущем (с) Нильс Бор

thunder26

#43
-
Очень трудно сделать точный прогноз, особенно о будущем (с) Нильс Бор

TAU

ЦитироватьSGS_67 пишет: что занимает в среднем 3 года и хз сколько средств
Если бы вы внимательнее почитали открытые источники, на которые вам давали наводку, как раз бы прочли в них, что передовые технологии разработки БПО в АО "ИСС" (а это не только Модула-2) позволяют создавать полностью БПО для новых аппаратов в кратчайшие сроки (один-два года).

Между прочим, использовать С/С++ (видимо, они скрываются под "стандартными инструментами") для написания критически важных приложений - то, что вы, видимо, считаете правильным ("нормальным") - как раз использование зубной щетки в ненадлежащем месте. Причины этой ситуации скорее исторические, да, подобное применение С/С++ обычно. Но - ненормально.

TAU

ЦитироватьSGS_67 пишет:
Батенька, вы о кодогенераторах хоть какое-нибудь представление имеете?
Нормальные люди для данной БЦВМ пишут на С, а не изобретают кросс-системы на Модуле-2.
Процитирую Анисимова:

"Разработчики программного обеспечения бортовых систем (прикладного ПО) вообще не чувствуют перехода на другой тип БЦВМ. Остаются полностью неизменными интерфейсы сопряжения с общесистемным ПО. Все тот же язык программирования Модула-2 с использованием стандартизированных типов данных. Тестирование с использованием неизменного языка диалоговой и пакетной отладки.
Принципы этой технологии разработал Андрей Колташев, а особо значимый вклад в ее реализацию внес Николай Шумаков".

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

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

SGS_67

ЦитироватьNot пишет:
ЦитироватьSGS_67 пишет:
ЦитироватьNot пишет:
ЦитироватьSGS_67 пишет:
Большое спасибо.
Получается, что ИСС для каждой платформы заказывает "на стороне" разработку кросс-системы для языка Модула-2, что занимает в среднем 3 года и хз сколько средств.
Все что нужно - кодогенератор из пи-кода в машкод.
Нефиг делать, верно?
А расширения языка, специфические для данной архитектуры, а оптимизация исполняемого кода, а средства отладки, а библиотеки?
Батенька, вы о кодогенераторах хоть какое-нибудь представление имеете?
Вы или умнее Вирта (в чем я сомневаюсь) или болтун (что похоже на правду). Приведите пример специфического для архитектуры расширения языка, обсудим.
Можноб много распространяться об особенностях архитектуры вычислительных систем, не имеющих поддержки стандартными средствами ЯВУ, однакож, в данной теме не считаю это нужным, ибо не в коня корм.
Предлагаю почитать про что-нить навроде NEON/ММХ/SSE/AVX, а потом уж задавать глупые вопросы.

ЦитироватьО кодогенераторах имею самое непосредственное представление, спрашивайте.
Как при помощи стандартных средств любого ЯВУ выполнить вычисления в фиксированной точке, не через задний проход, а с помощью заточенной под это нативной структуры процессора?

SGS_67

Цитироватьthunder26 пишет:
ЦитироватьSGS_67 пишет:
Нормальные люди для данной БЦВМ пишут на С, а не изобретают кросс-системы на Модуле-2.
Нормальные люди один раз делают кросс-систему, а не переписывают все БПО на Си
Это всё равно придётся делать, рано или поздно, но чем раньше, тем лучше.

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

SGS_67

ЦитироватьTAU пишет:
ЦитироватьSGS_67 пишет: что занимает в среднем 3 года и хз сколько средств
Если бы вы внимательнее почитали открытые источники, на которые вам давали наводку, как раз бы прочли в них, что передовые технологии разработки БПО в АО "ИСС" (а это не только Модула-2) позволяют создавать полностью БПО для новых аппаратов в кратчайшие сроки ( один-два года).
Скажите, какие это передовые технологии, и я посыплю голову пеплом.

Кстати, этот вопрос уже задавал ранее.

ЦитироватьМежду прочим, использовать С/С++ (видимо, они скрываются под "стандартными инструментами"   ;)   для написания критически важных приложений - то, что вы, видимо, считаете правильным ("нормальным"   ;)   - как раз использование зубной щетки в ненадлежащем месте. Причины этой ситуации скорее исторические, да, подобное применение С/С++ обычно . Но - ненормально .
Вполне нормально, и не через задний проход.
Потому, как развитием (бесплатных!) средств проектирования на основе С, да и вообще, GNU,  для разнообразных платформ занимаются крупные международные сообщества, а не отдельные конторы, хотя и производители железа тоже выкатывают средства разработки, тулзы, библы либо бесплатно, либо по сходной цене. Вот, например, я год назад решил поюзать Тегру X1 от Нвидиа, и там у них:
https://developer.nvidia.com/embedded/downloads#?tx=$product,jetson_tx1

Плюс форум, где решаются вопросы, хоть и далеко не все, однако, там стараюцца.
https://devtalk.nvidia.com/default/board/164/jetson-tx1/

Скажите, для кетайского Леона будет что-нибудь подобное?

SGS_67

ЦитироватьTAU пишет:
И вообще. Поверьте, при создании критически важного ПО роль технологии (организации процесса, документации, кстати и кодогенераторов, отладочных комплексов с полной имитационной моделью КА, между прочим, и прочая, и прочая) столь велика, и этому на протяжении ряда лет уделялось столько внимания, что это у них вам бы поучиться - я говорю о программистах ИСС - а не выдавать на весь свет безапелляционные суждения о "нормальности".
Нисколько не сомневаясь в профессиональном качестве специалистов ИСС, хотелось бы всё-таки пожелать им использовать его по прямому назначению.

ЦитироватьИмея опыт и в одной, и в другой сфере, могу со всей ответственностью заявить, что уровень технологии, характерный для разработки "коммерческого софта" значительно ниже применяемой для создания критически важного ПО.
Ошибаетесь.
Даже в Вашем или моём планшете или смартфоне напихано технологий столько, что ИСС и не снилось.
И это всё как-то работает.

thunder26

ЦитироватьSGS_67 пишет:
Цитироватьthunder26 пишет:
ЦитироватьSGS_67 пишет:
Нормальные люди для данной БЦВМ пишут на С, а не изобретают кросс-системы на Модуле-2.
Нормальные люди один раз делают кросс-систему, а не переписывают все БПО на Си
Это всё равно придётся делать, рано или поздно, но чем раньше, тем лучше.

Иначе ИСС рискует стать мировым лидером в создании аццки унифицированной кросс-системы Модула-2 для любых процессоров, кроме них нафуй никому не нужной, не поддерживаемой никаким сообществом, с огромными затратами творческих возможностей персонала не по прямому назначению, а ради обеспечения глупого фетиша.
Всё - мсм, как и было сказано ранее.
То что вы сидя на диване лучше всех разбираетесь в БПО и средствах его разработки - никто не сомневается.
Очень трудно сделать точный прогноз, особенно о будущем (с) Нильс Бор

Echidna

В конце-концов выбор языка - вопрос вкусовщины. Если в ИСС есть программисты на Модуле, то зачем заставлять всех переходить на Си? Есть традиции, школа. В конце-концов язык программирования - это просто "пассатижи", которыми решается задача. И какого года выпуска эти пассатижи - в конечном счете никого не волнует. Оптимизация когда и прочее, безусловно важное, вообще особо не имеет значения на КА. Даже при использовании процессоров 10-15 летней давности работа всего БПО наверняка занимает не больше 3-4 процентов процессорного времени. А производительность эта, заметьте, постоянно увеличивается.

Другое дело, если взять сейчас и создавать что-то с нуля. Т.е совсем с нуля. Если представить такую гипотетическую ситуацию, что всех программистов на ИСС уволили, а потом сотрудников набрали по объявлению заново в другом городе. Именно в этом случае (когда с нуля) Си будет выглядеть более предпочтительным языком для БПО. :-) Но никак не в условиях того, что имеется сейчас на предприятии.

ZOOR

Предлагаю срочно все писать на Java и не мучаться :)

Не БПО, но все-же.
Видел мытарства одной конторы, которая под ДОСом пыталась разграничить права доступа (выбор комплекта доступного СПО) путем запароливания БИОС и выбором там загрузочного диска с предустановленным комплектом СПО именно для данного пользователя в данном конкретном случае.

Было весело до слез, ведь ребята сами понимали, что любой Линух с ДОСэму решает их проблемы раз и навсегда - но низзя, поскольку в их конторе традиция ...........
Я зуб даю за то что в первом пуске Ангары с Восточного полетит ГВМ Пингвина. © Старый
Если болит сердце за народные деньги - можно пойти в депутаты. © Neru - Старому

PIN

ЦитироватьZOOR пишет:
Предлагаю срочно все писать на Java
Вы будете смеяться, но аппараты, на которых часть ПО на JavaScript. Та, которая иногда требует обновлений самими эксплуатантами, бортовые процедуры, например.

PIN

ЦитироватьEchidna пишет:
Даже при использовании процессоров 10-15 летней давности работа всего БПО наверняка занимает не больше 3-4 процентов процессорного времени
15-30%, на тех 6 разных весьма аппаратах, с которыми работал последние годы.
Что не мешает "вылезать" за пределы реального времени изредка, в ситуациях не протестированных в реалистичных условиях. Но это проблема разработки конкретного ПО, более-менее реальные проблемы по ресурсам вылезают редко  (могу припомнить только ATV и Bepi) и они все же решаемы тоже. 

SGS_67

ЦитироватьEchidna пишет:
В конце-концов выбор языка - вопрос вкусовщины. Если в ИСС есть программисты на Модуле, то зачем заставлять всех переходить на Си? Есть традиции, школа. В конце-концов язык программирования - это просто "пассатижи", которыми решается задача. И какого года выпуска эти пассатижи - в конечном счете никого не волнует.
Заметьте - дискуссия здесь не о достоинствах или недостатках, присущих тому и ли другому ЯВУ, или даже средств разработки, под него заточенных, а об уровне поддержки разнообразных вычислительных структур, сложившейся де-факто в мире.
Почему именно так, а не иначе - уже другой вопрос.

Цитировать Оптимизация когда и прочее, безусловно важное, вообще особо не имеет значения на КА. Даже при использовании процессоров 10-15 летней давности работа всего БПО наверняка занимает не больше 3-4 процентов процессорного времени. А производительность эта, заметьте, постоянно увеличивается.
Вот это с самого начала мне и было непонятно.
Зачем менять, пусть устаревшую морально, но вполне освоенную и достаточную для решения основных задач аппаратную платформу, на такую же, только с непаханным полем в смысле средств разработки и поддержки? 
Единственное объяснение нахожу в "санкциях", и неспособности отечественной микроэлектроники выдать продукт надлежащего качества для нужд решетневской фирмы.


ЦитироватьДругое дело, если взять сейчас и создавать что-то с нуля. Т.е совсем с нуля. Если представить такую гипотетическую ситуацию, что всех программистов на ИСС уволили, а потом сотрудников набрали по объявлению заново в другом городе. Именно в этом случае (когда с нуля) Си будет выглядеть более предпочтительным языком для БПО. :-) Но никак не в условиях того, что имеется сейчас на предприятии.
МСМ, лучше один раз перетянуть ПО на другой стандарт, чем каждый раз корячиться, когда требуется смена аппаратной начинки.

TAU

ЦитироватьSGS_67 пишет: Иначе ИСС рискует стать мировым лидером в создании аццки унифицированной кросс-системы Модула-2 для любых процессоров, 
Цитировать1) кроме них нафуй никому не нужной, 
Цитировать2) не поддерживаемой никаким сообществом, 
Цитировать3) с огромными затратами творческих возможностей персонала не по прямому назначению, а ради обеспечения глупого фетиша.
По пунктам:
1) ИСС занимается достаточно серьезным делом (напомню, 2/3 спутников России), чтобы ценность представляла разработка, применяемая даже только на их собственном предприятии.

2) Если брать кросс-систему программирования (КСП) с использованием Модулы-2 - она создана при активном участии ученых СО РАН из Новосибирска, непосредственно ООО "Эксцельсиор".

3) Затраты представляются лично Вам "огромными", и на самом деле люди, конечно, действительно много и плодотворно творчески поработали. Но!!! При использовании "традиционных" подходов трудоемкость процесса была бы больше вследствие его менее высокого уровня качества - соответственно, скорее общие трудозатраты значительно сократилась. Советую перечитать вдумчиво в приведенных источниках "истории успеха" о переносе без существенных изменений 90% наработанного БПО на другие вычислительные платформы и об одном-двух годах, затрачиваемых на полное создание БПО нового спутника.

TAU

ЦитироватьSGS_67 пишет: 
Скажите, какие это передовые технологии, и я посыплю голову пеплом.
Посыпайте. У них в реальную промышленную практику внедрены, например:

1) Система автоматизации испытаний БПО на основе мощного наземного отладочного комплекса (НОК) с полной программной имитацией изделия, включая БКУ и все остальные системы и автоматизацией проектирования циклограмм испытаний на основе проблемно-ориентированных языков.

2)  Автоматизированная система сопровождения программ, изделий и документов БПО, она же - система управления задачами и проблемами АСПИД.

3) Бортовые интерпретаторы СЕАНС и ДКД, фактически являющиеся бортовым "искусственным интеллектом" с оперативным изменением правил поведения в случае необходимости по радиоканалу (до трети правил закладывается в процессе эксплуатации).

4) Применение для средств интегрального автономного управления спутником проблемно-ориентированных языков, не требующих знания программирования. Что позволяет проектантам и специалистам по бортовым системам непосредственно задавать логику управления аппаратом без привлечения дорогостоящего многостадийного процесса перепроектирования/кодирования/отладки программ и устранения эффекта "испорченного телефона" в проектной команде (система программирования РЕАЛ).

5) Для ИСС обновление БПО серийных аппаратов ("перепрошивка" ), находящихся на орбите (десятки ГЛОНАССов, например) - рутинная процедура, выполнявшаяся успешно многократно.

6) Автоматический анализ степени покрытия программ БПО модульными тестами с выделением непокрытых операторов.

7) Статические анализаторы исходных текстов программ, специально настроенные на правила кодирования бортового критически важного ПО.

Рекомендую познакомиться с презентацией

Ну и ИСС не "почивает на лаврах", а постоянно совершенствует свои технологии разработки БПО.  Я бы отнес их процессы к высшему, "оптимизирующему" уровню зрелости по модели CMM.

TAU

ЦитироватьSGS_67 пишет:
развитием (бесплатных!) средств проектирования на основе С, да и вообще, GNU, для разнообразных платформ занимаются крупные международные сообщества, а не отдельные конторы
Ага. И уровень поддержки (сопровождения), к сожалению, продуктов этих "сообществ" зачастую оставляет желать лучшего. А в космосе, ежели чего - "у каждой ошибки есть имя и фамилия" - с кого спрашивать?
Не годится, в общем, по большому счету использовать инструменты без конкретной поддерживающей "конторы".
ЦитироватьДаже в Вашем или моём планшете или смартфоне напихано технологий столько, что ИСС и не снилось.
И это всё как-то работает
Во-первых, мне снилось. Во-вторых, вот именно что как-то.

SGS_67

ЦитироватьTAU пишет: 
По пунктам:
1) ИСС занимается достаточно серьезным делом (напомню, 2/3 спутников России), чтобы ценность представляла разработка, применяемая даже только на их собственном предприятии.

2) Если брать кросс-систему программирования (КСП) с использованием Модулы-2 - она создана при активном участии ученых СО РАН из Новосибирска, непосредственно ООО "Эксцельсиор".

3) Затраты представляются лично Вам "огромными", и на самом деле люди, конечно, действительно много и плодотворно творчески поработали.
1. Именно поэтому меня данная тема и заинтересовала.

2. Да, мне это известно, даже ссылку приводил.

3. В том-то всё и дело, что с каждой сменой аппаратной платформы требуется большая творческая работа для обеспечения средств проектирования для неё.
-----------------------------------
Ещё раз: речь не о том, что система проектирования ИСС на основе Модула-2 архаичной, плохой, и т.д.
А о том, что она ортогональна сложившемуся подходу к проектированию ПО в мире.
Посему, несёт издержки своего особого пути.
ПМСМ, ненужные.

Цитировать Но!!! При использовании "традиционных" подходов трудоемкость процесса была бы больше вследствие его менее высокого уровня качества - соответственно, скорее общие трудозатраты значительно сократилась.
:o
Что за чушь!?
Традиционные подходы как раз и обеспечивают наивысший уровень качества при меньшей трудоёмкости, поскольку:
а) имеют развитые средства проектирования, отладки, поддержки.
б) многократно выверены, протестированы и обезглючены большим сообществом потребителей.
в) имеют многократно больший потенциал привлечения грамотных специалистов, или даже студентов, которых не придётся переучивать на непривычную среду.

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

Так что вот ещё нагрузка: под систему ИСС готовить спецов "с нуля", которые потом могут запросто отвалить на вольные хлеба.
С кем рискуете в конце-концов остаться? И не только вы?