Однако, в какой-то момент спутник просто «замолчал». Все дело в том, что каждые 15 минут LightSail передавал пакет с данными о своем состоянии на землю и одновременно с этим записывал их локально в CSV файл. За два дня этой файл занял все свободное место на 32-мегабайтном диске и система на базе Linux просто повисла. Производитель бортовой электроники для спутника знал об этом дефекте и выпустил фикс, но ПО спутника не обновили перед запуском на орбиту, и баг в нем остался. Попытки накатить апдейт удаленно провалились, так как спутник завис намертво к моменту прохождение над наземной станцией.
Остается возможность перезагрузить систему, после чего «проблемный» CSV файл затрется и можно будет попробовать пропатчить софт, однако пока попытки удаленного ребута не увенчались успехом. Команде, которая работает над спутником, не остается ничего другого, кроме как ждать и надеяться на чудо.
Как думаете, сколько из почти $800.000, собранных на постройку спутника, пошли на зарплату тестировщикам?
Самолет перед взлетом, пилот объявляет:
Сейчас мы совершим взлет наш самолет управляется операционной системой Windows NT 5.
Все пассажиры в панике покидают салон кроме одного. Стюардесса спрашивает оставшегося: "А почему вы остались ??"
- Меня зовут Билл Гейтс и знаю что самолет под управлением Windows NT 5 не взлетит.....
Линукс повис из-за того что закончилось свободное место??
Свободное место на диске закончилось за два дня?? Т.е, никто не утрудился погонять эту железку хотя бы неделю??
Либо это феерическое головотяпство, или нам вешают лапшу на уши.
> Либо это феерическое головотяпство, или нам вешают лапшу на уши.
По опыту дебианов и центосов могу сказать, что они могут не перезагрузиться, если закончилось место. Но подвиснуть и стать недоступными - это у них какой-то очень специфический линукс.
Делали дилетанты. На наших спутниках и других космических аппаратах декодировщик команд с Земли (например, СИОК), который отрабатывает до передачи управления бортовой машине, также управляет специальными ключами. В их функции входит как переключение между дублирующими комплектами в случае сбоя, так и аппаратный сброс процессора и ПЛИС выбранного комплекта.
> Линукс повис из-за того что закончилось свободное место??
> Свободное место на диске закончилось за два дня??
Более удивительным является другой аспект: ведь даже начинающих админ Линуха создает для данных (в т.ч. и для логов) отдельный раздел, что исключает зависание системы в случае его переполнения.
Еще вызывает недоумение отсутствие watchdog-таймера, который автоматически перегружал бы софт в случае его зависания. Команды на перезагрузку спутник сейчас не воспринимает, поэтому единственная надежда, как сообщается, сейчас на то, что он сам случайно перегрузится из за попаданий тяжелых космических частиц.
Правда, такого рода раздолбайству есть объяснение: этот спутник создан и запущен на средства некоммерческой организации энтузиастов под названием "Планетарное общество". Т.е. это, по большому счету, любительтсво, отсюда и не вполне серьезный подход к делу.
> По опыту дебианов и центосов могу сказать, что они могут не перезагрузиться, если закончилось место. Но подвиснуть и стать недоступными - это у них какой-то очень специфический линукс.
+много
Как-то у меня подвисли виртуалки на сервере, зашёл и обомлел: из-за ошибки иксов сервак забил весь диск логами. Первый раз наблюдал терабайтовый текстовый файл, но дебьян при этом работал нормально.
> Правда, такого рода раздолбайству есть объяснение: этот спутник создан и запущен на средства некоммерческой организации энтузиастов под названием "Планетарное общество". Т.е. это, по большому счету, любительтсво, отсюда и не вполне серьезный подход к делу.
А нафиг они его вообще запускали, он что-то полезное делает или это запуск ради запуска?
В том году мы закупили для нужд производства один аппаратик,стоимостью чуть больше 150 тысяч европейских денег.
Приехали специально обученный инженеры из Москвы и из Германии, все установили, запустили. Среди прочего выяснилось, что этот аппаратик абсолютно новой версии, но прошивка у него, почему-то старая.
Про этот казус был накатан специальный документ, подписан сторонами и отправлен факсом в Германию.
На следующий день, инженерам позвонил САМЫЙ ГЛАВНЫЙ НЕМЕЦ из самой Германии и о чем-то строго расспрашивал. Инженеры ответили, что да, мол, прибор уже весь такой тачскриновый и с анимашками на экране, а вот прошивка версии 1.01 (хотя на тот момент уже был релиз версии 3.23).
Аппаратик приняли в условно-рабочем состоянии, мол, компания сильно извиняется за головотяпство, что электронный блок устанавливали и прошивали их итальянские коллеги (привет Евросоюзу) и, в ближайшее время, все будет исправлено.
В общем, через 10 дней, к нам прилетает очень важный инженер из Германии с ноутбуком Dell и синей флешкой, на которой находится ТА САМАЯ ПОСЛЕДНЯЯ И ГОДНАЯ ПРОШИВКА.
По условиям контракта, выделяем немцу наших трех бойцов на помощь. Впятером принялись благоговейно наблюдать, как работают КРУТЫЕ СПЕЦИАЛИСТЫ МИРОВОГО УРОВНЯ ИЗ ПЕРЕДОВОЙ ЕВРОПЕЙСКОЙ СТРАНЫ, ГДЕ ПРОВОДЯТСЯ ГЕЙПАРАДЫ.
Немец подключается по СПЕЦИАЛЬНОМУ КАБЕЛЮ своим ноутбуком к аппаратику, накатывает прошивку, перезагружает... версия 1.01.
Перезагружает аппаратик снова - версия 1.01.
Выключает аппаратик полностью, ждет 3 минуты, включает - версия 1.01.
И он видит, что мы все видим то-же самое.
Подключается опять к аппаратику, смотрит версию прошивки со своего ноутбука... Задумчиво берет мобильник и звонит куда-то в Германию.
О чем-то долго говорит по-немецки. Мы делаем вид, что ничего не понимаем в басурманском наречии, хотя наши спецы немецкий знают неплохо.
Один из наших коллег делает... такие вот нехорошие квадратные глаза и начинает недобро так улыбаться, поигрывая желваками.
Отвожу его в сторонку, пытаюсь узнать о чем, в общих чертах, говорит басурманин?
Оказывается, что басурманин, прямо по телефону, устраивал своему немецкому офису трахен зи попен за то, что на флешку накатали старую прошивку.
В общем, в тот-же день, немец улетел домой, сказав напоследок, что он очень важный специалист, его рабочее время стоит много-много рейхсмарок (евро), и что завтра из Москвы прилетит его русский коллега (попроще и подешевле), который и будет заканчивать апдейт. Флешку оставил нам, запаковав ее в фирменный пластиковый контейнер... с пломбой.
И правда, на следующий день прилетел Андрюха из Москвы. Подключился своим ноутом к аппарату торкнул ТУ САМУЮ синюю флешку, собственноручно накатал прошивку - опять версия 1.01.
Погонял аппарат, сказал, что прошивка на нем уже новая, но почему она показывается как 1.01 он понять не может, возвожно надо перешивать сначала железо (прошивка была только на GUI).
Прислали ему новую прошивку на железо. Накатал сначала ее. Версия прошивка у железа изменилась. Накатал сверху прошивку на GUI - опять 1.01, но функционал по-факту уже от новой прошивки.
Мы все, сука, "счастливы" - пока аппарат в сервисе, на нем нельзя работать.
В конце дня, Андрюха показал интересное - оказывается, что в данной версии прошивки... страница, на которой указывается версия прошивки... она от старой версии. И что можно вручную поправить номер версии и все будет ОК. Не поверил, попросил поправить и показать. Поправил ручками, перепрошил, показал... версия 3.23. Все счастливы...
Но это еще не все. Он написал об этом "спецтелегу куда следует". Я, как руководитель отела и приемщик с нашей стороны, ее подписал.
Совсем недавно выяснилось, что эта прошивка все-таки "корявая" (что там не только страница с номером версии косячная).
> А нафиг они его вообще запускали, он что-то полезное делает или это запуск ради запуска?
Это был запуск тестового образца, в качестве целей заявлялось общая проверка систем, а также проверка механизма разворачивания солнечного паруса.
Покидание земной орбиты запланировано не было, спутник вскорости после разворота паруса должен был упасть на Землю.
800'000 баксов и 32МБ дискового пространства.
Отсутствие ограничения объёмов логирования.
Логирование в системный раздел.
Отсутствие дублирования и аппаратных средств перезапуска системы.
Отсутствие внятного тестирования.
Это просто праздник какой-то!!!
Хорошо хоть Linux вверх ногами не поставили.
> В том году мы закупили для нужд производства один аппаратик,стоимостью чуть больше 150 тысяч европейских денег.
В нашей крупной госконторе было закуплено полтора десятков мультиплексоров Alcatel, сколько тысяч европейских денег сказать не могу, поскольку практика показывает, для госконтор цены особенные, и особенные в сильно бОльшую сторону. В один прекрасный день слетел алкателевский крафт-терминал на разъездном ноуте. Полтора месяца ебли с установкой софта с фирменных дисков. Наконец, всё заработало. Впору было напиться. Прошло два месяца - опаньки, снова что-то глюкнуло и половина приблуд перестала работать.
> Как вы думаете сколько из $800.000 пошли на покупку 32-мегабайтного диска в 2015 году?
Вроде как стоимость вывода 1 кг в космос стоит более 300к баксов. Значит аппарат весит максимум 2-2.5 кг. Так что скорее всего диск был очень маленький для экономии места. Учитывая что в этом аппарате большую часть должны были занимать паруса для ловли солнечного ветра, то ПО на этом аппарате нужно только чтобы передавать сигналы на Землю.
> Вроде как стоимость вывода 1 кг в космос стоит более 300к баксов
Американский Атлас-5 выводит на геопереходную орбиту до 13т или до 30т на низкую опорную орбиту (~ 200 км).
Стоимость запуска около $187 млн, что в пересчете на 1 кг дает $14.4 тыс и $6.2 тыс.
Вес аппарата не знаю, но судя по картинкам оценил бы в 5 кг.
> Так что скорее всего диск был очень маленький для экономии места.
Диск скорее всего какая-то вариация флешпамяти, он достаточно миниатюрный, легкий и без механики. Почему не больше - думаю, 1) для подобных задач больше не рационально 2) полет планировался тестовый, никакой миссии у аппарата не было - потому сэкономили.
Голое ядро линукса с необходимым набором сервисных программ занимает 2-3 мегабайта. Плюс управляющий софт, там тоже не много. Вряд ли это был винчестер как мы его понимаем 99,9% это флешка
Шерше ля фам - системный инженер Барбара Планте. В видео описывающее процесс её прям открытым текстом спрашивают "То есть никто не сможет нажать кнопку "Resset" в космосе" - а она отвечает "Ни у кого нет добровольцев выполнить эту работу" - накаркала.
> Вроде как стоимость вывода 1 кг в космос стоит более 300к баксов. Значит аппарат весит максимум 2-2.5 кг. Так что скорее всего диск был очень маленький для экономии места. Учитывая что в этом аппарате большую часть должны были занимать паруса для ловли солнечного ветра, то ПО на этом аппарате нужно только чтобы передавать сигналы на Землю.
Не знаю что там за физический вес, но носители одинакового объёма памяти не сильно отличаются в физическом весе. Не знаю как будет себя вести mirosd в космосе, но могли бы что то подобное отправить.
С другой точки стороны, скорее всего дело в стоимости носителя памяти который должен корректно работать в космосе, подозреваю что они дорогие, и всё та же mirosd вряд ли будет штатно функционировать. Да и цена на 1 гб памяти не одинакова с 64 гб. А раз поставили только 32 мб диск, то подозреваю цена хотя бы на 512 мб была заоблочной.
Камрады, ну хорош уже про 32 мега. Ембедднутый линукс, специально заточенная версия, и не на диске, а на флеш-памяти, скорее всего со усиленной защитой -- космос же.
Гоблин, помнится, делал обзор на точку доступа TP-Link TL-MR3020, гляньте на ЮТубе, так вот в такую кроху величиной с ладошку тоже линукс воткнуть можно.
Но да -- с разбиением дискового пространства чего-то напортачили.
> Это что же получается - свободное ПО и куча хипстеров-программистов - не дают абсолютной уверенности?..
Ты как-нибудь поузнавай, сколько программистов сидят на зарплате у таких мелких незаметных контор типа Google, Oracle, Red Hat, Intel, Novell, IBM сугубо на благо контрибьюта в Linux ядро да и не только в ядро...
Непонятно, почему линкус, а не QNX. Ну а желающим посмотреть на висящие намертво линуксы рекомендую обратить внимание на всякие маленькие армы, мипселы и прочие ппцэшки.
> а на флеш-памяти, скорее всего со усиленной защитой
Подумал тут, что защита менее актуальна чем борьба с нагревом, соответственно - с потребляемой мощностью.
Ну и температурный диапазон работы должен быть шире, а это уже не рядовое железо.
>> За два дня этой файл занял все свободное место на 32-мегабайтном диске и система на базе Linux просто повисла.
В каком году собирали спутник? Что это за диск на 32 [мегабайта]? Где сборщики его взяли, на свалке? Или кто-то ушлый спер современный диск на пару террабайт, заменив его на завалявшийся с 90-х в кладовке 32-мегабайтник? Или опять журналисты чего-то напутали?
> В нашей крупной госконторе было закуплено полтора десятков мультиплексоров Alcatel
Alcatel это вроде-как Защеканция, да?
Оно все не работает потому, что у нас тут гейпарады (кстати маковская автозамена упорно предлагает вместо слова "гейпарады" вставить "гепарды") не проводят, кругом коррупция, жулики и воры.
> Вроде как стоимость вывода 1 кг в космос стоит более 300к баксов. Значит аппарат весит максимум 2-2.5 кг. Так что скорее всего диск был очень маленький для экономии места. Учитывая что в этом аппарате большую часть должны были занимать паруса для ловли солнечного ветра, то ПО на этом аппарате нужно только чтобы передавать сигналы на Землю
Но моя флешка на фотоаппарат емкостью 8Gb весит максимум 2гр. И как тогда это все понимать?
QNX или WindRiver дорого.
Какой-нибудь RTLinux в данном случае обойдется дешевле всего.
Небось что-нибудь типа такого взяли и модифицировали под свои нужды.
Вообще тут дело не в ОС, чисто человеческий фактор сыграл.
Одни чего-то не предусмотрели, другие забыли, ну и не полетело в результате.
> Твоя флешка на какой температурный диапазон рассчитана?
Пофиг на температурный диапазон. Там наверняка термостатирование имеется. А вот диск, как и остальная электроника должны быть радиационно-стойкими. А это означает, что девайс не новый и не нельзя его сравнивать с современными бытовыми флешками.
> В каком году собирали спутник?
> Или опять журналисты чего-то напутали?
Камрад, там борьба за снижение веса всегда идет нешуточная.
Плюс, другие требования совсем к аппаратуре, чтоб от излучений не загнулась.
К ПО тоже специфические требования.
Не надо удивляться.
Кстати, и журналисты тоже напутали.
Во-первых, телеметрия посылалась каждые 15 секунд, а не минут.
Во-вторых, в первоисточнике не сказано про переполнение 32-х мегабайтной флэшки или диска.
Написано просто, что если файл вырос в размере до 32-х мегабайт, он мог обрушить ПО системы управления полетом.
Думаю, могла, к примеру, использоваться какая-нибудь специфическая файловая система, которая по каким-то причинам не работает с файлами больше чем 32 мегабайта. Или еще что-нибудь. Мы же не видели ТЗ на ПО системы управления полетом.
Ну и в-третьих, ПО системы управления полетом не "повисло" а "рухнуло".
Переводчики "молодцы".
Вот цитата из первоисточника:
"But inside the spacecraft's Linux-based flight software, a problem was brewing. Every 15 seconds, LightSail transmits a telemetry beacon packet. The software controlling the main system board writes corresponding information to a file called beacon.csv. If you’re not familiar with CSV files, you can think of them as simplified spreadsheets—in fact, most can be opened with Microsoft Excel.
As more beacons are transmitted, the file grows in size. When it reaches 32 megabytes—roughly the size of ten compressed music files—it can crash the flight system. The manufacturer of the avionics board corrected this glitch in later software revisions. But alas, LightSail’s software version doesn’t include the update."
> По опыту дебианов и центосов могу сказать, что они могут не перезагрузиться, если закончилось место. Но подвиснуть и стать недоступными - это у них какой-то очень специфический линукс.
не могут перегрузить? в такой БЭВМ нет обычного вотчдога который ждет пакета из UART? и ребутает по таймауту? Во блин
Дорого и геморройно, как раз из-за вакуума. Равно так же дорого и геморройно реализуется защита от жесткого излучения, которого даже на низких орбитах дохрена. Но ведь, надо же пошутить про 32 мегабайта и флешку из фотоаппарата!!! А ты своими "каверзными" вопросами всю картину мира поганишь!!!
> Ставятся нагреватели.
>
> проблема космоса - в охлаждении.
Не рассказывай сказок.
В данный момент делаем прибор. Туча нагревателей. Охладитель только для приемников для охлаждения до нескольких десятков градусов по Кельвину.
Сколько "специалистов" то понабежало...
Во первых радиокомпоненты для спутника немного не бытовые. И стоят в сотни раз дороже чем бытовуха.
Для справки, на МКС космонавты пользуются обычными ноутбуками. Они работают там в среднем пол года. И то с учетом, что МКС летает низенько-низенько, чтоб космонавты от радиации не поджаривались. Магнитное поле земли их защищает.
Во вторых там явно не жесткий диск. Перегрузки значительные при выводе, да и вообще он большой и тяжелый. SSD не подойдут из-за пункта 1. Чем "тоньше" технология, чем меньше нанометров тем нежнее микросхема реагирует на космические лучи. Потому там не современная флешка по нормам 32нм, а древняя дубовая по нормам 1000нм.
В третьих читать про флешки microsd смешно. Они и в бытовых задачах живут не долго. Есть опыт использования USB флешек в нагруженных системах, около сотни серверов - живут в среднем пол года. Потом в природе появились SSD и мы перешли на них, SSD живет дольше (умнее контроллер, исправляет поврежденные сектора).
В четвертых для передачи телеметрии большая флешка и мощный процессор не нужны. Нужны экономичные и надежные компоненты. Кстати жесткие диски еще и энергии очень много жрут в сравнении с флешкой.
> В данный момент делаем прибор. Туча нагревателей. Охладитель только для приемников для охлаждения до нескольких десятков градусов по Кельвину.
>
> Это для космоса такое?
> Диск был 32 мегабайта? Я не ослышался? Как там вообще какое-то ПО поместилось?
Еще в 2004-ом году начальник нашего отдела собрал маленький линукс, который помещался на флешку в 16 Мб, куда кроме ОС поместилось кассовое ПО и графический движек Xorg.
Любителям пошутить про накопители в 32 Мб, "хипстеров-программистов", тестировщиков и т.д. можно разве что порекомендовать хотя бы поверхностно ознакомиться с темой, например, на основе марсохода Curiosity, по которому информации масса, а потом уже пытаться юморить. Ниже пара ссылок с весьма занимательными, на мой взгляд, статьями.
Аналогичный случай с Германией. Некий агрегат стоимостью млн. 10 ихних налаживает немец. Их спецы воткнули, что агрегат отключается (аварийно) при номинальной нагрузке. Я давай пытать немецкого барана какого мол х...?! На четвертый раз тот понял про что, но сказал так завод решил. Думаю пиз-л. Защиту изменили только через год. К сожалению наши овцы часто не башкой думают, а заглядывают в рот. А ещё чаще - не умеют работать коллективом.
> Диск был 32 мегабайта? Я не ослышался? Как там вообще какое-то ПО поместилось?
Молча. Не знаю, как там с никсами, но софт для сбора показаний приборов АЭС в Бушере писали на голых сях (нужно было получение данных с com-портов, коими компы, собирающие инфу, коннектились к шкафам), на дискету 1.44 упихивали ОС (FreeDOS, версию сейчас не вспомню) и tcp-клиент (не говоря о самой программе). Данные отправлялись на отдельный комп для обработки и хранения данных. Тот - да, помощнее был. Но речь не о том.
Сбор данных осуществлялся с компа с [дискетой] на 1.44 Mb. Весь софт для сбора данных был на [дискетке].
Ажно прослезился, вспоминая, как в 2007 году передовые инженеры Brückner требовали подать им на подмосковный заводик ISDN (!), потому как E1 (!) им не подходит... В итоге, пронесло, к 2008 немцы таки внедрили на своей стороне возможность подключения по IP-сетям.
P.S. когда приезжей немчуре называли тогдашние московские расценки на широкополосный доступ они вежливо улыбались и не верили ни в какую.
> в такой БЭВМ нет обычного вотчдога который ждет пакета из UART? и ребутает по таймауту? Во блин
Если у них файл валился в корень ФС (ОС и рабочие данные - все на одном разделе, что при таких объёмах наверняка и было), а файл писался от рута (беспрепятственно выжрав даже рутовский резерв 5%)- то для линукса совершенно нормально в такой ситуации зависнуть намертво. Более того, даже если удастся ребутнуть - то шансов выйти из ребута всё равно нет.
Мне было бы интересно заняться проектированием таких микроспутников. И разработкой ПО для них. Если есть энтузиасты- - пишите на jeltij@list.ru
Для помешанныз на технике оставляю изысканный десерт - цикл рассказов-задач "Лунолет". Из еще советской "Техники - молодежи". Расчет траекторий и составление программы торможения-разгона для двигателя космического аппарата - в комплекте.
Наслаждайтесь, от сердца отрываю. http://gudleifr.h1.ru/52.html
> Камрады, ну хорош уже про 32 мега. Ембедднутый линукс, специально заточенная версия, и не на диске, а на флеш-памяти, скорее всего со усиленной защитой -- космос же.
Меня всегда умиляет что промышленные, космические и военные изделия, за много килобаксов, по характеристикам порой уступают бюджетным смартфонам.
> Граждане куролесят такое, что волосы аж выпрыгивают.
Капитализмус. Есть очень выгодный момент, занять нишу и делать шлак.
Шлак продал - копеечка. Поддержку продал - регулярная копеечка.
И такие сейчас сплошь и рядом.
> Я так понимаю, что наши корабли летают с Аргон-16, где суммарный об'ем ОЗУ и ПЗУ - несколько десятков килобайт?
Я не знаю с чем там наши сейчас летают. Ты знаешь? Просто 32 МБ показалось как-то мало по нынешним меркам. Агрегат, о котором ты говоришь, он же вроде из 70-х годов. По тем временам это нормально было.
> Голое ядро линукса с необходимым набором сервисных программ занимает 2-3 мегабайта. Плюс управляющий софт, там тоже не много. Вряд ли это был винчестер как мы его понимаем 99,9% это флешка
Видимо, еще и не простая флэшка, с защитой от радиации и прочее. Я понимаю, что устройство для космоса не такое простое как бытовые аналоги. Просто как-то маловато показалось по нынешним меркам.
> Еще в 2004-ом году начальник нашего отдела собрал маленький линукс, который помещался на флешку в 16 Мб, куда кроме ОС поместилось кассовое ПО и графический движек Xorg.
> Не знаю, как там с никсами, но софт для сбора показаний приборов АЭС в Бушере писали на голых сях (нужно было получение данных с com-портов, коими компы, собирающие инфу, коннектились к шкафам), на дискету 1.44 упихивали ОС (FreeDOS, версию сейчас не вспомню) и tcp-клиент (не говоря о самой программе). Данные отправлялись на отдельный комп для обработки и хранения данных. Тот - да, помощнее был. Но речь не о том.
> Сбор данных осуществлялся с компа с [дискетой] на 1.44 Mb. Весь софт для сбора данных был на [дискетке].
>
> А ты про 32 метра спрашиваешь.
>
> P.S. Если что. Дело было в 2011 году.
В свое время ПО на дискетах - это было нормально (хотя для 2011 года - это тоже экзотика). Но сейчас уже слабо верится. Отвык я от таких цифр. По нынешним меркам показалось 32 МБ как-то маловато.