BIOSOptionRomSetup选项网络翻译系统和方法与流程

文档序号:31869826发布日期:2022-10-21 18:39阅读:71来源:国知局
BIOSOptionRomSetup选项网络翻译系统和方法与流程
bios option rom setup选项网络翻译系统和方法
技术领域
1.本发明涉及计算机固件技术领域,具体涉及一种bios option rom setup选项网络翻译系统和方法。


背景技术:

2.bios用于对计算机处理器平台进行初始化和操作系统加载,其基本功能包括:在硬件平台上电后,获得系统控制权;初始化处理器、内存、芯片组等关键部件;枚举外设并为其分配资源;初始化显卡、硬盘、网卡等必要的外设;为操作系统建立运行环境,然后将控制权交给操作系统。
3.pci-express(peripheral component interconnect express)是一种高速串行计算机扩展总线标准,pcie属于高速串行点对点双通道高带宽传输,所连接的设备分配独享通道带宽,不共享总线带宽,主要支持主动电源管理,错误报告,端对端的可靠性传输,热插拔以及服务质量(qos)等功能。
4.现有的pcie卡中的uefi option rom,存在以下问题:
5.大部分pcie卡中的uefi option rom提供在bios界面选项的选项配置,但大部分商用pcie卡不带有汉化包,对国产化平台用户并不友好。


技术实现要素:

