一种基于shell读取CPU-PCIe寄存器的方法技术

技术编号:19634731 阅读:34 留言:0更新日期:2018-12-01 15:31
本发明专利技术涉及一种基于shell读取CPU‑PCIe寄存器的方法,属于计算机服务器技术领域,包括以下步骤:1)编写读取PCIe寄存器的工具文件;2)自动重启并通过引导程序进入shell;3)确定要读取的PCIe寄存器参数;4)显示PCIe寄存器中参数数值的有效范围。可基于shell有效读取计算机中CPU‑PCIe寄存器的数据以及进行debug,无需串口设备和连接debug设备,提高了工作效率。

A Method of Reading CPU-PCIe Register Based on Shell

The invention relates to a method for reading CPU PCIe registers based on shell, which belongs to the technical field of computer servers, including the following steps: 1) writing tool files for reading PCIe registers; 2) automatically restarting and entering the shell through bootstrap program; 3) determining the parameters of PCIe registers to be read; 4) displaying the parameters of PCIe registers; Valid range of values. It can read CPU PCIe register data and debug effectively based on shell. It does not need serial port device and debug device to connect, so it improves work efficiency.

【技术实现步骤摘要】
一种基于shell读取CPU-PCIe寄存器的方法
本专利技术涉及一种基于shell读取CPU-PCIe寄存器的方法,属于计算机服务器

技术介绍
随着大数据时代的不断发展,服务器成为了不可或缺的设备,尤其在互联网领域,服务器的BIOS下的很多选项会和计算机CPU-PCIe寄存器数据相关联,在测试过程中选项的状态需要保证与寄存器的参数一致,这就需要读取寄存器的数据;与此同时,选项发现功能性缺陷时也需要确认寄存器数据是否正确,从而进行debug。传统方法是利用串口线或者debug设备来读取寄存器的数据,操作步骤繁琐,费时费力。针对上述已有技术状况,本专利技术申请人做了大量反复而有益的探索,最终产品取得了有效的成果,并且形成了下面将要介绍的技术方案。
技术实现思路
本专利技术针对上述现有技术的不足,提供一种基于shell读取CPU-PCIe寄存器的方法,与现有技术相比,可基于shell有效读取计算机中CPU-PCIe寄存器的数据以及进行debug,无需串口设备和连接debug设备,节约时间、降低成本,提高了功能性与实用性。本专利技术解决技术问题的技术方案为:一种基于shell读取CPU-PCIe寄存器的方法,包括以下步骤:1)编写读取PCIe寄存器的工具文件;2)自动重启并通过引导程序进入shell;3)确定要读取的PCIe寄存器参数;4)显示PCIe寄存器中参数数值的有效范围。进一步地,所述步骤1)的具体过程为:利用EDKⅡ工具中的MyWorkSpace编程环境创建package文件夹,在package文件夹里分别创建.dec、.dsc、.inf以及.c格式的文件,编写读取寄存器数据的程序,完成后进行编译生成读取PCIe寄存器的ReadPCIe.efi文件工具,具体包括以下步骤:a.在EDKⅡ工具中的MyWorkSpace文件夹里创建package文件夹,并命名为ReadPCIePkg,打开ReadPCIePkg后分别创建Include和ReadPCIe文件夹,进而在Include文件夹里创建ReadPCIePkg.dec、ReadPCIePkg.dsc文件,在ReadPCIe文件夹里建立ReadPCIe.c、ReadPCIe.inf文件;b.在ReadPCIe.c文件中编写读取PCIe寄存器的主程序,预定义.h头文件,并将编写时调用的.h头文件附加到程序中;c.在ReadPCIe.inf文件中添加.c文件和调用的.dec文件;d.在ReadPCIePkg.dec文件中添加要编译的.inf文件;e.在ReadPCIePkg.dsc文件的定义中添加package文件夹;f.在计算机系统运行里输入cmd进入编译环境,编译ReadPCIePkg.dsc文件,编译完成后在MyWorkSpace的build的文件夹里找到创建的ReadPCIe.efi文件,并拷贝至用于自系统外部连接的移动存储设备。进一步地,所述步骤2)的具体过程为:移动存储设备自外部接入计算机usb数据接口,并启动ReadPCIe.efi文件,计算机自动重启并在服务器启动过程中引导启动程序boot进入shell。进一步地,所述步骤3)的具体过程为:ReadPCIe.efi文件工具在shell下运行状态下自动二次运行,读取PCIe寄存器并启动CPU中的spec查找功能,进而确定要读取PCIe寄存器的bus、device以及function。进一步地,所述步骤4)的具体过程为:在shell运行状态下自动锁定PCIe寄存器的bus、device以及function参数并实时记录参数数值变化,最终显示出bus、device和function的数值有效范围。本专利技术的有益效果:可基于shell有效读取计算机中CPU-PCIe寄存器的数据以及进行debug,无需串口设备和连接debug设备,节约时间、降低成本,提高了功能性与实用性。附图说明图1为本专利技术的读取流程示意图。具体实施方式为了更好地理解本专利技术,下面结合附图来详细解释本专利技术的实施方式。如图1所示,一种基于shell读取CPU-PCIe寄存器的方法,包括以下步骤:1)编写读取PCIe寄存器的工具文件。利用EDKⅡ工具中的MyWorkSpace编程环境创建package文件夹,在package文件夹里分别创建.dec、.dsc、.inf以及.c格式的文件,编写读取寄存器数据的程序,完成后进行编译生成读取PCIe寄存器的ReadPCIe.efi文件工具。a.在EDKⅡ工具中的MyWorkSpace文件夹里创建package文件夹,并命名为ReadPCIePkg,打开ReadPCIePkg后分别创建Include和ReadPCIe文件夹,进而在Include文件夹里创建ReadPCIePkg.dec、ReadPCIePkg.dsc文件,在ReadPCIe文件夹里建立ReadPCIe.c、ReadPCIe.inf文件;b.在ReadPCIe.c文件中编写读取PCIe寄存器的主程序,预定义.h头文件,将调用的.h头文件附加到主程序中;c.在ReadPCIe.inf文件中添加.c文件和调用的.dec文件;d.在ReadPCIePkg.dec文件中添加要编译的.inf文件;e.在ReadPCIePkg.dsc文件的定义中添加package文件夹;f.在计算机系统运行里输入cmd进入编译环境,编译ReadPCIePkg.dsc文件,编译完成后在MyWorkSpace的build的文件夹里找到创建的ReadPCIe.efi文件,并拷贝至用于自系统外部连接的移动存储设备。2)自动重启并通过引导程序进入shell。移动存储设备自外部接入计算机usb数据接口,并启动ReadPCIe.efi文件,计算机自动重启并在服务器启动过程中引导启动程序boot进入shell。3)确定要读取的PCIe寄存器参数。ReadPCIe.efi文件工具在shell下运行状态下自动二次运行,读取PCIe寄存器并启动CPU中的spec查找功能,进而确定要读取PCIe寄存器的bus、device以及function。4)显示PCIe寄存器中参数数值的有效范围。在shell运行状态下自动锁定PCIe寄存器的bus、device以及function参数并实时记录参数数值变化,最终显示出bus、device和function的数值有效范围,即可基于shell有效读取计算机中CPU-PCIe寄存器的数据以及进行debug,无需串口设备和连接debug设备,提高了工作效率。上述虽然结合附图对专利技术的具体实施方式进行了描述,但并非对本专利技术保护范围的限制,在本专利技术的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本专利技术的保护范围以内。本文档来自技高网...

