我们的程序需要时钟保持着对SATA硬盘的检测,当硬盘被拔掉或者插上时,都应该要有提示信息。那么在Linux下面,我需要去读取、检测哪儿才能获取该信息呢?如果有人对USB的热插拔也比较了解的,欢迎过来帮我扫盲!(我大致看了驱动层,整个SATA的中断最后通过task_let调用了ATA的函数,然后我就啥都不知道了,对ATA驱动一点都没有知识)
------解决方案--------------------
#1楼的方法其实比较直接,也比较简单。
如果真要第一时间知道对应的硬盘信息,你可能需要看scsi模块的一些接口,因为SATA硬盘最后会生成对应的scsi设备的。scsi模块里可能有一些接口可以告诉你有对应的 SATA硬盘被加载了。
或者,修改SATA硬盘的驱动,自己注册中断接口或者Event来告诉应用程序对应的硬件已经加入系统中。