首页 > linux 网络一些概念

linux 网络一些概念

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

非常感谢!


1.对串行端口的访问是通过/dev下的设备文件完成的。-->一切皆文件,不管是socket,还是其他设备或是文件,所有操作都统一了,这个你应该已经理解了。

2.所有对设备访问都是通过接口来实现的.-->此处说的接口就是open read write等函数。内核大牛们写的c都是类似面向对象的。linus之前喷c++的时候就说过,面向对象c语言也可以做。其实这些接口都是指针,在不同类型的设备初始化时,赋了不同的回调。

这两句其实不冲突,也就是有了第二点的处理,才能做到第二点的一切皆文件。


unix一切皆文件,所以全部都用通用的IO接口即可


unix/linux系统把所有设备都抽象成文件了,比如键盘、鼠标、终端、磁盘,当然串口也不例外。这样在访问或使用这些设备的时候不就简单了嘛~


linux上面,大部分东西都可以理解成一个文件。
所以,你接入一个u盘,移动硬盘,or net-socket ,都可以使用read/write函数对其进行读写。

【热门文章】
【热门文章】