现代微机原理与接口技术 第10章PC机的高级编程技术 Department of Computer Science Engineering 算机科学与工程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 1 第10章 PC机的高级编程技术
10PC机环境下软件对接口的访问层次 应用程序 操作系统 方间 间接访 驱动程序 BIOS|直接访问 裸机 Department of Computer Science Engineering 2 算机科学与工程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 2 10.1 PC机环境下软件对接口的访问层次 裸机 BIOS 直接访问 操作系统 间接访问 驱动程序 应用程序
1直接访问层次 现代微机原理与接口技术 特点:可以直接进行内存和端口的访问,也可以 自行决定是否在实模式和保护模式间切换 。通常所有的端口和内存都是对程序员开 放的 工具:汇编语言或C语言。 应用:BIOS都是基于这种低级层次用汇编来编写 的。驱动程序也有使用这种方法的 优点:能够编写速度最快,占用空间最小的有效 代码。 缺点:需要对硬件和接口有很熟悉的了解 要会汇编,或熟练使用C语言的指针 不利于增加对新设备的控制 计算机科学与 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 3 1.直接访问层次 特点:可以直接进行内存和端口的访问,也可以 自行决定是否在实模式和保护模式间切换 。通常所有的端口和内存都是对程序员开 放的。 工具:汇编语言或C语言。 应用:BIOS都是基于这种低级层次用汇编来编写 的。驱动程序也有使用这种方法的。 优点:能够编写速度最快,占用空间最小的有效 代码。 缺点:需要对硬件和接口有很熟悉的了解。 要会汇编,或熟练使用C语言的指针。 不利于增加对新设备的控制
现代微机原理与接口技术 2BOS访问层次 特点:通过BIOS提供的功能调用间接地对内存 或端口访问,从而控制硬件。 工具:汇编语言或C语言。 应用:驱动程序有些会使用这些功能调用。需要 获得高效率的应用程序也采用这种方法。 优点:能够编写速度较快的有效代码。 可以不需要编写直接对硬件进行控制的代 码。 缺点:需要对底层信号有所了解。 增加对新设备的控制不是很方便,但好于 低级层次。 Department of Computer Science Engineering 4 「计算机科学与工程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 4 2.BIOS访问层次 特点:通过BIOS提供的功能调用间接地对内存 或端口访问,从而控制硬件。 工具:汇编语言或C语言。 应用:驱动程序有些会使用这些功能调用。需要 获得高效率的应用程序也采用这种方法。 优点:能够编写速度较快的有效代码。 可以不需要编写直接对硬件进行控制的代 码。 缺点:需要对底层信号有所了解。 增加对新设备的控制不是很方便,但好于 低级层次
现代微机原理与接口技术 3驱动程序层次 特点:使用BIOS功能调用和直接内存访问的方 法编写符合特定操作系统管理规范的设备 驱动程序。 工具:VC+与DDK开发包,或第三方开发工具 如 Driverstudio。 应用:在操作系统层面上的设备控制,并为应用 程序提供API支持。 优点:既控制硬件,又保证操作系统的完整与安 缺点:需要对底层信号有所了解。 需要对操作系统的各个管理模块有深入的 解 tOnt of Computer Science Engineering 计算机科学与 程系 http://qsyang.yeah.net
http://qsyang.yeah.net 现代微机原理与接口技术 5 3.驱动程序层次 特点:使用BIOS功能调用和直接内存访问的方 法编写符合特定操作系统管理规范的设备 驱动程序。 工具:VC++与DDK开发包,或第三方开发工具 如DriverStudio。 应用:在操作系统层面上的设备控制,并为应用 程序提供API支持。 优点:既控制硬件,又保证操作系统的完整与安 全。 缺点:需要对底层信号有所了解。 需要对操作系统的各个管理模块有深入的 了解