Filesystems Plan9文件类型
据说在计划9中,一切都是一个文件 请列出所有内容Filesystems Plan9文件类型,filesystems,plan-9,Filesystems,Plan 9,据说在计划9中,一切都是一个文件 请列出所有内容 i、 e.plan9文件系统中表示的所有内容(尤其是*nix os es中不是文件的内容)。并非“所有内容都是文件”完全正确,而是大多数内容都有类似文件的界面。这看起来像是吹毛求疵,但有区别。我不认为我能列出所有的东西,但我会给你一些例子 TCP/IP的接口是一个文件系统,/net公开“文件” 文本编辑器acme具有关联的控制文件,可以向其中写入文本命令以更改窗口中的文本 鼠标和键盘表示为数据文件,例如/dev/mouse 窗口系统rio公开文
i、 e.plan9文件系统中表示的所有内容(尤其是*nix os es中不是文件的内容)。并非“所有内容都是文件”完全正确,而是大多数内容都有类似文件的界面。这看起来像是吹毛求疵,但有区别。我不认为我能列出所有的东西,但我会给你一些例子
- TCP/IP的接口是一个文件系统,
公开“文件”/net
- 文本编辑器acme具有关联的控制文件,可以向其中写入文本命令以更改窗口中的文本
- 鼠标和键盘表示为数据文件,例如
/dev/mouse
- 窗口系统
公开文件系统接口rio
- web浏览器
从安装的abaco
文件系统读取数据webfs
在
/sys/doc
目录中(和上)有很多关于计划9的设计和实施的论文 Plan 9以文件系统为中心,因此它将系统的每个元素都作为文件公开,这是UNIX的基本理念。通过这种方式,可以将synergy提升到环境中,例如,您可以从网络的任何节点访问受支持的设备,而无需任何类型的配置。有关(几乎)完整的列表,请参阅手册部分和
基本思想是。内核以设备的形式公开资源,以文件服务器的形式公开用户程序
这允许在网络环境中轻松共享资源。例如,要使用连接到另一个工作站的鼠标,您只需将该工作站映射(在Plan 9行话中绑定)到您的名称空间。要使用另一台机器作为所有tcp连接的代理,只需将该机器绑定到您的名称空间
细节都经过了很好的考虑,系统在实践中运行良好。浏览,如果您对此仍感兴趣,请尝试一下,看看您自己。正如twopoint718所说,Plan9服务的“风格”是提供类似文件的界面
列出“所有内容”是不可能的,因为任何人都可以编写另一个服务并通过合成文件接口公开它
我喜欢将Plan9样式视为一个基于大块对象的系统,或者如Alan Kay所说:“基于消息传递的”系统。您通过实现这些服务器(当前范例中的微服务)来构建系统,定义它们的接口,然后通过“管道”组成服务来集成更全面的系统