Ports/riscv64: различия между версиями

Материал из ALT Linux Wiki
м (+интервики)
м (Remove QEMU section and add info about Regular)
Строка 20: Строка 20:


На данной странице можно найти последнюю информацию о статусе порта ALT на RISC-V (RV64GC).
На данной странице можно найти последнюю информацию о статусе порта ALT на RISC-V (RV64GC).
Сборка системы ведётся на плате SiFive [https://www.crowdsupply.com/sifive/hifive-unleashed HiFive Unleashed]
Сборка системы ведётся на плате SiFive [https://www.crowdsupply.com/sifive/hifive-unleashed HiFive Unleashed].
Для целей тестирования выполняется сборка образов для QEMU и платы HiFive Unleashed. Подробнее об этом можно прочитать [https://www.altlinux.org/Regular/riscv64 тут]


== '''Рабочий план''' ==
== '''Рабочий план''' ==
Строка 27: Строка 28:
** 4.15
** 4.15
** 4.19-rc2
** 4.19-rc2
** 4.19.6 ([http://ftp.altlinux.org/pub/people/arei/riscv/repo/riscv64/RPMS.hasher/kernel-image-un-def-4.19.6-alt3.riscv64.rpm image RPM], [http://ftp.altlinux.org/pub/people/arei/riscv/repo/riscv64/SRPMS.hasher/kernel-image-un-def-4.19.6-alt3.src.rpm SRPM], [http://git.altlinux.org/people/arei/packages/kernel-image.git?p=kernel-image.git;a=commit;h=a420ee4217797b60b27ce60fd80a39166ddf2143 git])
** 4.19.6 ([http://ftp.altlinux.org/pub/distributions/ALTLinux/ports/riscv64/Sisyphus/files/riscv64/RPMS/kernel-image-un-def-4.19.6-alt5.riscv64.rpm image RPM], [http://ftp.altlinux.org/pub/distributions/ALTLinux/ports/riscv64/Sisyphus/files/SRPMS/kernel-image-un-def-4.19.6-alt5.src.rpm SRPM], [http://git.altlinux.org/people/arei/packages/kernel-image.git?p=kernel-image.git;a=commit;h=a420ee4217797b60b27ce60fd80a39166ddf2143 git])


* Методы загрузки (boot):
* Методы загрузки (boot):
Строка 43: Строка 44:


RPM/SRPM репозиторий можно найти по [http://ftp.altlinux.org/pub/distributions/ALTLinux/ports/riscv64/Sisyphus/ этой ссылке].
RPM/SRPM репозиторий можно найти по [http://ftp.altlinux.org/pub/distributions/ALTLinux/ports/riscv64/Sisyphus/ этой ссылке].
== '''QEMU''' ==
Для запуска порта ALT на RISC-V необходимо установить QEMU с поддержкой riscv64.
Например, в случае хостовой системы на ALT x86_64: [http://sisyphus.ru/en/srpm/Sisyphus/qemu qemu-system-riscv-core].
Также необходимы:
* ALT image -- в процессе
* [http://ftp.altlinux.org/pub/people/arei/riscv/repo/riscv64/RPMS.hasher/kernel-image-qemu-un-def-4.19.6-alt3.noarch.rpm ядро Linux для QEMU]
После этого, можно запускать ядро!
(возможно, что необходимо изменить пути к ядру и rootfs для вашей системы)
<source lang="shell">
qemu-system-riscv64 \
  -nographic -machine virt -kernel /boot/vmlinux-4.19.6-un-def-alt3 \
  -drive file=rootfs.raw,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 \
  -append "earlyprintk root=/dev/vda rootwait fastboot console=ttyS0 debug sunrpc.debug STOP=udev" \
  -netdev user,id=eth0 -device virtio-net-device,netdev=eth0
</source>
Для входа в shell:
Username: root
Password: 123


== Полезные ссылки: ==
== Полезные ссылки: ==

Версия от 18:27, 29 марта 2019

RISC-V

RISC-V является архитектурой с открытым набором комманд (ISA). ISA RISC-V имеют лицензию Creative Commons license (CC BY 4.0). Любой желающий может получить финальную версию ISA пользовательского уровня и черновик ISA привилегированного уровня.

Другая ключевая особенность архитектуры RISC-V - её расширяемость, что позволяет создавать разнообразные реализации. Минимальная спецификация архитектуры RISC-V включает в себя только инструкции для записи, сохранения, переходов и целочисленной арифметики. Код инструкций не зависит от размера регистра, минимальная спецификация обозначается RV32I, RV64I или RV128I ("I" означает integer) для размеров операнда 4, 8 или 16 байт соответственно. На данный момент порт Linux работает со спецификацией "RV64IMAFDC" или "RV64GC" ("G" == "IMAFD"):

  • I - целочисленные базовые инструкции;
  • M - умножение и деление целых чисел;
  • A - атомарные операции;
  • F - число с плавающей запятой одинарной точности;
  • D - число с плавающей запятой двойной точности;
  • C - сжатые 16-битные инструкции.

На данной странице можно найти последнюю информацию о статусе порта ALT на RISC-V (RV64GC). Сборка системы ведётся на плате SiFive HiFive Unleashed. Для целей тестирования выполняется сборка образов для QEMU и платы HiFive Unleashed. Подробнее об этом можно прочитать тут

Рабочий план

  • Следующие ядра Linux были протестированы на SiFive HiFive Unleashed:
  • Методы загрузки (boot):
    • Berkeley bootloader -- ГОТОВО
    • U-BOOT (link) -- ГОТОВО
  • Порт Sisyphus -- В ПРОЦЕССЕ
    1. Toolchain -- ГОТОВО
    2. Linux Kernel -- ГОТОВО
    3. X11 -- ГОТОВО
    4. Desktop Environments -- В ПРОЦЕССЕ
  • образ ALT metaprofile -- В ПРОЦЕССЕ
  • Girar Builder -- ГОТОВО
  • образ для QEMU (см. ниже) -- ГОТОВО

RPM/SRPM репозиторий можно найти по этой ссылке.

Полезные ссылки: