diff --git a/sig/Hygon Arch/assets/csv3-test-memory-1.png b/sig/Hygon Arch/assets/csv3-test-memory-1.png new file mode 100644 index 0000000000000000000000000000000000000000..3480a2e4337626544022e3664cd2010a9e5d1ed3 Binary files /dev/null and b/sig/Hygon Arch/assets/csv3-test-memory-1.png differ diff --git a/sig/Hygon Arch/assets/csv3-test-memory-2.png b/sig/Hygon Arch/assets/csv3-test-memory-2.png new file mode 100644 index 0000000000000000000000000000000000000000..d6aafab3168c2b87ffc89b4a9a0c9059772e189a Binary files /dev/null and b/sig/Hygon Arch/assets/csv3-test-memory-2.png differ diff --git a/sig/Hygon Arch/assets/csv3-test-memory-3.png b/sig/Hygon Arch/assets/csv3-test-memory-3.png new file mode 100644 index 0000000000000000000000000000000000000000..8a8dacf3c2c3d472c52ed4406fcc9a0f86b4528c Binary files /dev/null and b/sig/Hygon Arch/assets/csv3-test-memory-3.png differ diff --git a/sig/Hygon Arch/assets/csv3-test-memory-4.png b/sig/Hygon Arch/assets/csv3-test-memory-4.png new file mode 100644 index 0000000000000000000000000000000000000000..02cb48fdd26c04c0a0840c2da936ba802c14365f Binary files /dev/null and b/sig/Hygon Arch/assets/csv3-test-memory-4.png differ diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/9-\346\265\213\350\257\225CSV3\345\206\205\345\255\230\351\232\224\347\246\273.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/9-\346\265\213\350\257\225CSV3\345\206\205\345\255\230\351\232\224\347\246\273.md" new file mode 100644 index 0000000000000000000000000000000000000000..9a15fec0d9cfd66f0b30dd74315dc47e90f84387 --- /dev/null +++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/9-\346\265\213\350\257\225CSV3\345\206\205\345\255\230\351\232\224\347\246\273.md" @@ -0,0 +1,116 @@ +测试之前,请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。 + +## 功能描述 +海光4号CPU支持CSV3安全虚拟化功能,在CSV/CSV2技术加密虚拟机内存和加密虚拟机寄存器的基础上,CSV3技术增加了虚拟机安全内存隔离、关键控制信息保护、嵌套页表完整性保护等功能。 + +本文演示读写CSV3虚拟机安全内存,展示内存访问隔离效果。 + +## 测试方案说明 + +### CSV3虚拟机内存物理地址 +CSV3虚拟机所使用的安全内存由主机操作系统从系统内存中分配,并不映射到用户态地址空间,无法直接从用户进程中获取。 +因此需要从主机操作系统内核中获取并打印出分配给CSV3虚拟机使用的内存地址,用于CSV3虚拟机内存读写测试。 + +### 测试用例说明 +首先启动CSV3安全虚拟机,获取主机操作系统为CSV3虚拟机分配的内存物理地址;然后执行测试用例,对CSV3虚拟机内存执行读写测试。 + +测试用例主要包括用户层测试用例程序和内核层驱动程序两部分。如图1所示,csv3_test为用户层测试用例程序,用于接收用户输入的CSV3虚拟机内存物理地址,并将该地址传递给内核层驱动,打印测试结果;csv3_dev.ko为内核层驱动程序,用于对用户层传递的内存物理地址建立页表映射,进行内存读写,并将读取的内存数据返回给用户层。 + + + +