一种即时提示SATA和NVMe设备在位变化的方法、系统及介质与流程

文档序号:16400560发布日期:2018-12-25 20:06阅读:236来源:国知局
一种即时提示SATA和NVMe设备在位变化的方法、系统及介质与流程

本发明涉及服务器存储领域,具体而言,涉及一种即时提示sata和nvme设备在位变化的方法、系统及介质。

背景技术

在存储服务器领域,服务器用于存储大量数据,每一台服务器都需要配备足够多的硬盘,增加单台服务器的总存储容量,十几个或者几十个硬盘都是常见设计,一般采用高密度的2u/4u设计,来容纳足够多的存储盘位,可以将pchsata盘位全部连接出来,多达10几个硬盘(目前主流芯片支持14个),成本很低。对于高速且超大容量需求,可以采用nvme接口设计,根据需要来设计硬盘数量,目前单cpu支持12个,双路(2个cpu)、四路(4个cpu)产品足够满足用户需要,nvme设计成本较高,但容量和速度优势明显,是未来的发展趋势。sata和nvme硬盘均支持热插拔功能,众多的硬盘,通过热插拔来更换硬盘,是常规操作手法。

目前主板热插拔硬盘,在操作系统下,由驱动负责即时侦测硬盘的在位情况,通知用户。但是非操作系统下热插拔硬盘,没有任何提示信息,用户无法确认所插入硬盘的功能位置是否正确,插入硬盘链接是否正常,也无法判断所插入硬盘是否有故障,有故障的硬盘可能会导致系统宕机。每台服务器有大量数量硬盘,插入硬盘后,进入系统后很难准确判断接入的是哪个硬盘。查看功能端口后拔出硬盘,也需要进入bios设置界面才能确定拔掉的是哪个功能端口的硬盘,比较麻烦。



技术实现要素:

本发明提供一种即时提示sata和nvme设备在位变化的方法,通过bios软件设计,关机状态下,拔掉硬盘,开机后可以立即提示给用户;关机状态下接入新硬盘,开机后可以立即提示给用户;开机过程中,插拔硬盘可以即时提示给用户,确定链接的功能位置信息、链接信息,以及是否链接正常,解决现有技术中非操作系统环境下热插拔硬盘没有提示的技术问题。

本发明为解决上述技术问题而提供的这种即时提示sata和nvme设备在位变化的方法,包括以下步骤:

a.主板上电,bios开始运行,对启动服务程序列表进行初始化,挂载所有基础服务程序;

b.cpu、芯片组、内存自检完成以后,初始化所有pcie设备;

c.创建周期性事件服务处理程序,开始周期性执行,执行间隔根据设计需要,灵活设置;

d.在执行周期性事件程序时,首先创建临时数据存储区;

e.根据sata控制器地址,来读取控制器所有端口连接情况的状态寄存器,将sata设备连接状态数据存储到所述临时数据存储区;

f.根据pcie桥设备地址读取第n个所述pcie桥设备的slot能力寄存器,根据数据判断所述pcie桥设备是否支持热插拔功能,如果不支持,不需要进一步判断,进行步骤i,如果支持热插拔功能,再判断是否开启了热插拔功能,如果不支持热插拔功能,临时数据存储区赋予初始数据,此数据不变化,如果没有开启热插拔功能,也不需要进一步判断,进行步骤i,如果支持且开启了热插拔功能,则继续进行步骤h;

h.读取slot状态寄存器设备的在位数据;

i.监测nvme设备和所述pcie桥设备的连接情况,并将状态数据存储到所述临时数据存储区;

j.判断是否所有所述pcie桥设备都检查完毕了,如果没有,返回进行步骤f,如果所有所述pcie桥设备检查完,则sata设备和nvme设备连接状态数据都存放在所述临时数据存储区;

k.从预先定义的非易失数据存储区中读取sata设备和nvme设备在位状态的数据;

l.比较所述临时数据存储区和所述非易失数据存储区是否一致,如果数据一致,等待时间间隔后进行步骤d,如果数据不一致,进行步骤n;

n.将临时存储区数据存储到非易失数据存储区当中,并记录硬盘在位情况;

o.判断是sata设备在位情况有变化还是nvme设备在位情况有变化,如果是所述sata设备在位情况有变化,则进行步骤q,如果是所述nvme设备在位情况有变化,则进行步骤x;

q.根据数据差别判断所述sata设备的端口号,当设备接入时,调用sata通信服务程序,与所述sata设备通信,获取所述sata设备数据,提取所述sata设备名字,调用弹窗服务程序,并将所述sata设备的状态和监测结果输出弹窗给用户,如果有多个所述sata设备变化,重复执行本步骤,变动坐标,逐一显示弹窗信息,并进行步骤z;

x.根据数据差别,判断所属pcie桥设备,根据所述pcie桥设备地址读取所述pcie桥设备寄存器,当所述nvme设备接入,先读取所述pcie桥设备链接状态寄存器,获取链接宽度和链接速度,读取所述pcie桥设备slot能力寄存器,获取slot号,再读取次级地址寄存器,获取所述nvme设备的地址,根据地址与所述nvme设备通信获取所述nvme设备名字,调用弹窗服务程序,并将所述nvme设备的状态和监测结果输出弹窗给用户,如果有多个所述nvme设备变化,重复执行本步骤,变动坐标,逐一显示弹窗信息,并进行步骤z;

z.本次检查完成,等待周期性时间间隔后,如果周期性函数不停止,进行步骤d,如果周期性函数停止,则结束所有执行操作。

所述步骤a中所述基础服务程序为事件服务程序。

所述步骤b中所述pcie设备包括pciesata控制器、pcie桥设备,所述sata设备连接在所述pciesata控制器上面,nvme设备连接在所述pcie桥设备的上面。

所述步骤d中所述临时数据存储区用于存储程序本次检查硬盘在位状态数据。

所述步骤l中所述数据一致说明硬盘在位情况没有变化,所述比较数据不一致说明硬盘在位情况有变化。

所述步骤q中如果所述sata设备通信有错误,说明虽然设备在位,但是连接不正常或者设备有故障,在显示器上面指定坐标位置输出弹窗,显示所述sata设备端口号、所述sata设备名字和所述sata通信错误信息提示给用户;当所述sata设备拔出时,所述sata显示设备端口号和所述sata设备拔出信息,提示给用户。

所述步骤x中如果所述nvme设备通信有错误,或者连接状态有异常,说明虽然所述nvme设备在位,但是连接不成功或者所述nvme设备有故障,在显示器指定坐标位置输出弹窗,显示所述nvme设备地址、链接宽度、速度、slot号及所述nvme设备名字,异常链接情况,显示报错信息,提示给用户,当所述nvme设备拔出时,显示slot号及拔出信息,提示给客户。

一种即时提示sata和nvme设备在位变化的系统,其特征在于:所述即时提示sata和nvme设备在位变化的系统包括存储器、处理器以及存储在所述存储器上的计算机程序,所述计算机程序配置为由所述处理器调用时任一项所述的方法的步骤。

一种计算机可读存储介质,其特征在于:所述计算机可读存储介质存储有计算机程序,所述计算机程序配置为由处理器调用时实现任一项所述的方法的步骤。

本发明所具有的有益效果:通过bios软件设计,实现热插拔设备,即时插入拔出即时提示用户的功能,指定坐标弹窗设计,显示设备基本信息或者错误信息,增加用户操作结果反馈机制,提高用户体验。

附图说明

图1是本发明所述即时提示sata和nvme设备在位变化的方法示意图。

具体实施方式

结合上述附图说明本发明的具体实施例。

由图1可知,本发明提供一种及时提示sata和nvme设置在位变化的方法,包括以下步骤:

a.主板上电,bios开始运行,对启动服务程序列表进行初始化,挂载所有基础服务程序;

b.cpu、芯片组、内存自检完成以后,初始化所有pcie设备;

c.创建周期性事件服务处理程序,开始周期性执行,执行间隔根据设计需要,灵活设置;

d.在执行周期性事件程序时,首先创建临时数据存储区;

e.根据sata控制器地址,来读取控制器所有端口连接情况的状态寄存器,将sata设备连接状态数据存储到所述临时数据存储区;

f.根据pcie桥设备地址读取第n个所述pcie桥设备的slot能力寄存器,根据数据判断所述pcie桥设备是否支持热插拔功能,如果不支持,不需要进一步判断,进行步骤i,如果支持热插拔功能,再判断是否开启了热插拔功能,如果不支持热插拔功能,临时数据存储区赋予初始数据,此数据不变化,如果没有开启热插拔功能,也不需要进一步判断,进行步骤i,如果支持且开启了热插拔功能,则继续进行步骤h;

h.读取slot状态寄存器设备的在位数据;

i.监测nvme设备和所述pcie桥设备的连接情况,并将状态数据存储到所述临时数据存储区;

j.判断是否所有所述pcie桥设备都检查完毕了,如果没有,返回进行步骤f,如果所有所述pcie桥设备检查完,则sata设备和nvme设备连接状态数据都存放在所述临时数据存储区;

k.从预先定义的非易失数据存储区中读取sata设备和nvme设备在位状态的数据;

