Exécutez XV6-RISCV sur K210 Board
Anglais | 中文
(`-') (`-') <-.(`-')
(OO )_.-> _(OO ) __( OO)
(_| _)--.,--.(_/,-. ,--. (`-') '-'. ,--. .----. .--. .----.
`.' / / (_/ / .' ( OO).-> | .' / _,-. | /_ | / ..
.') / / . / -. (,------. | /) .' .' | | | / .
.' _ /_)' .-. `------' | . ' .' /_ | | ' / '
/ .'. -' / `-' / | | | | | | `' /
`--' '--' `-' `----' `--' '--' `------' `--' `---''

k210 board ou qemu-system-riscv64git clone https://github.com/HUST-OS/xv6-k210 Vous devez d'abord connecter votre carte K210 à votre PC.
Et vérifiez le USB serial port (dans ma situation, ce sera ttyUSB0 ):
ls /dev/ | grep USBConstruisez le programme du noyau et de l'utilisateur:
cd xv6-k210
make build Au lieu du système de fichiers d'origine, XV6-K210 s'exécute avec FAT32. Vous pourriez avoir besoin d'une carte SD au format FAT32.
Votre carte SD ne doit pas conserver une table de partition. Pour démarrer shell et d'autres programmes d'utilisateurs, vous devez les copier dans votre carte SD.
Tout d'abord, connectez et montez votre carte SD (lecteur de carte SD requis).
ls /dev/ # To check your SD device
mount < your SD device name > < mount point >
make sdcard dst= " SD card mount point "
umount < mount point >Ensuite, insérez la carte SD à votre carte K210 et exécutez:
make run Parfois, vous devriez changer le USB serial port :
make run k210-serialport= ` Your-USB-port ` (default by ttyUSB0)PS: La plupart du port K210 dans Linux est TTYUSB0, si vous utilisez Windows ou Mac OS, ce DOC peut vous aider: Maixpy-doc
Tout d'abord, assurez-vous que qemu-system-riscv64 est installé sur votre système.
Deuxièmement, faites un fichier image disque avec le système de fichiers FAT32.
make fs Il générera un fichier d'image de disque fs.img et compilera certains programmes utilisateur comme shell , puis les copiez dans le fs.img .
Tant que le fs.img existe, vous n'avez pas besoin de le faire à chaque fois avant de courir, sauf si vous souhaitez le mettre à jour.
Enfin, commencez à courir.
make run platform=qemuPS: appuyez sur Ctrl + A puis x pour quitter Qemu.
Les commandes shell sont également des programmes utilisateur. Ces programmes doivent être placés dans un répertoire "/ bin" dans votre carte SD ou fs.img .
Maintenant, nous prenons en charge quelques commandes utiles, telles que cd , ls , cat , etc.
De plus, shell prend en charge certaines clés de raccourci comme ci-dessous:
xv6-user/ like myprog.c et mettez vos codes;user.h pour utiliser les fonctions déclarées, comme open , gets et printf ;$U/_myprog " dans Makefile comme ci-dessous: UPROGS =
$U/_init
$U/_sh
$U/_cat
...
$U/_myprog # Don't ignore the leading '_'make userprogs_myprog dans xv6-user/ si aucune erreur ne détecte. Enfin, vous devez le copier dans votre image SD (voir ici) ou FS (voir ici). Correction de l'exception des bogues de U-mode sur K210.