Фидошный софт весь под полуось был — винды тогда в основном непрерывно падали в синий экран смерти. Как-то пришлось печатать годовой отчет лаборатории на лазернике HP LJ IV. Лазерник был подключен к компу, на котором полгода назад установили купленную за деньги новомодную и красивую виндовсу 95-ую. Печатали методом копирования файла в порт, потому что при печати через драйвер виндовсов больше двух-трех страниц за раз не печаталось — комп вис и через несколько минут падал в синий экран. Отчет экспортировали из ворда (6, емнип) в ibm works, несли на комп с полуосью и ворксом, где печатали в файл для лазерника. А этот файл несли назад и там его гнали в порт.
Пушка характерна тем, что изобретает корпуса сот скрытыми секретами и глубоко ныкает сервисмануалы. В результате при первой же разборке будут сломаны чуть менее, чем все защелки.
Язык C никогда не являлся и не является, по крайней мере в реализациях стандартов C99 и С11, частью языка C++. Какие-то старые особенности присутствуют, но самых вкусных там нет. В частности, куча дыр в инициализации структур, массивов и прочих нужных штук. Со статической инициализацией в C++ как-то вообще не сложилось — полиморфизм мешает.
Вчера, в пятницу 5 января 2017 года прочитал полсотни дисков Iomega ZIP, записанных в преддверии 2000 года из-за страха перед миллениумом. Летом убирался в шкафу и нашел коробку из под обуви, доверху набитую дискетами. А на неделе попалась мне PCI-плата с интерфейсом ATA, к которому у меня есть накопитель IOZIP-250. Тогда же летом выбросил сотни три дискет с разного рода дистрами разных хениксов, нетварей, ibm-досов, разных баз данных и прочего софт-барахла в формате 5,25 и 3,5, приобретенных в начале 90-х еще до развала СССР. Все они отлично читались на приводах тридцатилетней давности. С оптическим носителями такие фокусы не прокатывают — носители, записанные десять лет назад, могут уже и не прочитаться.
Магнитный носитель — очень надежная штука. Читаются даже программы и данные для Д3-28 и Радио-86, записанные на советскую кассету в начале 80-х.
Не видно причин, препятствующих безусловному сбросу кеша при переключении процессов. Даже если это происходит аппаратно, например, при входе/возвращении из системного вызова или прерывания, можно устроить так, что в этот момент будет генерироваться исключение, обработчик которого сбросит кеш. Собственно, на производительность это никак не повлияет, поскольку переключение между режимами происходят не слишком часто, а время преключения настолько мало, что даже если его и увеличить в десять раз, то системное время не вырастет даже на сотую процента. В таких приложениях, где тысячи процессов постоянно дергают ввод/вывод, можно все порешать поместив все, что выше аппаратного драйвера, которому действительно требуется режим ядра, в пространство пользователя статической линковкой с библиотеками ввода вывода.
Интеграционное тестирование здесь не причем. Проблема в недостаточной величине окна времени от момента разделения до включения двигателей. Всегда может что-то случиться и разворачиваться придется долго. Программа полета должна была быть рассчитана на наихудший вариант кинематического состояния РБ после отделения.
Допустим, его бы после отстрела еще бы закрутило. В принципе, программа полета должна предусматривать такую ситуацию.
> Ад копирования
Не всегда шаблоны — хорошо.
Во-первых, в результате использования шаблонов будет сгенерировано столько же кода, сколько и в результате использования копирования.
Во-вторых, при использовании копирования копии можно дорабатывать в индивидуальном порядке, что невозможно при использовании шаблонов.
В третьих, компиляция из шаблонов идет гораздо дольше, чем копий.
В четвертых, отладка копий выглядит проще.
Смешно. Кроме слов нужно знать грамматику.
Ради примера, где для понимания требуется знать на порядок больше, чем набор слов, можно взять, например (у меня сейчас на столе), «AMD64 Architectutre. Programmer's Manual. Vol.1: Application Programming».
Большинство программистов не подпадают под те признаки, котороые Вы описали. Уж настоящих инженеров из них и десяти процентов не наберется. Читал лекции курсантам, которые лет по пять-десять как в софтверной отрасли работают на разных должностях от программистов до руководителей проектов. Чтобы узнать в каком состоянии у них сырок меж ушами, задаю несколько дурацких вопросов, на которые они должны развернуто письменно ответить. Например — «вот розетка, у нее две дырки и два полозка-контакта. Где здесь плюс, а где минус?». Две группы по 15 человек. Только три человека понимают, что там в розетке делается и могут внятно это описать. Все начинали с программирования. При этом только двое из тридцати представляют, как исходный текст превращается в загруженный код. Из тридцати двадцать пять кроме майкрософтовской студии ни с чем более не работали. Никто из них не смог собрать проект из cmd, не запуская студию. Половина не понимает как работает виртуальная память.
Инженер должен знать математику пусть не в объеме Корна, но если он инженер ИТ, он должен знать если не теорию кодирования сигналов, то, как минимум, дискретную математику. По крайней мере он не должен выпадать в атсрал при упоминании графов и БПФ.
Насколько оправданы претензии технаря на понимание бизнеса? Ну, пока был чистым инженером и архитектором, казалось, что понимал хорошо. Когда столкнулся с бизнесом, понял, что пропасть широченная.
Ну да, не всякий технарь может нагло врать и фантазировать и при этом держать лицо.
Можно подумать, что фотошоп и игры настолько важны, чтобы связываться с виндами. Тот же фотошоп неплохо и под маком работает. Ну а игры — в игры можно и на консолях играть. Сам я не играю (сейсчас), но когда-то баловался. Сейчас жаль время тратить на бессмысленные упражнения.
Обыкновенно. Все mission critical системы либо под юниксами реального времени, либо под линуксом реального времени. Если считать фондовые и бабосовые биржы за mission critical системы, то и они.
Прогноз метеоусловий — mission critical. Все крутые прогнозные модели считаются на кластерах под Линукс.
Куча софта, которым обсчитывают поведение mission critical систем как в процессе разработки, так и в процессе эксплуатации. Тот же ANSIS, например.
В группе TOP500 самых производительных компьютеров мира только Linux.
Без UNIX/Linux сегодня весь мир рухнет — остановятся все АЭС, 80% газовых ТЭЦ, полностью рухнут авиа- и морские перевозки, три четверти авто станут колом, Почти полностью выйдет из строя медтехника, холодильники перестанут морозить, а электродуховки — греть.…
> Меня учили учителя-самоучки.
Интересно, чему же они Вас научили? Чтобы иметь право учить, нужно иметь диплом.
> Портные…
Пиджак он вам с нуля кроил? Гульфик на пуговицах? Прорезные карманы?
И сколько же он испортил материала до того, как научился?
> Краснодеревщик-самоучка…
Ну если только где-то раздобыл полста кубов дерева на «тренировки»
Язык C никогда не являлся и не является, по крайней мере в реализациях стандартов C99 и С11, частью языка C++. Какие-то старые особенности присутствуют, но самых вкусных там нет. В частности, куча дыр в инициализации структур, массивов и прочих нужных штук. Со статической инициализацией в C++ как-то вообще не сложилось — полиморфизм мешает.
Магнитный носитель — очень надежная штука. Читаются даже программы и данные для Д3-28 и Радио-86, записанные на советскую кассету в начале 80-х.
Допустим, его бы после отстрела еще бы закрутило. В принципе, программа полета должна предусматривать такую ситуацию.
Не всегда шаблоны — хорошо.
Во-первых, в результате использования шаблонов будет сгенерировано столько же кода, сколько и в результате использования копирования.
Во-вторых, при использовании копирования копии можно дорабатывать в индивидуальном порядке, что невозможно при использовании шаблонов.
В третьих, компиляция из шаблонов идет гораздо дольше, чем копий.
В четвертых, отладка копий выглядит проще.
Ради примера, где для понимания требуется знать на порядок больше, чем набор слов, можно взять, например (у меня сейчас на столе), «AMD64 Architectutre. Programmer's Manual. Vol.1: Application Programming».
Инженер должен знать математику пусть не в объеме Корна, но если он инженер ИТ, он должен знать если не теорию кодирования сигналов, то, как минимум, дискретную математику. По крайней мере он не должен выпадать в атсрал при упоминании графов и БПФ.
Ну да, не всякий технарь может нагло врать и фантазировать и при этом держать лицо.
Прогноз метеоусловий — mission critical. Все крутые прогнозные модели считаются на кластерах под Линукс.
Куча софта, которым обсчитывают поведение mission critical систем как в процессе разработки, так и в процессе эксплуатации. Тот же ANSIS, например.
Без UNIX/Linux сегодня весь мир рухнет — остановятся все АЭС, 80% газовых ТЭЦ, полностью рухнут авиа- и морские перевозки, три четверти авто станут колом, Почти полностью выйдет из строя медтехника, холодильники перестанут морозить, а электродуховки — греть.…
Интересно, чему же они Вас научили? Чтобы иметь право учить, нужно иметь диплом.
> Портные…
Пиджак он вам с нуля кроил? Гульфик на пуговицах? Прорезные карманы?
И сколько же он испортил материала до того, как научился?
> Краснодеревщик-самоучка…
Ну если только где-то раздобыл полста кубов дерева на «тренировки»