l.比较所述临时数据存储区和所述非易失数据存储区是否一致,如果数据一致,等待时间间隔后进行步骤d,如果数据不一致,进行步骤n;

n.将临时存储区数据存储到非易失数据存储区当中,并记录硬盘在位情况;

o.判断是sata设备在位情况有变化还是nvme设备在位情况有变化,如果是所述sata设备在位情况有变化,则进行步骤q,如果是所述nvme设备在位情况有变化,则进行步骤x;

q.根据数据差别判断所述sata设备的端口号,当设备接入时,调用sata通信服务程序,与所述sata设备通信,获取所述sata设备数据,提取所述sata设备名字,调用弹窗服务程序,并将所述sata设备的状态和监测结果输出弹窗给用户,如果有多个所述sata设备变化,重复执行本步骤,变动坐标,逐一显示弹窗信息,并进行步骤z;

x.根据数据差别,判断所属pcie桥设备,根据所述pcie桥设备地址读取所述pcie桥设备寄存器,当所述nvme设备接入,先读取所述pcie桥设备链接状态寄存器,获取链接宽度和链接速度,读取所述pcie桥设备slot能力寄存器,获取slot号,再读取次级地址寄存器,获取所述nvme设备的地址,根据地址与所述nvme设备通信获取所述nvme设备名字,调用弹窗服务程序,并将所述nvme设备的状态和监测结果输出弹窗给用户,如果有多个所述nvme设备变化,重复执行本步骤,变动坐标,逐一显示弹窗信息,并进行步骤z;

z.本次检查完成,等待周期性时间间隔后,如果周期性函数不停止,进行步骤d,如果周期性函数停止,则结束所有执行操作。

所述步骤a中所述基础服务程序为事件服务程序。

所述步骤b中所述pcie设备包括pciesata控制器、pcie桥设备,所述sata设备连接在所述pciesata控制器上面,nvme设备连接在所述pcie桥设备的上面。

所述步骤d中所述临时数据存储区用于存储程序本次检查硬盘在位状态数据。

所述步骤l中所述数据一致说明硬盘在位情况没有变化,所述比较数据不一致说明硬盘在位情况有变化。

所述步骤q中如果所述sata设备通信有错误,说明虽然设备在位,但是连接不正常或者设备有故障,在显示器上面指定坐标位置输出弹窗,显示所述sata设备端口号、所述sata设备名字和所述sata通信错误信息提示给用户;当所述sata设备拔出时,所述sata显示设备端口号和所述sata设备拔出信息,提示给用户。

所述步骤x中如果所述nvme设备通信有错误,或者连接状态有异常,说明虽然所述nvme设备在位,但是连接不成功或者所述nvme设备有故障,在显示器指定坐标位置输出弹窗,显示所述nvme设备地址、链接宽度、速度、slot号及所述nvme设备名字,异常链接情况,显示报错信息,提示给用户,当所述nvme设备拔出时,显示slot号及拔出信息,提示给客户。

一种即时提示sata和nvme设备在位变化的系统,其特征在于:所述即时提示sata和nvme设备在位变化的系统包括存储器、处理器以及存储在所述存储器上的计算机程序,所述计算机程序配置为由所述处理器调用时实现任一项所述的方法的步骤。

一种计算机可读存储介质,其特征在于:所述计算机可读存储介质存储有计算机程序,所述计算机程序配置为由处理器调用时实现任一项所述的方法的步骤。

本发明通过bios软件设计,关机状态下,拔掉硬盘,开机后可以立即提示给用户;关机状态下接入新硬盘,开机后可以立即提示给用户;开机过程中,插拔硬盘可以即时提示给用户,确定链接的功能位置信息、链接信息,以及是否链接正常;建立有效的快速反馈机制,及时准确对用户所完成操作动作,进行功能上的确认。

本发明方法中,通过bios软件设计,实现热插拔设备,即时插入拔出即时提示用户的功能,指定坐标弹窗设计,显示设备基本信息或者错误信息,增加用户操作结果反馈机制,提高用户体验。

名词解释

bios:(basicinputoutputsystem)基本输入输出系统,主要用于计算机开机过程中各种硬件设备的初始化和检测.

cpu:(centralprocessingunit)中央处理器。本文特指x86架构处理器,它的功能主要是解释计算机指令以及处理计算机软件中的数据。

pcie:(peripheralcomponentinterconnectexpress)一种高速串行计算机扩展总线标准。

pch:(platformcontrollerhub)英特尔公司的集成南桥.

sata:(serialadvancedtechnologyattachment)串行ata接口规范。

nvme:(non-volatilememoryexpress)非易失性存储器标准,是使用pci-e通道的固态硬盘一种规范。

以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1