一种用户态虚拟网卡的自动探测方法技术

技术编号:9765650 阅读:128 留言:0更新日期:2014-03-15 09:43
本发明专利技术实施例提供了一种用户态虚拟网卡的自动探测方法实现了在用户态虚拟网卡驱动加载时简单高效的自动探测虚拟网卡信息。本发明专利技术实施例提供的一种用户态虚拟网卡的自动探测方法,应用于安装有自编译的操作系统的虚拟机上,包括:配置所述操作系统的内核生成新内核;在所述内核的脚本文件下添加语句,以文件形式保存所述内核探测到的PCI设备信息;编译所述新内核并生成内核镜像文件,修改所述内核的启动项引导所述内核镜像文件启动;在所述内核镜像文件启动过程中,用户态从所述PCI设备信息中提取虚拟网卡信息。

【技术实现步骤摘要】

本专利技术涉及计算机
,具体涉及。技术背景用户态在计算机结构指两项类似的概念。在CPU的设计中,用户态指非特权状态,在此状态下,执行的代码被硬件限定,不能进行某些操作。在操作系统的设计中,用户态也类似,指非特权的执行状态。内核禁止此状态下的代码进行潜在危险的操作,比如写入系统配置文件、杀掉其他用户的进程、重启系统等。当一个任务(进程)执行系统调用而陷入内核代码中执行时,称进程处于内核运行态或简称为内核态。此时处理器处于特权级最高的(O级)内核代码中执行。当进程在执行用户自己的代码时,则称其处于用户运行态或简称为用户态。即此时处理器在特权级最低的(3级)用户代码中运行。虚拟网卡,即用软件模拟网络环境,主要是建立远程计算机间的局域网。现在虚拟机上虚拟网卡的用户态驱动加载已有实现,但是如何做到虚拟网卡的自动探测还是鲜为人知。
技术实现思路
本专利技术主要提供了实现了在用户态虚拟网卡驱动加载时简单高效的自动探测虚拟网卡信息。本专利技术实施例提供的,应用于安装有自编译的操作系统的虚拟机上,包括:配置所述操作系统的内核生成新内核;在所述内核的脚本文件下添加语句,以文件形式保存所述内核探测到的PCI设备信息;编译所述新内核并生成内核镜像文件,修改所述内核的启动项引导所述内核镜像文件启动;在所述内核镜像文件启动过程中,用户态从所述PCI设备信息中提取虚拟网卡信息。其中,所述配置所述操作系统的内核生成新内核包括:修改所述内核的配置文件,点选网络设备驱动选项,以使得所述内核支持所述虚拟机磁盘驱动类型,并使所述内核不再探测加载网卡驱动;修改所述操作系统的输出配置,将所述操作系统信息显示由串行端口终端修改为所述虚拟机使用的控制台终端显示;修改所述内核的脚本文件,使所述操作系统挂载所述虚拟机中的存储设备。其中,所述在所述内核的脚本文件下添加语句,以文件形式保存内核探测到的PCI设备信息包括:在所述内核的脚本文件下添加语句,将PCI设备查看工具显示的设备信息以文件形式保存在挂载的所述存储设备目录下。其中,所述PCI设备信息包括总线编号、设备编号、功能编号、设备类别码、设备卖家ID号及设备类型。其中,所述用户态从所述PCI设备信息中提取虚拟网卡信息之前包括:用户态以文件形式打开所述PCI设备文件信息。其中,所述操作系统为Linux操作系统;所述虚拟机为VMware虚拟机。其中,所述配置所述操作系统的内核包括:配置Linux内核.config文件,点选SCSI device support 下相关选项及 VMware PVSCSI driver support 选项,使内核支持VMware虚拟机磁盘驱动类型,点选Network device support选项,使所述内核不编译网卡驱动部分代码,内核不再探测加载网卡驱动;修改etc下的inittab文件,将Linux系统信息显示由串行端口终端(/dev/ttySn)修改为VMware使用的控制台终端(/dev/ttyn)显示;修改etc/init.d/下的rcS文件,挂载VMware虚拟机中的存储设备(mount/dev/sdal/home)。其中,所述在所述内核的脚本文件下添加语句,以文件形式保存内核探测到的PCI设备信息包括:添加语句:lspci > /home/pcidev,将Ispci显示的设备信息以pcidev文件形式保存在挂载的存储设备目录下。其中,所述修改所述内核的启动项引导所述内核镜像文件启动包括:修改VMware虚拟机上Linux内核的grub文件,新增启动项,引导内核镜像文件启动。本专利技术实施例提供的,应用于安装有自编译的操作系统的虚拟机上,通过配置编译内核,提取设备中网卡信息,实现用户态虚拟网卡的自动探测,减少了系统性能损耗,提高CPU利用率。【附图说明】图1所示为本专利技术实施例提供的用户态虚拟网卡的自动探测方法流程图:图2所示为本专利技术一实施例提供的配置内核的方法流程图。【具体实施方式】下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供了,可以实现在用户态虚拟网卡驱动加载时自动探测虚拟网卡信息,该方法应用于安装有自编译的操作系统的虚拟机上。图1所示为本专利技术实施例提供的用户态虚拟网卡的自动探测方法流程图。如图1所示,该方法包括:步骤100:配置虚拟上当前操作系统的内核生成新内核。修改内核的配置文件,点选网络设备驱动选项,使得内核支持虚拟机磁盘驱动类型,并使内核不再探测加载网卡驱动,将操作系统信息显示由串行端口终端修改为虚拟机使用的控制台终端显示,修改内核的脚本文件,使操作系统挂载虚拟机中的存储设备。步骤200:在该内核的脚本文件下添加语句,以文件形式保存该内核探测到的PCI设备信息。在内核脚本文件下添加语句,将内核探测到的PCI设备信息以文件形式保存在挂载的存储设备目录下,这样就保存到了内核探测到的所有PCI设备信息。其中,内核探测到的PCI设备信息包括:总线编号、设备编号、功能编号、设备类别码、设备卖家ID号及设备类型。步骤300:编译新内核并生成内核镜像文件,修改内核的启动项引导该内核镜像文件启动。步骤400:在内核镜像文件启动过程中,用户态从PCI设备信息中提取虚拟网卡信肩、O用户态程序以文件形式打开在内核启动过程中保存的探测到的所有PCI设备信息,然后根据虚拟网卡的类别码(Class Code) 0x0200从所有PCI设备的信息中将虚拟网卡的设备信息提取出来,并保存到全局变量中,供用户态初始化虚拟网卡驱动使用。在本专利技术一实施例中,用户态虚拟网卡的自动探测基于Linux内核实现,在装有Linux系统的VMware虚拟机上,修改内核的grub引导编译的内核,来实现VMware虚拟机上的虚拟网卡自动探测。图2所示为本专利技术一实施例提供的配置内核的方法流程图。在装有Linux系统的VMware虚拟机上,该方法包括:步骤101:配置Linux内核.config文件,点选SCSI device support下相关选项及VMware PVSCSI driver support选项,使内核支持VMware虚拟机磁盘驱动类型,点选Network device support选项,使所述内核不编译网卡驱动部分代码,内核不再探测加载网卡驱动;步骤102:修改etc下的inittab文件,将Linux系统信息显示由串行端口终端(/dev/ttySn)修改为VMware使用的控制台终端(/dev/ttyn)显示;步骤103:修改etc/init.d/下的rcS文件,挂载VMware虚拟机中的存储设备(mount/dev/sdal/home)。在对内核进行配置修改后,还包括对PCI设备文件信息的存储,包括:添加语句:Ispci > /home/pcidev,将Ispci显示的设备信息以pcidev文件形式保存在挂载的存储设备目录下,这样就保存到了内核探测到的所有PCI设备信息。在Linux系统中,使用Ispci来显示系统中所有PC本文档来自技高网...

