Вопреки многим скептикам и вразрез с прежней порочной практикой, государство так и не пускает на самотёк импортозамещение в области вычислительной техники, что не может не радовать. С завидным упорством проходят всё новые и новые совещания в правительстве, Минцифре и Минпромторге на эту тему, и неспроста — импортозамещение не проходит гладко, и постоянно требует решения всё новых и новых возникающих вопросов.
Софт
Мы знаем, что в процессе замены компьютеров на процессорах Intel и AMD компьютерами на российских процессорах Байкал и Эльбрус в госструктурах и компаниях с госучастием возникло много трудностей не столько с производительностью систем, сколько с совместимостью программного обеспечения. Для задач, отличающихся от простой офисной работы, зачастую просто не оказалось программ, которые могли бы выполняться на процессорах Байкал и Эльбрус, имеющих другие системы команд (причём разные). Весь имеющийся софт был скомпилирован исключительно для системы команд x86, что неудивительно.
Здесь и далее под системой команд x86 понимается как, собственно, 32-битная система команд x86, так и 64-битная система команд x86-64, ещё известная как AMD64, Intel 64, x64, EM64T, AA-64 (AMD Architecture 64), Hammer Architecture, Yamhill Technology или IA-32e.
Для форсированного решения этого вопроса тоже потребовалось участие государства, как координирующего, направляющего и финансирующего органа. Так, 11 октября 2021 года прошло совещание Минцифры с участниками рынка по вопросу обеспечения совместимости российского ПО с отечественным радиоэлектронным оборудованием. Минцифры совместно с Минпромторгом собирается ввести в перечень обязательных требований для включения в реестр радиоэлектроники необходимость совместимости с софтом, разработанным под процессоры на архитектуре x86. То есть, компьютеры на базе процессоров Байкал и Эльбрус должны быть в состоянии запускать программы, написанные не только для своих систем команд, но и для системы команд x86.
Совместимость может быть обеспечена при помощи эмуляторов микропроцессорных платформ (специального софта, позволяющего выполнять программы на платформе, отличной от той, для которой они были изначально написаны).
У Эльбруса такая возможность предусмотрена изначально, причём в двух вариантах — как транслятор уровня системы, позволяющий запускать Windows или Linux, скомпилированные под x86,
так и транслятор уровня приложений, позволяющий запускать прикладные программы Linux, скомпилированные под х86:
У Байкала же, насколько мне известно, пока нет штатного эмулятора, хотя, поскольку архитектура ядер относительно распространённая (ведь она лицензируемая), то кое-какие наработки есть у сторонних разработчиков. Вместе с тем, по словам директора Центра компетенций по импортозамещению в сфере информационно-коммуникационных технологий (ЦКИКТ), работы по созданию своего эмулятора могут получить господдержку. Думаю, что тогда господдержку должны получить также и работы по развитию эмуляторов Эльбруса, иначе будет не совсем несправедливо по отношению к МЦСТ.
Железо
Кроме того, Минцифры и Минпромторг должны выбрать приоритетную отечественную микропроцессорную платформу, которую будут обязаны поддерживать все российские разработчики ПО. Вот насчёт этого решения возникают вопросы. Не очень понятна его цель. Ведь разработчик вполне в состоянии писать и компилировать свой собственный код под любые платформы, что и является, собственно, сегодняшним мировым трендом и даже трендом всего последнего десятилетия. Зачем в этих условиях ориентировать разработчиков на какую-то одну платформу — мне совершенно неясно.
Единственным логическим объяснением этого может стать выбор максимально независимой от технологий внешних конкурентов системы. В этом случае преимущество однозначно получает Эльбрус, поскольку в отличие от Байкала у него собственная система команд и собственные ядра. Но имеет ли смысл определяться с выбором приоритетной платформы именно сегодня, на этапе, когда оба процессора делают ещё только первые шаги на рынке универсальных процессоров, а процессора на системе команд RISC-V, разработка которого была не так давно анонсирована, ещё нет даже в чертежах?
Заключение
Пишите свои соображения по поводу выбора приоритетной платформы в комментариях. Своевременно ли это? Надо или не надо это делать вообще? Если надо, то почему надо и что выбрать? Буду рад также другим вашим мыслям по теме статьи. Пишите, подписывайтесь на канал, ставьте лайки. Пока! :-)