din*_*elk 7 networking devices ethernet
一般来说,我注意到在 Linux 系统中插入一个新设备会导致一个新条目被列出/dev(假设你有正确的驱动程序)。
例如:
/dev/sdb./dev/ttyS0.当我插入以太网设备时,为什么我没有得到类似的信息/dev/eth0?
是否有以太网端口的设备列表?
我知道您可以使用 看到端口名称ifconfig,我只是想知道是否也显示了某些内容/dev。
这是个好问题。原因本质上是历史性的;随着时间的推移,具有不同目标和优先级的不同群体添加了 Unix 的一部分,各种 API 之间的差异反映了这段历史。我认为最初的设备文件概念可以追溯到贝尔实验室,而网络套接字是后来在加州大学伯克利分校添加的。贝尔试图为 AT&T 的运营创建一个很好的干净的可维护范式,而伯克利需要添加不容易融入该范式的互联网功能。从技术上讲,/dev/eth0今天可以返回并创建一个文件(见下文),但这将涉及重写大量的遗留代码。
轻微 OT:如果你对这个主题感兴趣,可以考虑看看 Plan 9,它把“一切都是文件”带到了更大的极端(只是不要指望它有很多现代的、可用的应用程序):
http://www.faqs.org/docs/artu/plan9.html
在 Unix 下通过各种特殊接口(如 BSD 套接字、fcntl(2) 和 ioctl(2))访问的许多设施在计划 9 中通过对类似于设备文件的特殊文件的普通读写操作访问
| 归档时间: |
|
| 查看次数: |
10751 次 |
| 最近记录: |