ПО, ЭВМ и АСУ из Таможенного Союза

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » ПО, ЭВМ и АСУ из Таможенного Союза » Арм64 (Байкал-М, Arm v8) » Эмуляция arm64 в qemu в chroot


Эмуляция arm64 в qemu в chroot

Сообщений 1 страница 2 из 2

1

Это нужно для того, чтобы воспользоваться кросс-компилированным grub для установки в образ из скрипта.

Вообще говоря, можно было бы исправить конфигурацию системного grub, и использовать его для двух целей - для установки на платформу x86_64 и на aarch64,
но мне хотелось бы не трогать (исходя из принципа "Cолнце всегда там садилось? Тогда оставь как есть и ничего не трогай.")

[html]<a href="https://wiki.gentoo.org/wiki/Embedded_Handbook/General/Compiling_with_qemu_user_chroot">
https://wiki.gentoo.org/wiki/Embedded_H … </a>[/html]

Отредактировано Лис (2021-02-02 23:47:56)

0

2

На странице
https://www.kernel.org/doc/html/latest/ … -misc.html
подробно расписывается:
1) что в ядре есть модуль (и как он называется)
2) что этот модуль доступен через файловую систему (и как её примонтировать)
The executable formats are registered through the special purpose file system
(usually mounted under part of /proc)
3) куда в файловую систему и что записывать, какие поля для чего нужны:
4) как запрещать/разрешать обработку формата.
You can enable/disable binfmt_misc or one binary type by echoing 0 (to disable) or 1 (to enable) to /proc/sys/fs/binfmt_misc/status or /proc/.../the_name. Catting the file tells you the current status of binfmt_misc/the_entry.
5) как передавать дополнительные аргументы в интерпретатор (но это не нужно? или нужно для -L ... ?)
«If you want to pass special arguments to your interpreter, you can write a wrapper script for it»

На странице
https://github.com/multiarch/qemu-user- … s_guide.md
написана магия (но не поясняется, почему она такая):
$ cat /proc/sys/fs/binfmt_misc/qemu-aarch64
enabled
interpreter /usr/bin/qemu-aarch64-static
flags: F
offset 0
magic 7f454c460201010000000000000000000200b700
mask ffffffffffffff00fffffffffffffffffeffffff

На странице
https://en.wikipedia.org/wiki/Binfmt_misc
говорится про сервис systemd-binfmt.service из состава systemd

Это справка по нему:
https://www.freedesktop.org/software/sy … fmt.d.html
https://www.freedesktop.org/software/sy … rvice.html
https://github.com/systemd/systemd/blob … misc.mount

Отредактировано Лис (2021-02-04 10:02:36)

0


Вы здесь » ПО, ЭВМ и АСУ из Таможенного Союза » Арм64 (Байкал-М, Arm v8) » Эмуляция arm64 в qemu в chroot