Сегодня исполняется 25 лет «Проблеме 2000» (Y2K). Все ждали глобального коллапса цифровой инфраструктуры из-за экономии пары байт памяти, но 1 января прошло подозрительно тихо. У обывателей сложилось мнение, что угроза была раздута. Но не всё так просто.
Основной удар тогда пришелся не на банковский софт, а на архитектурные ограничения железа и логику встраиваемых систем, вот пара примеров:
1. Аппаратная амнезия Motorola MC146818.
В основе архитектуры IBM PC AT и его клонов лежал чип часов реального времени (RTC) Motorola MC146818. Его регистр года был 8-битным (формат BCD) и хранил значения от 00 до 99. О понятии «столетие» сам чип ничего не знал.
Инженеры выделили байт в CMOS-памяти (адрес 0x32) для хранения века (19 или 20). Однако контроллер не умел инкрементировать этот байт при переходе 99->00. Это должен был делать BIOS. Миллионы плат имели «кривой» BIOS, который забывал обновить ячейку 0x32. В итоге, часы сбрасывались в 00, система читала старое столетие и думала, что на дворе 1900 год. Патчили это перепрошивкой или TSR-резидентами.
2. Ловушка «отрицательного времени» в Embedded
В промышленнных контроллерах дата часто использовалась для расчетов интервалов техобслуживания:
Time_Since_Service = Current_Date - Last_Service_Date
При наступлении 2000 года уравнение превращалось в 00 - 98. Это приводило к двум сценариям:
-- Integer Overflow: Система получала огромное число, решала, что станок не обслуживали 99 лет, и срабатывала аварийная блокировка.
-- Отрицательное значение: Система считала, что обслуживание проведено в будущем, ломая логику планировщиков.
Были ли реальные инциденты?
Сбоев было не так много и произошли они именно там, где работала жесткая логика и старое железо:
-- АЭС Онагава (Япония): Через две минуты после полуночи сработала сигнализация мониторинга реактора. Управляющий компьютер завис, не сумев обработать дату. Аварии избежали только потому, что критический контур управления был аналоговым.
-- Спутники-шпионы (США): Пентагон на несколько дней потерял поток данных с сети спутников — наземная станция не смогла распарсить новые timestamp'ы.
-- Медицина (Великобритания): В Шеффилде компьютеры начали выдавать неверные расчеты рисков для беременных, вычитая год рождения из текущего и получая абсурдные результаты.
-- Гемблинг (США): В Делавэре встали 700 лотерейных терминалов — их внутренние таймеры отказались работать с «нулевым» годом.
Проблема 2038
Следующий, более жесткий дедлайн уже известен: 03:14:07 UTC 19 января 2038 года.
В этот момент 32-битное знаковое целое число (signed 32-bit integer), используемое в Unix-системах для отсчета времени (POSIX time), переполнится. Значение сменится с 2 147 483 647 на -2 147 483 648, и системы «прыгнут» в 13 декабря 1901 года.
Если Y2K решался на уровне прикладного софта и BIOS, то проблема 2038 (Y2k38) зашита в типы данных файловых систем, драйверов и ядер старых RTOS. Многие IoT-устройства, промышленные контроллеры и встраиваемые системы, которые мы проектируем и монтируем сегодня на 32-битных MCU, рискуют превратиться в тыкву через 13 лет. (с)
Основной удар тогда пришелся не на банковский софт, а на архитектурные ограничения железа и логику встраиваемых систем, вот пара примеров:
1. Аппаратная амнезия Motorola MC146818.
В основе архитектуры IBM PC AT и его клонов лежал чип часов реального времени (RTC) Motorola MC146818. Его регистр года был 8-битным (формат BCD) и хранил значения от 00 до 99. О понятии «столетие» сам чип ничего не знал.
Инженеры выделили байт в CMOS-памяти (адрес 0x32) для хранения века (19 или 20). Однако контроллер не умел инкрементировать этот байт при переходе 99->00. Это должен был делать BIOS. Миллионы плат имели «кривой» BIOS, который забывал обновить ячейку 0x32. В итоге, часы сбрасывались в 00, система читала старое столетие и думала, что на дворе 1900 год. Патчили это перепрошивкой или TSR-резидентами.
2. Ловушка «отрицательного времени» в Embedded
В промышленнных контроллерах дата часто использовалась для расчетов интервалов техобслуживания:
Time_Since_Service = Current_Date - Last_Service_Date
При наступлении 2000 года уравнение превращалось в 00 - 98. Это приводило к двум сценариям:
-- Integer Overflow: Система получала огромное число, решала, что станок не обслуживали 99 лет, и срабатывала аварийная блокировка.
-- Отрицательное значение: Система считала, что обслуживание проведено в будущем, ломая логику планировщиков.
Были ли реальные инциденты?
Сбоев было не так много и произошли они именно там, где работала жесткая логика и старое железо:
-- АЭС Онагава (Япония): Через две минуты после полуночи сработала сигнализация мониторинга реактора. Управляющий компьютер завис, не сумев обработать дату. Аварии избежали только потому, что критический контур управления был аналоговым.
-- Спутники-шпионы (США): Пентагон на несколько дней потерял поток данных с сети спутников — наземная станция не смогла распарсить новые timestamp'ы.
-- Медицина (Великобритания): В Шеффилде компьютеры начали выдавать неверные расчеты рисков для беременных, вычитая год рождения из текущего и получая абсурдные результаты.
-- Гемблинг (США): В Делавэре встали 700 лотерейных терминалов — их внутренние таймеры отказались работать с «нулевым» годом.
Проблема 2038
Следующий, более жесткий дедлайн уже известен: 03:14:07 UTC 19 января 2038 года.
В этот момент 32-битное знаковое целое число (signed 32-bit integer), используемое в Unix-системах для отсчета времени (POSIX time), переполнится. Значение сменится с 2 147 483 647 на -2 147 483 648, и системы «прыгнут» в 13 декабря 1901 года.
Если Y2K решался на уровне прикладного софта и BIOS, то проблема 2038 (Y2k38) зашита в типы данных файловых систем, драйверов и ядер старых RTOS. Многие IoT-устройства, промышленные контроллеры и встраиваемые системы, которые мы проектируем и монтируем сегодня на 32-битных MCU, рискуют превратиться в тыкву через 13 лет. (с)
🔥25❤9👍9👎2
This media is not supported in your browser
VIEW IN TELEGRAM
Читатели объясняют автору, как нужно вести канал "на нашей фабричке" следующие 88 дней.
Ну и вы не молчите, расскажите что вам нравится, а что нужно убрать/поменять/добавить.
Всё ж 88 дней — немалый срок.
Ну и вы не молчите, расскажите что вам нравится, а что нужно убрать/поменять/добавить.
Всё ж 88 дней — немалый срок.
🔥12😁12❤2👎2👍1
Многие думают, что антенны «отправляют» радиоволны, как шланг разбрызгивает воду. Но настоящая магия происходит не в антенне, а в пространстве вокруг неё. Антенна лишь перераспределяет электромагнитное поле вокруг себя.
Направленные антенны не увеличивают общую мощность — они «забирают» энергию из одних направлений и концентрируют её в других. Именно поэтому пассивная металлическая конструкция может создавать «усиление», ничего не усиливая.
На практике многие массовые устройства оснащаются антеннами, которые на бумаге выглядят «неправильно»: изогнутые дорожки, асимметричные формы, неидеальное согласование. Почему? Потому что корпус, батарея, «земля» и даже рука пользователя становятся частью антенной системы.
Хороший инженер не борется с окружением, а использует его. Поэтому финальную настройку всегда делают в готовом изделии — чтобы среда стала частью решения. (c)
<86>
Направленные антенны не увеличивают общую мощность — они «забирают» энергию из одних направлений и концентрируют её в других. Именно поэтому пассивная металлическая конструкция может создавать «усиление», ничего не усиливая.
На практике многие массовые устройства оснащаются антеннами, которые на бумаге выглядят «неправильно»: изогнутые дорожки, асимметричные формы, неидеальное согласование. Почему? Потому что корпус, батарея, «земля» и даже рука пользователя становятся частью антенной системы.
Хороший инженер не борется с окружением, а использует его. Поэтому финальную настройку всегда делают в готовом изделии — чтобы среда стала частью решения. (c)
<86>
🔥35👎7👍4❤2😁1
Как ошибается чемпион: 10 инженерных и бизнес-провалов Intel
1. Intel Galileo (2013–2015, потеряно 50–70 млн $)
Intel запустила Galileo как x86-совместимую плату для Arduino-сообщества, рассчитывая затащить embedded-разработчиков в свою экосистему. Железо работало, но платформа нарушала базовую физику встраиваемых систем: долго грузилась, потребляла слишком много энергии и не обеспечивала предсказуемого real-time поведения. Для экспериментов — интересно, для серийного продукта — мимо. Платформу тихо закрыли.
2. Intel Edison (2014–2016, ~150–200 млн $)
Edison задумывался как компактный, готовый к продакшену IoT-модуль. На практике он требовал сложного питания, работал под Linux там, где ожидался RTOS, и был слишком прожорлив для батарейных устройств. Инженеры могли делать демо, но производители не могли сертифицировать и масштабировать продукты. Проект закрыли через два года.
3. Intel Quark (2013–2016, ~300 млн $)
Quark был попыткой зайти в рынок микроконтроллеров. Intel подошла к MCU как к «маленькому CPU», игнорируя реальность: ультра-низкое энергопотребление, жёсткий real-time и жизненный цикл 10–15 лет. Инструменты были сырыми, энергопотребление хуже ARM, экосистемы не было. Рынок не увидел причин переходить, линейку свернули.
4. Intel RealSense (2013–2020, ~400–500 млн $)
RealSense — сильная технология глубинных камер: structured light, стерео, позже ToF. Провал был не в сенсорах, а в системе. Высокое энергопотребление, слабая интеграция и ставка на то, что рынок сам найдёт применение. Конкуренты шли вертикально, Intel — компонентно. Без «тяги» со стороны конечного продукта платформа выдохлась.
5. Носимые устройства Intel (Basis, Curie) (2014–2017, ~500–600 млн $)
Intel пыталась войти в wearables через собственные платформы и покупки. Кремний работал, но автономность, интеграция и ПО сильно уступали конкурентам. Wearables безжалостны к неэффективности — пользователи не прощают. После серии отмен Intel полностью вышла из сегмента.
6. Планшеты на Atom (Bay Trail, Cherry Trail) (2013–2016, ~1,0–1,2 млрд $)
Intel протолкнула Atom в планшеты через прямые субсидии OEM-ам. Производительность была нормальной, но энергоэффективность и интеграция модемов уступали ARM-платформам. Продажи держались только на деньгах Intel. Как только субсидии закончились, рынок исчез мгновенно. Это была покупка объёма, а не принятия рынком.
7. Сотовые модемы Intel (2011–2019, ~1,5–2,0 млрд $)
После покупки Infineon Wireless Intel попыталась конкурировать с Qualcomm. Модемы отставали по энергопотреблению, RF-части и скорости сертификации у операторов. Apple использовала Intel как рычаг давления, а не как лучший выбор. Паритета достичь не удалось, бизнес был закрыт.
8. Смартфонные SoC Intel Atom (2012–2016, ~3–4 млрд $)
Atom Z (Medfield, Merrifield) предлагал высокую производительность, но проигрывал по утечкам, теплу и отсутствию интегрированного модема. Смартфоны требуют battery-first архитектуры и глубокой интеграции. Atom был «ПК, посаженный на диету». После прекращения субсидий вся программа рухнула.
9. IoT Group как бизнес-направление (2014–2019, ~4–5 млрд $)
Intel пыталась определить IoT как «edge-compute». Продукты оказались между мирами: слишком дорогие для сенсоров, слишком слабые для гейтвеев, без радиочастей и акселераторов. Компания недооценила фрагментацию и ценовое давление. После череды реорганизаций направление было распущено.
10. Itanium (1997–2017, ~10–15 млрд $)
Самый дорогой провал Intel. Архитектура EPIC предполагала, что компиляторы смогут лучше железа извлекать параллелизм. На практике сложность компиляторов взорвалась, совместимость пострадала, а x86 ускорялся быстрее ожиданий. Платформа держалась на корпоративных контрактах, но экосистемы так и не получила.
Ошибаются все, это нормально, это часть бизнеса. Но Intel похоже чемпион в этом виде спорта, такое количество провалов мало кто мог бы вынести.(c)
<85>
1. Intel Galileo (2013–2015, потеряно 50–70 млн $)
Intel запустила Galileo как x86-совместимую плату для Arduino-сообщества, рассчитывая затащить embedded-разработчиков в свою экосистему. Железо работало, но платформа нарушала базовую физику встраиваемых систем: долго грузилась, потребляла слишком много энергии и не обеспечивала предсказуемого real-time поведения. Для экспериментов — интересно, для серийного продукта — мимо. Платформу тихо закрыли.
2. Intel Edison (2014–2016, ~150–200 млн $)
Edison задумывался как компактный, готовый к продакшену IoT-модуль. На практике он требовал сложного питания, работал под Linux там, где ожидался RTOS, и был слишком прожорлив для батарейных устройств. Инженеры могли делать демо, но производители не могли сертифицировать и масштабировать продукты. Проект закрыли через два года.
3. Intel Quark (2013–2016, ~300 млн $)
Quark был попыткой зайти в рынок микроконтроллеров. Intel подошла к MCU как к «маленькому CPU», игнорируя реальность: ультра-низкое энергопотребление, жёсткий real-time и жизненный цикл 10–15 лет. Инструменты были сырыми, энергопотребление хуже ARM, экосистемы не было. Рынок не увидел причин переходить, линейку свернули.
4. Intel RealSense (2013–2020, ~400–500 млн $)
RealSense — сильная технология глубинных камер: structured light, стерео, позже ToF. Провал был не в сенсорах, а в системе. Высокое энергопотребление, слабая интеграция и ставка на то, что рынок сам найдёт применение. Конкуренты шли вертикально, Intel — компонентно. Без «тяги» со стороны конечного продукта платформа выдохлась.
5. Носимые устройства Intel (Basis, Curie) (2014–2017, ~500–600 млн $)
Intel пыталась войти в wearables через собственные платформы и покупки. Кремний работал, но автономность, интеграция и ПО сильно уступали конкурентам. Wearables безжалостны к неэффективности — пользователи не прощают. После серии отмен Intel полностью вышла из сегмента.
6. Планшеты на Atom (Bay Trail, Cherry Trail) (2013–2016, ~1,0–1,2 млрд $)
Intel протолкнула Atom в планшеты через прямые субсидии OEM-ам. Производительность была нормальной, но энергоэффективность и интеграция модемов уступали ARM-платформам. Продажи держались только на деньгах Intel. Как только субсидии закончились, рынок исчез мгновенно. Это была покупка объёма, а не принятия рынком.
7. Сотовые модемы Intel (2011–2019, ~1,5–2,0 млрд $)
После покупки Infineon Wireless Intel попыталась конкурировать с Qualcomm. Модемы отставали по энергопотреблению, RF-части и скорости сертификации у операторов. Apple использовала Intel как рычаг давления, а не как лучший выбор. Паритета достичь не удалось, бизнес был закрыт.
8. Смартфонные SoC Intel Atom (2012–2016, ~3–4 млрд $)
Atom Z (Medfield, Merrifield) предлагал высокую производительность, но проигрывал по утечкам, теплу и отсутствию интегрированного модема. Смартфоны требуют battery-first архитектуры и глубокой интеграции. Atom был «ПК, посаженный на диету». После прекращения субсидий вся программа рухнула.
9. IoT Group как бизнес-направление (2014–2019, ~4–5 млрд $)
Intel пыталась определить IoT как «edge-compute». Продукты оказались между мирами: слишком дорогие для сенсоров, слишком слабые для гейтвеев, без радиочастей и акселераторов. Компания недооценила фрагментацию и ценовое давление. После череды реорганизаций направление было распущено.
10. Itanium (1997–2017, ~10–15 млрд $)
Самый дорогой провал Intel. Архитектура EPIC предполагала, что компиляторы смогут лучше железа извлекать параллелизм. На практике сложность компиляторов взорвалась, совместимость пострадала, а x86 ускорялся быстрее ожиданий. Платформа держалась на корпоративных контрактах, но экосистемы так и не получила.
Ошибаются все, это нормально, это часть бизнеса. Но Intel похоже чемпион в этом виде спорта, такое количество провалов мало кто мог бы вынести.(c)
<85>
❤15👍13👎6🔥4
Мы тут оцифровали свою стратегию до 2030 года, и получилось, что есть все шансы вырасти в 16 (шестнадцать!!) раз. До выручки в 20 млрд ₽, при этом по персоналу нужно будет вырасти до 400-500 человек.
Звучит невероятно, понимаю. Чтобы это произошло, всё должно получаться, и без сильной конкуренции.
Но почему бы не попытаться? Оно того точно стоит.
Звучит невероятно, понимаю. Чтобы это произошло, всё должно получаться, и без сильной конкуренции.
Но почему бы не попытаться? Оно того точно стоит.
🔥33👍16😁6❤2👎1
А в этом году главная задача — поднять выручку на одного сотрудника в два раза.
Для этого надо суметь выполнить все существующие заказы без роста штата.
Просто больше и лучше работать. Ничего нового.
<84>
Для этого надо суметь выполнить все существующие заказы без роста штата.
Просто больше и лучше работать. Ничего нового.
<84>
🔥19😁17👎6👍5❤2
Ну да, работать больше и лучше. И ещё расставаться с теми, кто не тянет. И набирать новых, перспективных — тех, кто может стать чемпионами.
А как ещё расти на 70% в год? За счёт чего поднимать зарплаты, покупать новые станки?
А как ещё расти на 70% в год? За счёт чего поднимать зарплаты, покупать новые станки?
😁19❤3👎3👍2
Обожаю Новый Год, но ненавижу долгие выходные. Одной недели было бы вполне достаточно.
Спасаясь от пьянства и деградации, улетел работать в Китай.
<83>
Спасаясь от пьянства и деградации, улетел работать в Китай.
<83>
👍26👎19🔥8❤6
Из необычного — панели на станках крепят по периметру клеем-пистолетом
🔥12👎2