一种在SOL页面展示BIOS设置界面光标的控制方法技术

技术编号:36187748 阅读:14 留言:0更新日期:2022-12-31 20:55
本发明专利技术提供一种在SOL页面展示BIOS设置界面光标的控制方法及系统,包括:步骤S1,BMC前端网页和后端SOL服务建立全双工长连接,在后端SOL服务与BIOS之间建立串口连接;步骤S2,BMC前端网页接收到转发的数据后,解析收到的VT100控制码数据;步骤S3,判断解析后的数据是否为图像数据,若是,则跳转至步骤S4;若否,则跳转至步骤S5;步骤S4,在隐藏的缓存画布上绘制图像,并将完整的图像数据拷贝至可见画布上;步骤S5,根据光标数据计算光标最终位置;步骤S6,在可见画布上进行合成绘制和展示。本发明专利技术避免了为光标移动而产生黑色无像素方块以及图像损坏等问题,提升了用户体验。提升了用户体验。提升了用户体验。

【技术实现步骤摘要】
一种在SOL页面展示BIOS设置界面光标的控制方法


[0001]本专利技术涉及一种光标控制方法,尤其涉及一种在SOL页面展示BIOS设置界面光标的控制方法。

技术介绍

[0002]服务器主板上的BMC管理软件提供了用于远程修改BIOS配置的SOL功能。当BIOS打开串口重定向功能后,用户即可在BMC的前端网页上使用SOL功能远程配置BIOS。BIOS只有在初次建立SOL连接时,才会传输设置界面的全量完整图像数据和光标数据给BMC。其他情况下,只会在上一次数据的基础上,按需传输少量的有变化部分的VT100+控制码数据给BMC。所以BMC需要保存图像数据和光标位置坐标供前端绘制图像时使用。在用户通过SOL功能控制光标在BIOS设置界面的同一页面移动时,只有光标位置坐标和极少部分图像数据发生了变化,所以BIOS只会传输变化部分的图像数据和光标的位置数据给BMC。此时在BMC前端页面使用单一画布绘制BIOS设置界面图像时,会因为附加光标图像到原始图像,破坏BMC保存的原始图像数据中光标所在位置的像素。这样就会导致在最终展示给客户的图像中,出现多个与光标同样大小的黑色无像素方块,影响用户的判断和体验。

技术实现思路