【技术保护点】
1.一种基于shell读取CPU‑PCIe寄存器的方法,其特征在于,包括以下步骤:1)编写读取PCIe寄存器的工具文件;2)自动重启并通过引导程序进入shell;3)确定要读取的PCIe寄存器参数;4)显示PCIe寄存器中参数数值的有效范围。

【技术特征摘要】
1.一种基于shell读取CPU-PCIe寄存器的方法,其特征在于,包括以下步骤:1)编写读取PCIe寄存器的工具文件;2)自动重启并通过引导程序进入shell;3)确定要读取的PCIe寄存器参数;4)显示PCIe寄存器中参数数值的有效范围。2.如权利要求1所述的一种基于shell读取CPU-PCIe寄存器的方法,其特征是,所述步骤1)的具体过程为:利用EDKⅡ工具中的MyWorkSpace编程环境创建package文件夹,在package文件夹里分别创建.dec、.dsc、.inf以及.c格式的文件,编写读取寄存器数据的程序,完成后进行编译生成读取PCIe寄存器的ReadPCIe.efi文件工具,具体包括以下步骤:a.在EDKⅡ工具中的MyWorkSpace文件夹里创建package文件夹,并命名为ReadPCIePkg,打开ReadPCIePkg后分别创建Include和ReadPCIe文件夹,进而在Include文件夹里创建ReadPCIePkg.dec、ReadPCIePkg.dsc文件,在ReadPCIe文件夹里建立ReadPCIe.c、ReadPCIe.inf文件;b.在ReadPCIe.c文件中编写读取PCIe寄存器的主程序,预定义.h头文件,并将编写时调用的.h头文件附加到程序中;c.在ReadPCIe.inf文件中添加.c文件和调用的.dec文件;d.在ReadP...

【专利技术属性】
技术研发人员:韩燕燕
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1