เรียกใช้ XV6-RISCV บนบอร์ด K210
ภาษาอังกฤษ | 中文
(`-') (`-') <-.(`-')
(OO )_.-> _(OO ) __( OO)
(_| _)--.,--.(_/,-. ,--. (`-') '-'. ,--. .----. .--. .----.
`.' / / (_/ / .' ( OO).-> | .' / _,-. | /_ | / ..
.') / / . / -. (,------. | /) .' .' | | | / .
.' _ /_)' .-. `------' | . ' .' /_ | | ' / '
/ .'. -' / `-' / | | | | | | `' /
`--' '--' `-' `----' `--' '--' `------' `--' `---''

k210 board หรือ qemu-system-riscv64git clone https://github.com/HUST-OS/xv6-k210 ก่อนอื่นคุณต้องเชื่อมต่อบอร์ด K210 กับพีซีของคุณ
และตรวจสอบ USB serial port (ในสถานการณ์ของฉันมันจะเป็น ttyUSB0 ):
ls /dev/ | grep USBสร้างเคอร์เนลและโปรแกรมผู้ใช้:
cd xv6-k210
make build แทนที่จะเป็นระบบไฟล์ต้นฉบับ XV6-K210 ทำงานด้วย FAT32 คุณอาจต้องใช้การ์ด SD ที่มีรูปแบบ FAT32
การ์ด SD ของคุณไม่ควรเก็บตารางพาร์ติชัน ในการเริ่ม shell และโปรแกรมผู้ใช้อื่น ๆ คุณต้องคัดลอกลงในการ์ด SD ของคุณ
ก่อนอื่นให้เชื่อมต่อและติดตั้งการ์ด SD ของคุณ (ต้องใช้เครื่องอ่านการ์ด SD)
ls /dev/ # To check your SD device
mount < your SD device name > < mount point >
make sdcard dst= " SD card mount point "
umount < mount point >จากนั้นใส่การ์ด SD ลงในบอร์ด K210 ของคุณแล้วเรียกใช้:
make run บางครั้งคุณควรเปลี่ยน USB serial port :
make run k210-serialport= ` Your-USB-port ` (default by ttyUSB0)PS: K210-Port ส่วนใหญ่ใน Linux คือ TTYUSB0 หากคุณใช้ Windows หรือ Mac OS เอกสารนี้อาจช่วยคุณได้: Maixpy-Doc
ก่อนอื่นตรวจสอบให้แน่ใจว่ามีการติดตั้ง qemu-system-riscv64 ในระบบของคุณ
ประการที่สองสร้างไฟล์อิมเมจดิสก์ด้วยระบบไฟล์ FAT32
make fs มันจะสร้างไฟล์อิมเมจดิสก์ fs.img และรวบรวมโปรแกรมผู้ใช้บางโปรแกรมเช่น shell แล้วคัดลอกลงใน fs.img
ตราบใดที่ fs.img มีอยู่คุณไม่จำเป็นต้องทำสิ่งนี้ทุกครั้งก่อนที่จะทำงานเว้นแต่คุณต้องการอัปเดต
ในที่สุดเริ่มวิ่ง
make run platform=qemuPS: กด Ctrl + a จากนั้น x เพื่อออกจาก Qemu
คำสั่งเชลล์เป็นโปรแกรมผู้ใช้เช่นกัน โปรแกรมเหล่านั้นควรใส่ในไดเรกทอรี "/bin" ในการ์ด SD ของคุณหรือ fs.img
ตอนนี้เราสนับสนุนคำสั่งที่มีประโยชน์สองสามข้อเช่น cd , ls , cat และอื่น ๆ
นอกจากนี้ shell ยังรองรับปุ่มลัดบางส่วนด้านล่าง:
xv6-user/ Like myprog.c และใส่รหัสของคุณuser.h เพื่อใช้ฟังก์ชั่นที่ประกาศไว้เช่น open , gets และ printf ;$U/_myprog " ใน Makefile ดังต่อไปนี้: UPROGS =
$U/_init
$U/_sh
$U/_cat
...
$U/_myprog # Don't ignore the leading '_'make userprogs_myprog ใน xv6-user/ หากไม่พบข้อผิดพลาด ในที่สุดคุณต้องคัดลอกลงใน SD ของคุณ (ดูที่นี่) หรือภาพ FS (ดูที่นี่) แก้ไขข้อบกพร่องของข้อยกเว้นโหมด U บน K210