《Android深度探索(卷1):HAL与驱动开发》——1.6节 Linux设备驱动
本节书摘来自异步社区《Android深度探索(卷1):HAL与驱动开发》一书中的第1章,第1.6节 Linux设备驱动,作者李宁,更多章节内容可以访问云栖社区“异步社区”公众号查看 1.6 Linux设备驱动Android深度探索(卷1):HAL与驱动开发随着计算机技术的不断发展,与计算机(也包括手机等计算设备)相关的硬件设备的种类也不断丰富起来。这就需要大量的Linux设备驱动来与这些硬件设备进行交互。为了使读者在学习如何编写Linux驱动之前对Linux驱动有一个初步的认识,本节介绍了设备驱动在整个操作系统中的作用以及设备驱动的分类。 1.6.1 设备驱动的发展和作用任何一台计算机系统的运行都是由软硬件共同作用的结果,没有硬件的软件是空中楼阁,而没有软件的硬件则是一堆废铁。在计算机软件发展的初期,并没有驱动的概念,在这个时期的软件都是直接访问计算机的硬件。一般会通过计算机上的各种元器件和接口(如网卡上的中断、I/O端口、串口、寄存器等)与要控制的硬件通信。例如,本书曾经使用TC2.0(DOS环境)直接和串口通信来获取外部设备中的数据。 应用程序与硬件直接通信从技术上当然没什么问题,...