[0003]本专利技术所要解决的技术问题是需要提供一种能够避免光标移动产生黑色无像素方块,避免原始图像数据被破坏的在SOL页面展示BIOS设置界面光标的控制方法,旨在提高SOL页面上展示BIOS设置界面光标的准确度和流畅度,提升用户体验。
[0004]对此,本专利技术提供一种在SOL页面展示BIOS设置界面光标的控制方法,包括以下步骤:步骤S1,BMC前端网页和后端SOL服务通过网络建立WebSocket全双工长连接,然后在后端SOL服务与BIOS之间建立串口连接;步骤S2,BMC前端网页接收到后端SOL服务通过WebSocket全双工长连接转发的数据后,解析收到的VT100控制码数据,所述转发的数据为来自BIOS的VT100控制码数据;步骤S3,判断解析后的数据是否为图像数据,若是,则跳转至步骤S4;若否,则跳转至步骤S5;步骤S4,在隐藏的缓存画布上绘制图像,并将完整的图像数据拷贝至用于展示的可见画布上,完成后跳转至步骤S6;步骤S5,根据光标数据计算光标最终位置,完成后跳转至步骤S6;步骤S6,在可见画布上进行合成绘制和展示;步骤S7,判断是否退出后端SOL服务,若是,则结束;若否,则跳转至步骤S8;步骤S8,后端SOL服务将WebSocket网络数据转化成串口数据,并通过串口连接转发给BIOS,并返回所述步骤S2。
[0005]本专利技术的进一步改进在于,所述步骤S2中,在所述步骤S1建立连接之后,BIOS通过
串口持续传输图像数据和光标数据到所述后端SOL服务,然后再由所述后端SOL服务根据RFC6455规范编码后,通过WebSocket全双工长连接转发给BMC前端网页;同时,接收到的键盘操作指令也将由所述BMC前端网页通过WebSocket全双工长连接发送给所述后端SOL服务,再由其根据RFC6455规范解码后,通过串口连接转发给BIOS。
[0006]本专利技术的进一步改进在于,所述步骤S2中,解析收到的VT100控制码数据的过程如下:使用正则表达式从VT100控制码数据中获取具体的控制指令,然后根据所述控制指令在BMC前端网页进行相应的操作。
[0007]本专利技术的进一步改进在于,所述步骤S3中,当解析后的数据包括显示字符、设置字符颜色、设置字符背景色和显示空白区域中的任意一种控制指令时,判断为图像数据;当解析后的数据为设置光标位置、移动光标位置、保存光标位置以及恢复光标位置中的任意一种控制指令时,判断为不是图像数据。
[0008]本专利技术的进一步改进在于,所述步骤S4中,BMC前端网页在隐藏的缓存画布上绘制对应颜色的字符、字符背景色和空白区域图像到缓存画布上,得到可供展示的原始图像数据;然后,将隐藏的缓存画布中的完整原始图像数据拷贝到用于展示的可见画布上。
[0009]本专利技术的进一步改进在于,所述步骤S5中,BMC前端网页根据光标移动偏移量,结合光标的当前坐标,在光标的当前坐标加上所述光标移动偏移量计算出光标的最终位置,并使用光标的最终位置在可见画布上的对应位置上绘制光标图像。
[0010]本专利技术的进一步改进在于,所述步骤S6中,对所述步骤S4得到的完整原始图像数据和步骤S5得到的光标图像进行合成绘制,完成后实现展示。
[0011]本专利技术的进一步改进在于,所述步骤S8包括以下子步骤:步骤S801,通过SOL页面控制BIOS设置界面;步骤S802,BMC前端网页通过WebSocket发送控制操作所对应的VT100控制码数据;步骤S803,后端SOL服务根据RFC6455规范解码控制数据;步骤S804,后端SOL服务通过串口发送解码后的控制数据;步骤S805,BIOS响应控制数据,然后返回变化部分的VT100控制码。
[0012]本专利技术的进一步改进在于,实时检测用户的操作指令,当检测到用户操作BIOS设置界面所产生的VT100控制码后,刷新隐藏的缓存画布,并在绘制完成后拷贝到可见画布上。
[0013]本专利技术还提供一种在SOL页面展示BIOS设置界面光标的控制系统,采用了如上所述的在SOL页面展示BIOS设置界面光标的控制方法,并包括:建立连接模块,BMC前端网页和后端SOL服务通过网络建立WebSocket全双工长连接,然后在后端SOL服务与BIOS之间建立串口连接;解析数据模块,BMC前端网页接收到后端SOL服务通过WebSocket全双工长连接转发的数据后,解析收到的VT100控制码数据,所述转发的数据为来自BIOS的VT100控制码数据;首次判断模块,判断解析后的数据是否为图像数据,若是,则跳转至图形绘制模块;若否,则跳转至光标位置确定模块;图形绘制模块,在隐藏的缓存画布上绘制图像,并将完整的图像数据拷贝至用于展示的可见画布上,完成后跳转至合成绘制模块;
光标位置确定模块,根据光标数据计算光标最终位置,完成后跳转至合成绘制模块;合成绘制模块,在可见画布上进行合成绘制和展示;再次判断模块,判断是否退出后端SOL服务,若是,则结束;若否,则跳转至SOL响应控制模块;SOL响应控制模块,后端SOL服务将WebSocket网络数据转化成串口数据,并通过串口连接转发给BIOS,并返回所述解析数据模块。
[0014]与现有技术相比,本专利技术的有益效果在于:优化了整体的控制过程,采用隐藏的缓存画布更新和备份原始图像数据,保证原始图像数据的完整性,然后将完整的图像数据拷贝至用于展示的可见画布上,确定光标数据计算光标最终位置,再进行合成绘制和展示,进而使得最终展现给用户的完整图像中,彻底避免了因为单一画布绘制而导致的图像损坏问题,也能够有效地避免因为光标移动而产生黑色无像素方块等弊端,本专利技术能够很好地提高在SOL页面上展示BIOS设置界面光标的准确度和流畅度,极大地提升了用户体验。
附图说明
[0015]图1是本专利技术一种实施例的工作流程本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种在SOL页面展示BIOS设置界面光标的控制方法,其特征在于,包括以下步骤:步骤S1,BMC前端网页和后端SOL服务通过网络建立WebSocket全双工长连接,然后在后端SOL服务与BIOS之间建立串口连接;步骤S2,BMC前端网页接收到后端SOL服务通过WebSocket全双工长连接转发的数据后,解析收到的VT100控制码数据,所述转发的数据为来自BIOS的VT100控制码数据;步骤S3,判断解析后的数据是否为图像数据,若是,则跳转至步骤S4;若否,则跳转至步骤S5;步骤S4,在隐藏的缓存画布上绘制图像,并将完整的图像数据拷贝至用于展示的可见画布上,完成后跳转至步骤S6;步骤S5,根据光标数据计算光标最终位置,完成后跳转至步骤S6;步骤S6,在可见画布上进行合成绘制和展示;步骤S7,判断是否退出后端SOL服务,若是,则结束;若否,则跳转至步骤S8;步骤S8,后端SOL服务将WebSocket网络数据转化成串口数据,并通过串口连接转发给BIOS,并返回所述步骤S2。2.根据权利要求1所述的在SOL页面展示BIOS设置界面光标的控制方法,其特征在于,所述步骤S2中,在所述步骤S1建立连接之后,BIOS通过串口持续传输图像数据和光标数据到所述后端SOL服务,然后再由所述后端SOL服务根据RFC6455规范编码后,通过WebSocket全双工长连接转发给BMC前端网页;同时,接收到的键盘操作指令也将由所述BMC前端网页通过WebSocket全双工长连接发送给所述后端SOL服务,再由其根据RFC6455规范解码后,通过串口连接转发给BIOS。3.根据权利要求1所述的在SOL页面展示BIOS设置界面光标的控制方法,其特征在于,所述步骤S2中,解析收到的VT100控制码数据的过程如下:使用正则表达式从VT100控制码数据中获取具体的控制指令,然后根据所述控制指令在BMC前端网页进行相应的操作。4.根据权利要求1至3任意一项所述的在SOL页面展示BIOS设置界面光标的控制方法,其特征在于,所述步骤S3中,当解析后的数据包括显示字符、设置字符颜色、设置字符背景色和显示空白区域中的任意一种控制指令时,判断为图像数据;当解析后的数据为设置光标位置、移动光标位置、保存光标位置以及恢复光标位置中的任意一种控制指令时,判断为不是图像数据。5.根据权利要求1至3任意一项所述的在SOL页面展示BIOS设置界面光标的控制方法,其特征在于,所述步骤S4中,BMC前端网页在隐藏的缓存画布上绘制对应颜色的字符、字符背景色和空白区域图像到缓存画布上,得到可供展示的原始图像数据;然后,将隐藏的缓存画布中的完整原始图像数据拷贝到用于展...

【专利技术属性】
技术研发人员:刘洋洋
申请(专利权)人:深圳市国鑫恒运信息安全有限公司
类型:发明
国别省市:

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

1