【技术保护点】
一种用户态虚拟网卡的自动探测方法,特征在于,应用于安装有自编译的操作系统的虚拟机上,所述方法包括:配置所述操作系统的内核生成新内核;在所述内核的脚本文件下添加语句,以文件形式保存所述内核探测到的PCI设备信息;编译所述新内核并生成内核镜像文件,修改所述内核的启动项引导所述内核镜像文件启动;在所述内核镜像文件启动过程中,用户态从所述PCI设备信息中提取虚拟网卡信息。

【技术特征摘要】
1.一种用户态虚拟网卡的自动探测方法,特征在于,应用于安装有自编译的操作系统的虚拟机上,所述方法包括: 配置所述操作系统的内核生成新内核; 在所述内核的脚本文件下添加语句,以文件形式保存所述内核探测到的PCI设备信息; 编译所述新内核并生成内核镜像文件,修改所述内核的启动项引导所述内核镜像文件启动; 在所述内核镜像文件启动过程中,用户态从所述PCI设备信息中提取虚拟网卡信息。2.根据权利要求1所述的方法,其特征在于,所述配置所述操作系统的内核生成新内核包括: 修改所述内核的配置文件,点选网络设备驱动选项,以使得所述内核支持所述虚拟机磁盘驱动类型,并使所述内核不再探测加载网卡驱动; 修改所述操作系统的输出配置,将所述操作系统信息显示由串行端口终端修改为所述虚拟机使用的控制台终端显示; 修改所述内核的脚本文件,使所述操作系统挂载所述虚拟机中的存储设备。3.根据权利要求1所述的方法,其特征在于,所述在所述内核的脚本文件下添加语句,以文件形式保存内核探测到的PCI设备信息包括:在所述内核的脚本文件下添加语句,将PCI设备查看工具显示的设备信息以文件形式保存在挂载的所述存储设备目录下。4.根据权利要求1所述的方法,其特征在于,所述PCI设备信息包括总线编号、设备编号、功能编号、设备类别码、设备卖家ID号及设备类型。5.根据权利要求1所述的方法,其特征在于,所述用户态从所述PCI设备信息中提取虚拟网卡信息之前包括:用户态以文件形式打开...

【专利技术属性】
技术研发人员:高福亮
申请(专利权)人:天津汉柏信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1