Skip to content

VRISC-Project/vcore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vcore

vrisc架构虚拟处理器。

开始使用

  • 使用vrom.img作为启动镜像启动一个单核虚拟机:
cargo run --bin vcore --release -- -m 1048576 -v vrom.img -d
  • 查看vcore命令使用方法:
cargo run --bin vcore --release -- -h

说明

vrom.img是vcore可运行的启动代码二进制镜像,由VRISC-Project中的vas汇编器从vroms/test1.vas生成。

多处理器

支持多核,默认启动core#0并由此核心引导其它核心启动。

开发计划

  • [0.2]
    • 重构vcore debugger,使debugger交互性更强,命令输入更舒适快捷。[v]
    • 实现分页机制。[v]
    • 实现总线输入输出指令inout。[v]
    • 加入对多核的完整支持,以前的版本只能在debugger中启动其它核心,新版本中可以通过机器指令访问总线打开核心。[v]
    • 加入dma,使它能够顺利支持显示器和硬盘等设备。[v]
    • 加入扩展指令集。

特性

  • 内存访问上,若访问一段连续内存(一般是读取指令或串指令集中使用):连续内存不越过最小页框,连续读取; 越过最小页框,页框边界两边的两段内存分别读取。
  • initextdestext指令暂时无效。
  • 在开启vcore debugger的版本中,在step模式下,执行nop指令时查看寄存器,ip寄存器会指向下一个指令。
  • DMA功能直接通过获取DMAObject,绑定vcore内存访问,内存安全靠虚拟设备进程保证。

支持操作系统平台

平台 状态
Linux 0.2.4正在开发
Windows 正在开发

版本迭代

a.b.c

  • a: 由b进位得到。
  • b: 由开发计划规定,开发计划中此版本的所有功能完成后才可以将b增加,20进1位。
  • c: 每次完成一项开发计划,c就可以增加,大小没有上限。

发布版本

功能开发后可以获得完整体验时可以发布版本,没有充分debug时,发布预发行版。

About

vrisc虚拟处理器架构的实现。

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages