一种Xen下的设备直通方法
摘要文本
麒麟软件有限公司取得“一种透气窗帘布”专利技术,本申请涉及一种Xen下的设备直通方法,包括准备客户机的初级版的设备树,准备客户机的配置文件,为客户机分配2^order个页面大小的静态连续内存并返回mfn,创建Stage2映射,并得到客户机的页帧号gfn,用户层基于gfn初始化客户机的构建参数,基于初级版的设备树、配置文件、gfn以及构建参数构建客户机的最终版的设备树,初始化客户机操作系统内存布局,操作系统内存包括内核、客户机的最终版的设备树、内核模块以及内存文件系统,将gfn映射到用户层,得到gvaddr,基于gvaddr以及内存布局将客户机的内核、设备树、内核模块以及内存文件系统拷贝到gfn对应的物理内存中。
专利主权项内容
1.一种Xen下的设备直通方法,其特征在于,包括:步骤S101,启动Xen的设备直通功能,准备客户机的初级版的设备树;步骤S102,通过用户层工具开始构建客户机,准备客户机的配置文件;步骤S103,用户层通过驱动hypercall调用伙伴系统为客户机分配2^order个页面大小的静态连续内存并返回起始物理地址页帧号mfn;步骤S104,创建Stage2映射,并基于步骤S103中得到的起始物理地址页帧号mfn得到客户机的页帧号gfn,使gfn等于mfn;步骤S105,用户层基于步骤S104中得到的页帧号gfn初始化客户机的构建参数;步骤S106,基于步骤S101中准备好的初级版的设备树、步骤S102中得到的配置文件以及步骤S105中得到的构建参数,构建客户机的最终版的设备树;步骤S107,基于步骤S105中得到的构建参数,初始化客户机操作系统内存布局,所述操作系统内存包括内核、步骤S106中得到的客户机的最终版的设备树、内核模块以及内存文件系统,所述内核模块为操作系统通过动态加载而不是直接编译到内核的程序;步骤S108,基于步骤S105中得到的构建参数,使用mmap函数将所述gfn映射到用户层,得到gvaddr,所述gvaddr为所述用户层的地址;步骤S109,基于所述gvaddr以及所述内存布局将客户机的内核、设备树、内核模块以及内存文件系统拷贝到gfn对应的物理内存中。
专利申请信息
| 项目 | 内容 |
|---|---|
| 专利名称 | 一种Xen下的设备直通方法 |
| 专利类型 | 发明申请 |
| 申请号 | CN202311769161.2 |
| 申请日 | 2023/12/21 |
| 公告号 | CN117453352A |
| 公开日 | 2024/1/26 |
| IPC主分类号 | G06F9/455 |
| 权利人 | 麒麟软件有限公司 |
| 发明人 | 张云飞; 韩乃平; 黄磊; 崔建英 |
| 地址 | 天津市滨海新区塘沽海洋科技园信安创业广场3号楼6-8层 |