大家好:我最近在看有关LINUX网络方面的书,对一些概念非常乱,不好理解,希望能帮我解惑,非常感谢!书中说对串行端口的访问是通过/dev下的设备文件完成的,然后又说系统定义了一个抽象的接口,所有对设备访问都是通过接口来实现的,这两句话单独理解都没问题,但是放在一起就乱了,能不能帮忙解释一下?非常感谢!
2 回答

梦里花落0921
TA贡献1772条经验 获得超6个赞
1.对串行端口的访问是通过/dev下的设备文件完成的。-->一切皆文件,不管是socket,还是其他设备或是文件,所有操作都统一了,这个你应该已经理解了。2.所有对设备访问都是通过接口来实现的.-->此处说的接口就是openreadwrite等函数。内核大牛们写的c都是类似面向对象的。linus之前喷c++的时候就说过,面向对象c语言也可以做。其实这些接口都是指针,在不同类型的设备初始化时,赋了不同的回调。这两句其实不冲突,也就是有了第二点的处理,才能做到第二点的一切皆文件。

蓝山帝景
TA贡献1843条经验 获得超7个赞
linux上面,大部分东西都可以理解成一个文件。所以,你接入一个u盘,移动硬盘,ornet-socket,都可以使用read/write函数对其进行读写。
添加回答
举报
0/150
提交
取消