я помню в фильмах: "В тени Луны" и "Цель Луна" говорилось об ошибке 016 вроде при посадке.
вот статья
https://www.gazeta.ru/science/2016/11/26_a_10376453.shtml
Я немного разбирался с этой историей, есть очень хорошая статья на русском, английская Википедия тоже подробно рассказывает.
При посадке Игла нормальная загрузке AGC была около 85%, плюс около 13% давала обработка сигнала со стыковочного радара. Как я понял, при реальной посадке вибрации вызывали дополнительную вычислительную нагрузку, это один раз поймали при тестировании, но решили, что ломать отработанную систему и исправлять эту проблему не стоит.
Олдрин вводил команду 1668 для нахождения разницы между вычисленной высотой и полученной с посадочного локатора и получил ошибки переполнения 1201 ("Executive overflow - no vacant areas") и 1202 ("Executive overflow - no core sets") . AGС быстро перезапускался с ПЗУ и, имея систему приоритетов, отбрасывал несрочные задачи, включая 1668, и успевал подхватывать управление посадкой.
Молодой оператор Стив Бэйлс успел разобраться в ситуации и дал команду продолжать посадку, за что потом получил награду из рук Никсона вместе с астронавтами.
Ничего в итоге менять не стали, просто введя инструкцию отключения стыковочного радара при посадке. И вообще эта история является ярким примером особенности работы систем реального времени - они работают не быстрее обычных, но при этом за гарантированное время. И скорость их работы сильно повышать смысла нет - есть запас, и слава Богу. AGC, к слову, имел, по нынешней терминологии, 4 килобайта ОЗУ и 72 килобайта ПЗУ, при этом мог выполнять до 7 задач в реальном времени - парни из MIT дело туго знали. Что, кстати, показывает, как в СССР компенсировали отставание в элементной базе - инженеры были умны и дешевы и выгоднее было их умением оптимизировать код пользоваться - пока железо отставало.
Кстати, меня всегда пугал такой сценарий при возможной посадке Леонова - он-то в одиночку бы садился, когда бы он разбирался в такой проблеме.
https://geektimes.ru/post/276436/
https://en.wikipedia.org/wiki/Apollo_Guidance_Computer
Цитировать4 килобайта ОЗУ и 72 килобайта ПЗУ
И с такой БЦВМ на Луну летали.
Гениально.
А при чём здесь женщина. Уже бабушка.
Ей за что медаль?
Я так что-то и не вкурил.
ЦитироватьКстати, меня всегда пугал такой сценарий при возможной посадке Леонова - он-то в одиночку бы садился, когда бы он разбирался в такой проблеме.
Так Старый вроде уже доказал, что Н-1 это миф. И никогда бы до Луны с пилотом не долетела.
ЦитироватьВиктор Левашов пишет:
Цитировать4 килобайта ОЗУ и 72 килобайта ПЗУ
И с такой БЦВМ на Луну летали.
Гениально.
А при чём здесь женщина. Уже бабушка.
Ей за что медаль?
Я так что-то и не вкурил.
Это Маргарет Гамильтон, пожалуй, третья по знаменитости женщина в ИТ после Ады Лавлейс и адмирала Грейс Хоппер - https://ru.wikipedia.org/wiki/%D0%93%D0%B0%D0%BC%D0%B8%D0%BB%D1%8C%D1%82%D0%BE%D0%BD,_%D0%9C%D0%B0%D1%80%D0%B3%D0%B0%D1%80%D0%B5%D1%82_(%D1%83%D1%87%D1%91%D0%BD%D1%8B%D0%B9)
Я точно не помню ее должность - но она была одним из основных разработчиков бортового ПО для СМ и ЛМ. Т.е. то, что все это работало на такой БЦВМ - это и ее заслуга тоже. Ну и до кучи - знаменита еще тем, что дневала и ночевала в лаборатории с грудным ребенком.
Да и по жизни была симпатичной барышней, на фотографии она с распечаткой ПО для программы Аполлон
(https://forum.novosti-kosmonavtiki.ru/forum/file/67423)
ЦитироватьВиктор Левашов пишет:
ЦитироватьКстати, меня всегда пугал такой сценарий при возможной посадке Леонова - он-то в одиночку бы садился, когда бы он разбирался в такой проблеме.
Так Старый вроде уже доказал, что Н-1 это миф. И никогда бы до Луны с пилотом не долетела.
Ну тут я соглашусь. Взрыв Антареса с НК-33 прошел тоже по сценарию аварии Н-1, не было запаса по топливу, что помогло Армстронгу выбрать место для посадки, про отсутствие борт-инженера при посадке я выше написал.
И еще такой момент, возможно кого и обижу. Алексей Архипович, как и остальные космонавты из "Гагаринского" набора были безусловного огромного личного мужества - а я всегда говорил, что не стыдно быть дураком, стыдно быть трусом. Но они не пришли из флотской авиации с сотней и более посадок на авианосец и летчиков-испытателей как Армстронг или Лоуэлл - а мне кажется, это было просто необходимый опыт для посадок и стыковок в лунных миссиях. Как бы ты лично смел не был - но у американский пилотов была гораздо лучше база. Насколько же я знаю, из первого набора только Нелюбов был незаурядным летчиком.
Цитироватьна фотографии она с распечаткой ПО для программы Аполлон
судя по объёму распечаток и объёму памяти БЦВМ Аполлона в бинарных кодах писала.
да.
это круто.
ЦитироватьНасколько же я знаю, из первого набора только Нелюбов был незаурядным летчиком.
как раз его и исключили.
ну, и ещё двух коллег.
а вообще, страшный финал.
дикий какой-то.
так затравить человека... азиатчина какая-то.
но я отвлёкся.
а на счёт посадок на авианосец и навыков стыковки - соглашусь.
одно другому в подспорье.
Ассемблер, который любопытно сейчас смотреть, я несколько раз наугад открывал и смотрел по этой причине :)
Ассемблер - тоже круто.
Но всё ж таки думаю в бинарных кодах.
Где-то я видел ту ЭВМ. Там 16 клавиш плюс одна.
Нажата 1. Не нажата 0.
Ну и ввод
ЦитироватьВиктор Левашов пишет:
Ассемблер - тоже круто.
Но всё ж таки думаю в бинарных кодах.
Где-то я видел ту ЭВМ. Там 16 клавиш плюс одна.
Нажата 1. Не нажата 0.
Ну и ввод
Писали все-таки на ассемблере с кросс-компиляцией и эмулятором, потом, как я читал, тётечки вручную прошивали колечки в ПЗУ :-) Машинные коды нужны были при отсутствии BIOS, тогда с панели вбивали загрузчик. Собственно, тоже самое делали через несколько лет Гейтс и Аллен для своего Бейсика в 4К и Intel 8080. Легенды говорят, что они совсем забыли про загрузчик и буквально при посадке написали его в машинных кодах на бумажке.
Википедия говорит, что по лунной программе было потрачено 1400 человеко-лет на разработку программного обеспечения с 350 разработчиками на пике. За что Маргарет Гамильтон и получила свою медаль недавно.
В честь адмирала и бабушки Кобола Грейс Хоппер назвали эсминец, что тоже очень неплохо :-)
В "лунных машинах" разработке компьютеров и ПО для аполлона посвящена отдельная серия. По сути там разработали первую методологию разработки ПО
Цитироватьdmitryskey пишет:
парни из MIT дело туго знали
упал под стол
стоит заметить, что была одна малоизвестная фирмочка, занимающаяся интегрированной электроникой, которая вышла из фейерчаелда, который делал микрухи для этого компа
Цитировать тётечки вручную прошивали колечки в ПЗУ
эх, золотые люди - какое время - какой подъём
Интересно, коллеги, кто-нибудь писал на языке "Ада", названном в честь Ады Лавлейс?
Для военных создан.
Но описание языка 600 страниц.
Это, извиняюсь, как?
Описание Модулы-2 на нескольких страничках умещается.
Я Модулу-2 не знаю.
Но видел листинг программ. Читабельно.
ЦитироватьВиктор Левашов пишет:
Цитироватьтётечки вручную прошивали колечки в ПЗУ
эх, золотые люди - какое время - какой подъём
Вот, кстати, как это происходило (https://forum.novosti-kosmonavtiki.ru/forum/file/67474)
Цитироватьsilentpom пишет:
стоит заметить, что была одна малоизвестная фирмочка, занимающаяся интегрированной электроникой, которая вышла из фейерчаелда, который делал микрухи для этого компа
Да - интегральные схемы пошли в массовое производство по программе Minuteman-II и Apollo с их бортовыми компьютерами. В это смысле, как мне кажется, это были не траты на войну и космос - а реальные инвестиции в технологии. Мне кажется, налоги с компьютерной индустрии после бума Apple II и IBM PC отбили затраты многократно.
По этой причине, кстати, стоит и заниматься марсианскими экспедициями. Как я говорю своим коллегам - триллион долларов так или иначе потратили - так лучше уж было на Марс слетать, чем в Ираке торчать, Саддам был одним большим сукиным сыном, теперь там имя им легион.
Вот еще что подумалось про наследие Аполлона. Бум персоналок начался с появления первой электронной таблицы VisiCalc на Apple II. До этого все это были игрушки для гиков, после обычный бизнесмен приходил в магазин, просил ту штуку, где работает VisiCalc, выбирал Apple II еще и в силу дизайна и довольный платил $1,300 (что в нынешних ценах тысячи 3-4) - зная, что эти деньги отобьются. А потом уже как лавина пошла.
Про интегральные схемы как основу железа и оптимизацию ПО мы уже обсудили выше, технологии были отработаны именно в аэрокосмической индустрии, да и многие люди типа Питера Нортона напрямую оттуда и пришли.
Как пример - при разработке VisiCalc ориентировались на Apple II с 16К на борту. И тут случилась беда - была обещана поддержка тригонометрических функций, и код ну никак не лез в 16К. Мучались, мучались - и тут Apple выпустила компьютер с 48K на борту - все отлично поместилось в 32K и даже осталось место для драйвера диска. Можно в интернете скачать VisiCalc для PC, полноценная электронная таблица размером в 25 килобайт, до сих пор запускающаяся в 32-битных версиях Windows (в 64-битных поддержку уже не делают). В общем - время титанов было.
ЦитироватьВ общем - время титанов было.
Цитировать- Да, были люди в наше время,
Не то, что нынешнее племя:
©
Да, вот, что нашёл про "Аду" языка в честь Ады Лавлейс для военных:
ЦитироватьЕсли Ada собирается выдать стандарт, желательно, чтобы он был недвусмысленно документирован. По меньшей мере две группы попытались сделать это; в результате обе выдали около 600 страниц формального текста. Это гораздо больше, чем необходимо, чтобы удостовериться в невозможности хотя бы твердо установить, что оба документа определяют один и тот же язык. Ошибка очевидной неуправляемости этих двух документов кроется не в двух группах, составивших их, не в принятом ими формализме, а лишь в самом языке: сами не обеспечив формального определения, могут ли его разработчики скрыть, что они предлагают неуправляемого монстра. То, что Ada уменьшит проблемы программирования и увеличит надёжность наших разработок до приемлемых границ, — это лишь одна из тех сказок, в которые могут поверить только люди с военным образованием.
Научная фантастика и научная реальность в информатике (Edsger W. Dijkstra, EWD952)
Не очень Эдсгер Дикстра военных инженеров уважает.
На форуме большинство - военные инженеры.
Неужели нет желания ответить.
или просто нет программистов "Ада"?
ЦитироватьВиктор Левашов пишет:
На форуме большинство - военные инженеры.
Неужели нет желания ответить.
или просто нет программистов "Ада"?
Скорее всего - третье. Я много чего встречал, даже с Коболом сталкивался и писал на его кузене ABAP/4, а вот Ады нигде не видел. Хотя нет - вру, PL/SQL корни имеет в Аде.
У меня такое впечатление, что язык был настолько тяжёл и формализован, что компиляторщики долго не могли совместить и прохождение формальных спецификаций, и генерацию эффективного кода - что для военной техники очень важно в силу традиционного отставания железа из-за длительности разработки.
Вот и получалось - прямо здесь и сейчас есть С в НАСА или Модула-2 в ИСС, как с ними бороться, более или менее понятно. Я читал требования к коду С от НАСА, там попросту зарезают использование опасных вещей вроде malloc/free, что легко проверяется. Про Модулу-2 в ИСС подробно в соседней ветке разобрали, собственно, пришли к консенсусу, что может это и не магистральная линия, но прямо здесь и сейчас вполне себе рабочий механизм.
ЦитироватьВиктор Левашов пишет:
Да, вот, что нашёл про "Аду" языка в честь Ады Лавлейс для военных:
ЦитироватьЕсли Ada собирается выдать стандарт, желательно, чтобы он был недвусмысленно документирован. По меньшей мере две группы попытались сделать это; в результате обе выдали около 600 страниц формального текста. Это гораздо больше, чем необходимо, чтобы удостовериться в невозможности хотя бы твердо установить, что оба документа определяют один и тот же язык. Ошибка очевидной неуправляемости этих двух документов кроется не в двух группах, составивших их, не в принятом ими формализме, а лишь в самом языке: сами не обеспечив формального определения, могут ли его разработчики скрыть, что они предлагают неуправляемого монстра. То, что Ada уменьшит проблемы программирования и увеличит надёжность наших разработок до приемлемых границ, — это лишь одна из тех сказок, в которые могут поверить только люди с военным образованием.
Научная фантастика и научная реальность в информатике (Edsger W. Dijkstra, EWD952)
Не очень Эдсгер Дикстра военных инженеров уважает.
Ну я бы критику промышленных языков программирования от ученых Computer Science смело бы игнорировал, они попросту лезут не свою область, хотя, безусловно, их разработки следует изучать и внедрять по мере необходимости - как это произошло со структурным программированием или идеями Оберона в Java (с точки зрения Вирта, разработчики Java "изучили исходные коды Оберона и, в частности, исходные коды обероновских сборщиков мусора. Потом они испортили Оберон синтаксисом Си и назвали получившееся словом Java" ;) . Ничего, кроме Паскаля, не "взлетело", в той же вполне себе фундаментальной физике как дело доходит до реальных расчетов, все на Фортране и С, ядро компьютерной алгебры по крайней мере в виде Maple тоже на С (со слов профессора из Waterloo University)
С Паскалем же сошлись звезды, и не по причине особой прозорливости Вирта. Основой было две вещи - применение для обучения (поэтому автор Turbo-Pascal, Delphi и C# Anders Hejlsberg хорошо его знал по учебе в европейском Technical University of Denmark) и такая структура языка, что был возможен однопроходный компилятор.
В 80-е был большой запрос на IDE с компилируемым языком для 8 и 16-битных систем, и Borland его удовлетворила, причем сделала это дешево (тогда $50 за полноценную среду разработки было просто даром). Я имел дело с Turbo-Pascal для CP/M на 64Kb ОЗУ, и поверьте мне, это производило неизгладимое впечатление - насколько это было удобно и практически мгновенно компилировалось - по сравнению с С на той же машине, где приходилось две дискеты тасовать из-за нескольких проходов компилятора.
На ADA написано бортовое ПО Ариан-5, нынешней Веги. Почти наверняка так же будет на Ариан-6 и будущих версиях Веги.
Почти все бортовое ПО ATV тоже на Аде было.
И ПО БЦВМ бОльшей части аппаратов, например, TAS-I тоже на Ада.
ЦитироватьSOE пишет:
На ADA написано бортовое ПО Ариан-5, нынешней Веги. Почти наверняка так же будет на Ариан-6 и будущих версиях Веги.
Почти все бортовое ПО ATV тоже на Аде было.
И ПО БЦВМ бОльшей части аппаратов, например, TAS-I тоже на Ада.
А среда разработки какая - GNAT Pro?
Цитироватьdmitryskey пишет:
Я имел дело с Turbo-Pascal для CP/M на 64Kb ОЗУ, и поверьте мне, это производило неизгладимое впечатление - насколько это было удобно и практически мгновенно компилировалось - по сравнению с С на той же машине, где приходилось две дискеты тасовать из-за нескольких проходов компилятора.
Главная причина медленной компиляции С - необходимость многократно парсить заголовочные файлы, а вовсе на количество проходов парсера.. Для борьбы с этим в одном известном компиляторе есть опция "прекомпилированные заголовки".
А у вас, наверно, заголовки стандартных библиотек и ваш собственный код были на разных дискетах. Как говорится, каждый сам себе злобный буратино.
Цитироватьopinion пишет:
Цитироватьdmitryskey пишет:
Я имел дело с Turbo-Pascal для CP/M на 64Kb ОЗУ, и поверьте мне, это производило неизгладимое впечатление - насколько это было удобно и практически мгновенно компилировалось - по сравнению с С на той же машине, где приходилось две дискеты тасовать из-за нескольких проходов компилятора.
Главная причина медленной компиляции С - необходимость многократно парсить заголовочные файлы, а вовсе на количество проходов парсера.. Для борьбы с этим в одном известном компиляторе есть опция "прекомпилированные заголовки".
А у вас, наверно, заголовки стандартных библиотек и ваш собственный код были на разных дискетах. Как говорится, каждый сам себе злобный буратино.
Ха, на тот момент ещё бы были прекомпилированные заголовки - я в первый раз такое чудо увидел уже вроде 90-ых на Visual C++, вспомните, когда на gcc оно появилось-то - аж в версии 3.4, то бишь уже в 21 веке :-) В любом случае, наличие препроцессора даже с прекомпилированными заголовочными файлами вызывали необходимость в нескольких проходах с сохранением промежуточных результатов на диске. Турбо-Паскаль все это проделывал прямо в RAM. Да - и дискеты с компилятором С были защищены от записи, берегли их как могли, да и не факт, что там бы и места достаточно оставалось.
А на 8-битных машинах без винчестера тасовались дискеты, потом с жёстким диском стало получше, но все-равно гораздо медленнее, чем в Турбо-Паскале. Кстати, разница была существенной и для Turbo C уже на PC, но считалось, что тут уже серьёзный язык именно для разработки. Был правда финт ушами на 8-битных машинах с 128Kb - 64Кб выделялось под электронный диск, и если исходники и промежуточные файлы в этот объем влазили - то эффект был как ныне от перехода на SSD :-) Понятно, что на PC это было уже практически штатным методом работы.
Но мы в сторону немного отклонились - я хотел сказать, что активное использование Паскаля в промышленности не было заслугой Computer Science и Вирта, просто звезды сошлись так в 80-ые. Поэтому критику Ада от ученых можно не особо принимать во внимание, язык не стал широко использоваться не силу того, что разработчики не знали теорию ЯП - но и не умер - огромное спасибо
SOE за примеры из космического применения
Для меня простота и доступность компилятора Турбо-Паскаля сыграли решающее значение при написании дипломной работы.
У меня была 8088 на двух дисководах. Без жёсткого диска.
И ничего. Написал. И сдал. И файв ещё получил.
"Да - и дискеты с компилятором С были защищены от записи, берегли их как могли, да и не факт, что там бы и места достаточно оставалось. " я работал дома с турбо си 2.0 на поиске, т.е. 8088 кастрированный, на болагрском дисководе 5.25, и ничего работало! в школе чуть лучше 286 на 3.5 дисководе. Прекомпилированные заголовки вроде были в borlanc c++ 3.0, но его я на 386й только запускал, действительно помогало, но важно было для программирования под винду где страшные хеадеры
ЦитироватьВиктор Левашов пишет:
На форуме большинство - военные инженеры.
Неужели нет желания ответить.
или просто нет программистов "Ада"?
я работал в одной конторе, связанной с форексом, у нее военно-американское прошлое, а потому там торговая платформа написанная на аде. как хардкорный с++ник я успешно тролил адских программистов за незнание современных концепций
Цитироватьdmitryskey пишет:
Да - интегральные схемы пошли в массовое производство по программе Minuteman-II и Apollo с их бортовыми компьютерами.
а название двух фирмочек, отколовшихся от фейрчайлда угадаете?
еще про аду - собственно бортовое по раптора написано на ней, вот только у самолета завоевания господства в воздухе по не сильно сложное. а у f-35 основная работа по земле, ПО значительно более сложное и на с++. так что даже из авионики аду вытесняют
Цитироватьsilentpom пишет:
Цитироватьdmitryskey пишет:
Да - интегральные схемы пошли в массовое производство по программе Minuteman-II и Apollo с их бортовыми компьютерами.
а название двух фирмочек, отколовшихся от фейрчайлда угадаете?
А чего там угадывать - AMD да Intel :-) Или какой подвох есть :-)?
Цитироватьsilentpom пишет:
"Да - и дискеты с компилятором С были защищены от записи, берегли их как могли, да и не факт, что там бы и места достаточно оставалось. " я работал дома с турбо си 2.0 на поиске, т.е. 8088 кастрированный, на болагрском дисководе 5.25, и ничего работало! в школе чуть лучше 286 на 3.5 дисководе. Прекомпилированные заголовки вроде были в borlanc c++ 3.0, но его я на 386й только запускал, действительно помогало, но важно было для программирования под винду где страшные хеадеры
у меня Филипс был. за 100 $ это 1992 год. 8088 , 6,4 Мг, 640 Кб, на барахолке купил. весь паяный перепаяный. у Филипаса видно блок питания было дохлый. я винт пытался поставить - не тянет. так и работал на двух дискетах. и на Борланд С курсовик написал. только дискеты нужно было по 1.200. потом пришпандорил внешний блок питания, поставил винт на 40 Мб. вот жизнь счастливая пошла.
а старые дисководы я выкинул через полгода.
ну, да, вру.
хранил ещё несколько лет.
потом уж выкинул.
рыдая над помойкой.
ЦитироватьВиктор Левашов пишет:
Для меня простота и доступность компилятора Турбо-Паскаля сыграли решающее значение при написании дипломной работы.
О! Я этим баловался году в 1986-88. По работе. Плюс графика BGI. :)
ЦитироватьШтуцер пишет:
ЦитироватьВиктор Левашов пишет:
Для меня простота и доступность компилятора Турбо-Паскаля сыграли решающее значение при написании дипломной работы.
О! Я этим баловался году в 1986-88. По работе. Плюс графика BGI. :)
И оверлеи :-)
А потом (насколько я помню, ноги росли из Paradox), был BDE, великий и ужасный :-) Сколько же народу в 90-ых и в начале 2000-ых с его помощью цеплялось к БД и клепало клиент-серверные формочки с 100500 контролов на каждой для управления всего во Вселенной. Мне иногда кажется, что ИТ и народ в ней только за счет этого и выжил в 90-ые.
И вы таки будете смеяться, но только пару лет назад у нас в конторе был выполнен проект по замене BDE на FireDAC в классическом клиент-серверном приложении (в просторечье называемом BackOffice), написанном на Delphi в 90-ых. Один из главных авторов сидит напротив меня, говорит, что выбор был между Visual FoxPro и Delphi (последний, может кто не в курсе, произносится американцами как Делфай). Работать в связке COM на Visual C++ и UI на Visual Basic было, по его словам тяжко. И что самое смешное - этот проект был выполнен для Гугла - их HR как с основания сидит на нашем приложении - так никуда слазить вроде бы не хочет. Уж не знаю, как они это совмещают с Linux Everywhere - наверно, просто виртуальную машину держат :-)
Цитироватьdmitryskey пишет:
А чего там угадывать - AMD да Intel :-) Или какой подвох есть :-)?
нету :)
ЦитироватьШтуцер пишет:
ЦитироватьВиктор Левашов пишет:
Для меня простота и доступность компилятора Турбо-Паскаля сыграли решающее значение при написании дипломной работы.
О! Я этим баловался году в 1986-88. По работе. Плюс графика BGI. :)
насчёт графики. всем презираемый Q Basic выдавал графику на 8088 быстрее. чем Турбо Паскаль BGI. И проще программный код был. Я с секундомером замерял. вот вам и Бэйсик, многими незаслуженно презираемый.
в каком режиме? 16 цветный vga адски сложен для эффективного рисования, но можно было аккуратным ассемблированием выжать раза в 2 быстрее. но нам учитель сказал, что это все ерунда, пишите 320 на 200 сами свои функции - там копированием экрана на 286 было за доли секунды...
да ну, какой вга. у меня даже не ега, а зелёный монитор был. но видео на нём смотреть было можно. он через тюльпаны с системным блоком соединялся. да-да.
так я на нём и впервые VHS "Назад в будущее" - 1 посмотрел.
какой это был восторг...