发明名称 一种利用UNDI实现网络通信的方法
摘要 本发明涉及一种利用UNDI实现网络通信的方法,先将专用BIOS扩展ROM刷入存储芯片内;该专用BIOS扩展ROM中包含一个支持UNDI接口的功能模块,该功能模块包括两个部分:初始化子程序、中断钩子子程序;当BIOS自动加载初始化子程序时,初始化子程序替换DHCP模块会调用的某一个系统中断服务程序的入口地址为中断钩子子程序的地址;中断钩子子程序用于UNDI驱动驻留内存后,中止PXE ROM继续运行。本发明所述的利用UNDI实现网络通信的方法,直接利用PXE ROM中的UNDI驱动实现网络通信,为远程维护软件提供网络通信服务,可以在不需要完整运行PXE ROM的情况下直接使用UNDI驱动,即在PXE ROM完成UNDI驱动的加载后,中止PXE ROM的运行。
申请公布号 CN102033763B 申请公布日期 2013.09.04
申请号 CN201010559994.2 申请日期 2010.11.26
申请人 武汉噢易科技有限公司 发明人 刘奇;曾丽星
分类号 G06F9/445(2006.01)I 主分类号 G06F9/445(2006.01)I
代理机构 北京捷诚信通专利事务所(普通合伙) 11221 代理人 魏殿绅;庞炳良
主权项 一种利用UNDI实现网络通信的方法,其特征在于,包括以下步骤:步骤1、将专用BIOS扩展ROM刷入存储芯片内,所述存储芯片为:BIOS芯片,或采用PCI总线的外置卡的Option ROM芯片,或采用PCI‑E总线的外置卡的Option ROM芯片;所述专用BIOS扩展ROM符合BIOS规范中关于BIOS扩展ROM的标准,且该专用BIOS扩展ROM中包含一个支持UNDI接口的功能模块,该功能模块包括两个部分:初始化子程序、中断钩子子程序;步骤2、计算机开机引导,BIOS自动扫描BIOS扩展ROM,并自动加载被扫描到的BIOS扩展ROM中的初始化子程序,当专用BIOS扩展ROM被扫描到时,该专用BIOS扩展ROM的初始化子程序被加载,专用BIOS扩展ROM的初始化子程序修改中断向量表,替换PXE ROM的DHCP模块所调用的编号为0x15或0x1A的系统中断服务程序的入口地址为专用BIOS扩展ROM的中断钩子子程序的地址,初始化子程序完成上述步骤后退出,控制权交回BIOS;步骤3、BIOS在完成自动扫描BIOS扩展ROM过程后,按顺序加载可引导设备;当加载带有PXE ROM的网卡时,PXE ROM从BIOS获得控制权,PXE ROM执行引导操作时,依据PXE规范完成UNDI驱动的功能接口的准备工作;步骤4、PXE ROM继续运行,接着调用DHCP模块,DHCP模块在执行过程中调用一些系统中断服务程序,当调用到入口地址已经被替换成中断钩子子程序的地址的系统中断服务程序的入口地址时,中断钩子子程序被DHCP模块调用;步骤5、中断钩子子程序被调用获得控制权后,中止PXE ROM继续运行,将控制权交回BIOS;完成上述步骤后,UNDI驱动已经驻留内存,只需要按照UNDI接口规范调用UNDI提供的API,即可进行网络通信。
地址 430074 湖北省武汉市东湖高新技术开发区SBI创业街6栋7层