Текущие недостатки архитектуры ARM

Rich W.M. Jones разразился гневным постом о недостатках архитектуры ARM. Он особо выделяет следующее:

  • Нет стандартного дисплея или стандартного последовательного порта для debug-консоли. На некоторых моделях последовательный порт, который можно использовать на ранних этапах, конечно, есть, но как его задействовать - никак не стандартизировано. Если б ARM Holdings жестко выделила бы адресное пространство для COM-порта, это было бы здорово!
  • ARM-инструкции вообще не имеют некоего минимального общего набора (например, 8086). В совокупности с первым и несколькими последующими пунктами, это делает невозможным вообще создание одного единого загрузчика системы (BIOS).
  • Стандартом де-факто для загрузки является U-Boot. Но практически никто из ARM-производителей не работает с апстримом. Для нас, для участников Fedora Project, это довольно дико, но это так - для каждого ARM-устройства есть форкнутая года два назад и порядком устаревшая копия U-Boot.
  • Сам по себе U-Boot, это еще то удовольствие. Для сборки порой требуется по-особому собранный компилятор GCC, а потом нестандартные скрипты для установки его в совершенно нестандартные носители, на нестандартные таблицы разделов. Чуть где ошибся, и получил просто черный экран (см. первый пункт).
  • U-Boot порой просто не получается заменить, т.к. под ним или над ним есть нестандартный проприетарный блоб или блобы, как это сделано на Raspberry Pi.
  • Оборудование необходимо для каждой конфигурации описать вручную, с помощью Device Tree. Чуть где ошибся, и все - черный экран (см. первый пункт). К счастью (или к несчастью), как вы уже могли от нас слышать, участники Fedora выработали рекомендации для производителей нового оборудования на ARM, и там Device Tree больше не будет.
  • Стандартных средств для подписывания ядра тоже нет. В x86_64, в общем тоже нет, но наш коллега Peter Jones уже давно разрабатывает тулкит, который скорее всего и будет объявлен стандартным средством для подписывания ядер.


Rich W.M. Jones знал обо всем этом и раньше, но сейчас он по-особенному зол, т.к. из-за влияния одного или нескольких факторов из данного списка, количество загружающихся ARM-машин у него дома уменьшилось с трех до нуля.