原来驱动程序就是虚拟出设备文件

最近在看罗升阳的书《Andriod系统源码情景分析》。

今天中午看完了其中“Logger日志系统”部分。看完之后感觉还有很多东西不是很理解,然后准备看第二遍复习巩固一下。

在“Logger日志系统”主要讲了几大块:Log驱动、运行时日志库、C++&Java写入接口、Logcat工具分析。在复习的时候突然想:运行时日志库是怎么调用Log驱动的,找了一会之后,发现根本就没有直接调用,而是直接打开日志文件就进行读写。那我就在想了:那驱动程序是做什么的呢?然后再往回翻到第2章硬件抽象层(之前感觉这里太硬件的东西了,应该会很少用到,就没看),看了一会之后,恍然大悟,原来/dev/目录下的那些设备文件都是通过驱动程序生成的。
  驱动程序根据操作系统提供的标准接口提供实现,然后在编译和启动时候加载到系统里面。看起来它好像是一个文件,然后对它的读写都会直接操作到相应的驱动程序里面的代码。

  以前都是做应用层的东西,少接触这么底层的知识,今天算是长了知识。

原文地址:https://www.cnblogs.com/vinson1816/p/3139164.html