[发明专利]一种基于开源系统基本输入输出系统的BIOS系统和方法有效
申请号: | 201110126311.9 | 申请日: | 2011-05-16 |
公开(公告)号: | CN102169446A | 公开(公告)日: | 2011-08-31 |
发明(设计)人: | 程旭;李皓;郑衍松;佟冬;管雪涛 | 申请(专利权)人: | 北京北大众志微系统科技有限责任公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 栗若木;王漪 |
地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 系统 基本 输入输出 bios 方法 | ||
技术领域
本发明涉及计算机应用领域,尤其涉及一种基于开源基本输入输出系统(BIOS)的BIOS系统和方法。
背景技术
自从1981年,IBM为世界上第一台个人计算机(PC)开发出针对其的基本输入输出系统(BIOS)以来,为了保持向后兼容,虽然各种计算机软硬件层出不穷,但传统的PC BIOS作为软硬件接口,它的架构并没有发生太大改变。通用的PC BIOS由两部分组成:一是板级模块,特定于每个系统平台,用于初始化系统平台中所有的设备到可以工作的稳定状态,包括中央处理器(CPU)、南桥、北桥以及连接在南北桥上的硬件模块等;一是接口模块,普遍适用于所有平台,作为通用接口,通过对板级设备进行抽象提供给操作系统统一的接口与板级设备进行通信。其功能主要包括:1)开机自测试(POST,Power On Self Test),计算机系统加电后,控制权交给BIOS,BIOS执行系统检测,包括CPU和各种传统设备的初始化,传统设备包括可编程间隔计时器、可编程中断控制器、直接内存访问控制器等;2)初始化高速缓冲存储器、主板芯片组、显卡及相关外围设备的寄存器;3)保存系统的设置,存储在非易失性存储器中;4)将中断服务例程保存于内存中,提供给操作系统启动过程和运行过程的调用。典型的中断服务例程包括INT10H的图形服务例程,INT13H的磁盘服务例程,INT16H的键盘服务例程等。
但是随着计算机的发展,PC BIOS由于软硬件接口不公开、业界工业规范内容广泛、运行在x86系统下的PC BIOS大部分采用汇编语言实现,而汇编语言提供的语言级抽象较少,编译复杂,并且PC BIOS中不断加入新的功能模块使得传统PC BIOS的规模和容量变得庞大冗余、晦涩难懂,架构陈旧,启动速度慢并且存在较多漏洞(BUG)。因此,在可扩展固件接口(UEFI)规范推出之前,开源BIOS应运而生,如由Los Alamos国家实验室创建的coreboot系统(原名LinuxBIOS),以及现由德国DENX软件工程中心Wolfgang Denk维护的U-Boot系统,它们普遍具备模块化架构设计、可扩展性强、使用高级语言开发、可移植性强以及系统平台支持丰富等优势。开源BIOS的主要功能包括:1)开机自测试(POST),当计算机系统加电后,系统控制权交给开源BIOS,开源BIOS执行系统检测,包括CPU各项寄存器、可编程间隔计时器、可编程中断控制器和直接内存访问控制器等;2)初始化高速缓冲存储器、主板芯片组、显卡及相关外围设备的寄存器;3)保存系统设置,存储在非易失性存储器中。
但是这些开源BIOS由于不提供商业非开源操作系统所依赖的中断服务例程,无法支持如Windows家族在内的大型商业非开源操作系统。因此,开发出一种支持传统和现代操作系统的基于开源BIOS启动操作系统的系统和方法是亟待解决的问题。
发明内容
本发明要解决的问题是提供一种基于开源系统基本输入输出系统的BIOS系统和启动方法。
为解决上述技术问题,本发明提供了如下技术方案:
基本输入输出系统(BIOS)的操作系统接口(INTERFACE)模块的中断服务例程采用可选择性唯读记忆体(Option ROM)模组(Module)方式实现;
所述BIOS在计算机系统加电时,板级核心模块(CORE)初始化板级设备并输出系统信息,板级核心模块抽象层(MAPPER)模块根据所述系统信息转换得到可由所述操作系统接口模块识别的系统信息表格,所述板级核心模块对所述操作系统接口模块包含的所述中断服务例程根据所述系统信息表格中的信息依次进行初始化,所述系统信息包括所述计算机系统的硬件列表、相应的端口地址以及内存大小的信息。
进一步的,所述操作系统接口模块采用Option ROM Module方式实现所述中断服务例程具体包括,所述操作系统接口模块包括多个Option ROM,每个Option ROM对应一个服务例程,所述Option ROM包括所述服务例程、所述服务例程的初始化例程和可选择性唯读记忆体头(Option ROM Header),所述服务例程的初始化例程包括所述服务例程的入口地址信息,所述OptionROM Header包括所述Option ROM的大小和所述服务例程的初始化例程地址的信息。
进一步的,所述板级核心模块为可扩展开源BIOS;所述MAPPER模块是所述开源BIOS相关的。
进一步的,所述板级核心模块还保存所述操作系统接口模块的地址范围,所述Option ROM依次进行初始化具体包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京北大众志微系统科技有限责任公司,未经北京北大众志微系统科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110126311.9/2.html,转载请声明来源钻瓜专利网。