Execute XV6-RISCV na placa K210
Inglês | 中文
(`-') (`-') <-.(`-')
(OO )_.-> _(OO ) __( OO)
(_| _)--.,--.(_/,-. ,--. (`-') '-'. ,--. .----. .--. .----.
`.' / / (_/ / .' ( OO).-> | .' / _,-. | /_ | / ..
.') / / . / -. (,------. | /) .' .' | | | / .
.' _ /_)' .-. `------' | . ' .' /_ | | ' / '
/ .'. -' / `-' / | | | | | | `' /
`--' '--' `-' `----' `--' '--' `------' `--' `---''

k210 board ou qemu-system-riscv64git clone https://github.com/HUST-OS/xv6-k210 Primeiro, você precisa conectar sua placa K210 ao seu PC.
E verifique a USB serial port (na minha situação, será ttyUSB0 ):
ls /dev/ | grep USBConstrua o kernel e o programa de usuário:
cd xv6-k210
make build Em vez do sistema de arquivos original, o XV6-K210 é executado com o FAT32. Você pode precisar de um cartão SD com formato FAT32.
Seu cartão SD não deve manter uma tabela de partição. Para iniciar shell e outros programas de usuário, você precisa copiá -los para o seu cartão SD.
Primeiro, conecte e monte seu cartão SD (o leitor de cartão SD necessário).
ls /dev/ # To check your SD device
mount < your SD device name > < mount point >
make sdcard dst= " SD card mount point "
umount < mount point >Em seguida, insira o cartão SD na sua placa K210 e execute:
make run Às vezes você deve alterar a USB serial port :
make run k210-serialport= ` Your-USB-port ` (default by ttyUSB0)PS: A maior parte do K210-port no Linux é o TTYUSB0, se você usar o Windows ou Mac OS, este documento pode ajudá-lo: MAIXPY-DOC
Primeiro, verifique se qemu-system-riscv64 está instalado no seu sistema.
Segundo, faça um arquivo de imagem em disco com o sistema de arquivos FAT32.
make fs Ele gerará um arquivo de imagem de disco fs.img e compilará alguns programas de usuário como shell e copiarão -os no fs.img .
Enquanto o fs.img existir, você não precisará fazer isso sempre antes de executar, a menos que deseje atualizá -lo.
Finalmente, comece a correr.
make run platform=qemuPS: Pressione Ctrl + A então x para sair do Qemu.
Os comandos do shell também são programas de usuário. Esses programas devem ser colocados em um diretório "/bin" no seu cartão SD ou no fs.img .
Agora, apoiamos alguns comandos úteis, como cd , ls , cat e assim por diante.
Além disso, shell suporta algumas teclas de atalho como abaixo:
xv6-user/ like myprog.c e coloque seus códigos;user.h para usar as funções declaradas nele, como open , gets e printf ;$U/_myprog " no Makefile como abaixo: UPROGS =
$U/_init
$U/_sh
$U/_cat
...
$U/_myprog # Don't ignore the leading '_'make userprogs_myprog no xv6-user/ se nenhum erro detectado. Finalmente, você precisa copiá -lo para o seu SD (veja aqui) ou imagem FS (veja aqui). Corrija os erros da exceção no modo U no K210.