Я тут в компьютерном форуме заикнулся о бортовом компьютере МКС, но, думаю, заикаться по этой теме лучше здесь.
Так вот, у меня есть знакомый, работающий в "Энергии" и пишущий проги для борта МКС, он кое-что по этой теме рассказывал. Я, если получится, попрошу его рассказать еще раз и поподробнее, а сейчас пока, для затравки, расскажу по памяти. Так что некоторые детали могу наврать, сильно не бейте.
Тот компьютер, который сейчас работает, вообще-то временный; он установлен на нашем модуле и обеспечивает работу станции до пристыковки американского (кажется) модуля с более мощным компьютером. То, что сейчас работает, по вычислительной мощности примерно соответствует i286. При этом на нем крутится целая куча программ. Есть что-то около 8 уровней приоритетов, и каждой задаче отводится квант времени в соответствии с ее приоритетом. Задачи с высшим приоритетом вообще действуют по своему усмотрению. Ну, в целом, как обычно. Что же касается производительности, то она... ну, как и следовало ожидать
Задача, выполняющаяся на Athlon 550 за исчезающе малое время, на борту выполняется минуты, причем с не самым низшим приоритетом.
Процессор совершенно ни с чем не совместимый и вообще непонятно откуда. Документация неполная и невнятная. Когда обнаружили ошибку в процессоре (и даже две), запросили информацию в Германии, где был закуплен компьютер. Там ничего внятного сказать не смогли, зато выяснилось, что сами немцы купили комп у французов. Когда связались с французами, оказалось, что они привезли его с Тайваня 8-]. Короче, полный улет.
Я спросил, мол, а зачем же выбрали такую лажу? На что тот знакомый мне ответил: ну, выпили директоры шнапсу, по плечу друг друга похлопали, мол, фройндшафт и т.п..., что, не знаешь, как у нас такие вопросы решаются?! :-0
Интересна технология написания программ. Одна группа пишет ПО на Си (sic!), тестирует (с точки зрения алгоритма), а другая чуть ли не вручную переводит все это на ассемблер того процессора. Разумеется, потом еще проверяется на натурном компьютере. Все задачи, как я понял, пишутся независимо (ориентация там, связь и т.п.), а потом запускаются как отдельные процессы.
Вроде пока все. Надеюсь, продолжение следует...