6.有鉴于此,本发明提供了一种bios option rom setup选项网络翻译系统和方法,能够解决对商用pcie外设,提供汉化翻译的问题。
7.本发明的bios option rom setup选项网络翻译系统,包括:外设匹配模块、语言包解析模块、动态翻译模块、语言包封装模块,以及本地翻译字库;
8.其中,所述外设匹配模块用于对外设板卡进行类型检测;所述语言包解析模块用于对外设板卡中的option rom进行解析,确认其是否有中文语言包;所述动态翻译模块将英文通过本地翻译字库或网络翻译的方式进行中文翻译,并获取对应的中文文字;所述语言包封装模块将翻译后的中文封装成bios可识别的中文语言包格式,并在内存中对外设板卡option rom中的语言包进行插入存储或替换存储;bios对存储在内存中的中文语言包进行动态加载并展示在屏幕上。
9.较优的,所述本地翻译字库包括了常用选项的中英文对照表,常用选项是根据本行业的通用语义进行的翻译。
10.较优的,所述动态翻译模块针对外设板卡中的英文单词或短语,首先在本地翻译字库中进行检索,若存在对应的中文,则使用本地翻译字库中的中文文字;若无,则将英文按照网络协议格式进行封装,并发送到翻译引擎中进行翻译,使用翻译引擎返回的中文文字。
11.本发明还提供了上述bios option rom setup选项网络翻译系统的翻译方法,包括:
12.步骤一、上电开机,bios启动,加载外设板卡驱动,加载所述翻译系统;
13.步骤二、外设匹配模块检测外设板卡类型,若有板卡需要翻译,则转入步骤三,若无板卡需要翻译,则结束翻译,返回bios;
14.步骤三、语言包解析模块针对外设板卡的option rom进行格式解析,检测其中是否包含中文语言包,若有,则结束翻译,返回bios;若没有,则转入步骤四;
15.步骤四、动态翻译模块解析板卡的英文语言包,并提取英文;若英文为单词或短语类,则利用本地翻译字库进行翻译,转入步骤六;若本地翻译字库没有对应中文,则转入步骤五;若英文为句子类,则转入步骤五;
16.步骤五、动态翻译模块通过bios内置的网络协议栈,将英文打包成网络翻译引擎可识别的数据包,发送给网络翻译引擎,并收到相应的中文翻译,转入步骤六;
17.步骤六、语言包封装模块将翻译的中文文字汇总并打包成option rom标准格式的中文语言包,并在内存中进行插入和替换;
18.步骤七、bios加载option rom的中文语言包,在屏幕中进行显示。
19.较优的,所述步骤二中,外设匹配模块首选获取外设板卡的hiihandle;根据hiihandle,通过devicepath获得外设板卡的设备路径;根据设备路径,通过pciio访问外设板卡的配置空间,从而获取外设板卡的厂商id、设备id,获得该外设板卡的类型。
20.较优的,所述步骤三中,语言包解析模块根据外设板卡的hiihandle,获得板卡的字库和vfr界面包,从板卡字库中即可解析出该板卡所支持的语言,判断是否包含中文语言包。
21.有益效果:
22.(1)uefi bios启动过程中只会针对pcie卡中自带的语言包进行支持,通过本发明,可以让bios上电过程中解析要支持的uefi option rom,把英文语言包获取到后通过http对接网络翻译端口,并把翻译完的结果生成语言包的形式添加到新的包中,uefi bios自动匹配所有支持的语言进行显示。本发明可以在bios界面上显示出option rom汉化选项,解决了商用板卡中,不配备中文语言包的问题,提升了国内用户使用商用板卡的便利性。同时,本发明为动态翻译,不需要bios厂商或其他bios工作人员事先对商用板卡的语言包进行提取、翻译和预置中文语言包,提升了外设板卡本地语言自动适配能力。
23.(2)本发明将英文进行分类,针对单词、短语类,首先构建本地翻译字库,进行本行业通用语义的单词、短语翻译,提高专业准确性;针对短句和长句,则直接打包网络翻译,提高翻译速度。
24.(3)根据外界板卡的设备路径即可访问板卡的配置空间,获得板卡厂商id、设备id,即可获知该外界板卡类型,方便快捷。
25.(4)根据外设板卡的hiihandle,即可获得板卡的字库,从而判断其是否包含中文语言包,方便快捷。
附图说明
26.图1为本发明bios option rom setup选项网络翻译框架图;
27.图2为bios option rom setup选项网络翻译流程图;
28.图3为raid板卡的字库截图。
具体实施方式
29.下面结合附图并举实施例,对本发明进行详细描述。
30.本发明提供了一种bios option rom setup选项网络翻译系统,包括了三个层面:
31.(1)硬件层面。硬件层面包括了处理器平台、内存等其他计算机关键元器件,以及raid卡、显卡等外设。
32.(2)bios层面。bios层面包括了bios核心框架及动态翻译部件。
33.(3)操作系统层面。本发明中未对操作系统有特殊要求。
34.本发明bios option rom setup选项网络翻译系统,能够对没有中文语言包的外设板卡进行自动翻译。该系统能够检测计算机外插板卡的类型,并检测其是否内置了中文语言包;在没有内置中文语言包时,将针对option rom的英文短语,在本地进行查找和翻译,针对短句、长句将通过网络翻译的方式,进行动态获取中文文字;并且,系统能够将获取的中文文字自动在内存中重新封装成中文包,完成中文语言包的内置替换,实现了外设板卡动态进行语言翻译的功能,提升了用户使用外设板卡的便利性。
35.具体的,bios option rom setup选项网络翻译系统包括外设匹配模块、语言包解析模块、语言包封装模块、动态翻译模块、本地翻译字库;
36.bios核心框架用于加载网络动态翻译部件。bios核心框架用于建立uefi中的系统服务表格,包括启动服务(boot service)和运行时服务(runtime service),进行固件中所有模块的统一管理和各种资源的管理。网络动态翻译部件可以通过bios核心框架加载运行。
37.bios option rom setup选项网络翻译系统通过外设匹配模块,对外设板卡进行类型检测;系统通过语言包解析模块对外设板卡中的option rom进行解析,确认其是否有中文语言包;通过动态翻译模块,将英文短语或长句分别在本地和网络翻译的方式进行中文翻译,并获取对应的中文文字,系统通过语言包封装模块在内存中,将翻译后的中文封装成bios可识别的中文语言包格式,bios对option rom的语言包进行动态加载,并将中文展示在屏幕上。
38.其中,所述外设匹配模块对外设板卡的类型进行检测时,若发现该板卡类型不需要翻译,则针对外设板卡忽略翻译的步骤,若需要,则继续动态翻译。
39.所述语言包解析模块对外设板卡语言包进行检测时,若有中文语言包,则针对外设板卡忽略翻译的步骤;若无,则进行动态翻译。
40.所述本地翻译字库包括了常用选项的中英文对照表。这些常用选项的翻译,是根据本行业的通用语义进行了翻译,具有较高的准确性。
41.所述动态翻译模块对外设板卡的外文语言(以英语为例)进行翻译时,首先,针对外设板卡中的英文单词或短语,优先在本地翻译字库中进行检索,若存在对应的中文,则优先使用本地字库的中文文字;若无,则进行网络翻译。其次,动态翻译模块针对外设板卡中的英文短句或长句,以及本地字库中没有的英文,将直接将英文按照网络协议格式进行封装(如http),并发送到翻译引擎中进行翻译,并接收返回的中文文字。
42.所述语言包封装模块用于将本地字库翻译或网络翻译后的中文文字打包成option rom中的中文语言包格式,并在内存中,对外设板卡option rom中的语言包进行插入或替换。完成中文语言包的替换后,bios将直接识别并加载相应中文的语言,实现了外设
板卡选项中文动态翻译的功能。
43.本发明还提供了一种bios option rom setup选项网络翻译方法,该方法实现的步骤包括:
44.前提条件:计算机中需配插外设板卡,且其中有至少一块外设板卡中没有中文语言包。计算机已接入网络,且网络中可以访问至少一种网络翻译引擎。
45.步骤一、上电开机,bios启动,加载板卡驱动。
46.步骤二、加载网络动态翻译部件,外设匹配模块检测计算机配插板卡,确认板卡类型。若其中有需要翻译的板卡类型则进入下一步骤,否则结束。
47.步骤三、语言包解析模块针对外设板卡的option rom(即,oprom)进行格式解析,检测其中是否包含中文语言包,若有,则结束;若否,则转入下一步骤。
48.步骤四、语言包解析模块解析板卡的英文语言包,并提取英文语言包中的英文。将其中的英文分为两类,一类是选项中的英文单词和短语,一类是英文短句和长句。优先对选项中的英文单词和短语进行本地翻译,若没有匹配的中英文对照,则将转入下一步进行网络翻译。英文短句和长句将直接进行网络翻译。
49.步骤五、动态翻译模块将通过bios内置的网络协议栈,将英文打包成网络翻译引擎可识别的数据包,发送给网络翻译引擎,并收到相应的中文翻译。若无对应的英文翻译,则仍显示原有英文。
50.步骤六、所有英文翻译完成后,语言包封装模块将对应的中文文字汇总并打包成option rom标准格式的中文语言包,并在内存中进行插入和替换。
51.步骤七、bios将加载option rom的中文语言包,在屏幕中进行显示。
52.下面针对一款raid卡的翻译过程,进行详细说明如下:
53.步骤一、上电开机,bios启动,加载板卡驱动;
54.等待bios bds阶段connect完所有驱动后(包括板卡的option rom),option rom加载完就会在bios内核中注册字库和界面。
55.步骤二、加载网络动态翻译部件,检测联网和检测计算机配插板卡,根据设备路径、厂商id、设备id等特征信息,筛选需要翻译的板卡(如厂商id 0x1122、设备id 0x6a)。外设匹配模块先获取到所有设备句柄,通过设备句柄得到设备路径,通过devicepath(每个板卡都有唯一的设备路径)拿到设备路径,而后就可以访问raid卡的配置空间,从而获取板卡的厂商id 0x1122设备id 0x6a筛选raid板卡。
56.步骤三、从板卡中提取字库进行解析;
57.语言包解析模块拿到raid板卡的设备句柄,就可以拿到raid板卡的字库和vfr(bios的界面语言)界面包,从板卡字库(字库有特定的格式)中解析该板卡所支持的语言,发现该板卡只支持英文,图3只是字库的一小部分截图。
58.步骤四、语言包解析模块拿到这个字库包头后,解析包的总大小,package header包含了下面package data所要支持的语言,我们进行定位package data,每一段英文是两个00结尾,所以我们进行遍历,提取出短语或单词,优先对选项中的英文单词和短语进行本地翻译,英文短句和长句然后发送http翻译请求包。
59.步骤五、动态翻译模块将通过bios内置的网络协议栈,将英文打包成网络翻译引擎可识别的数据包,发送给网络翻译引擎,并收到相应的中文翻译。若无对应的英文翻译,
则仍显示原有英文。
60.步骤六、所有英文翻译完成后,语言包封装模块将对应的中文文字汇总并打包成option rom标准格式的中文语言包,中文要以unicode格式编码并在每个翻译的格式后以三个0x00结尾,重新构造包头并修改总包头大小,由于原来字库内存空间是固定的,如果直接后面追加,可能造成内存破坏,所以我们不能在包后面进行构造,所以要把旧的字库移除,对重新申请内存构造的字库进行更新。
61.步骤七、更新成功后进入bios setup,把语言切换成所要翻译的语言并查看raid板卡option rom选项并进行配置。
62.综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1