这个问题仅仅是出于好奇,但我怀疑其他人也会好奇。通过搜索errno.h(Linux 2.6的),我发现ENOANO“ No Anode”。没有“无阴极”错误的迹象。查看内核源代码的一致性,它似乎并没有被称为阳极的设备使用,而只是被一些晦涩的设备驱动程序故意作为怪异的错误代码使用。谷歌搜索没有发现任何兴趣。
这可能是个玩笑吗?它是在POSIX之类的标准文档中定义的,但是没有用吗?
这个问题仅仅是出于好奇,但我怀疑其他人也会好奇。通过搜索errno.h(Linux 2.6的),我发现ENOANO“ No Anode”。没有“无阴极”错误的迹象。查看内核源代码的一致性,它似乎并没有被称为阳极的设备使用,而只是被一些晦涩的设备驱动程序故意作为怪异的错误代码使用。谷歌搜索没有发现任何兴趣。
这可能是个玩笑吗?它是在POSIX之类的标准文档中定义的,但是没有用吗?
Answers:
ENOANO
出现在1992年9月1日发布的Linux 0.97中。很长一段时间,它没有在任何地方使用。从那以后,它在某些驱动程序中不时被使用为“我不知道要使用什么错误代码”。现在只在其中uapi/asm-generic/errno.h
(即在userland程序的头文件中),但是它已自动移动到那里,因此这并不表示是否有人在乎它。
errno.h
0.97中的标头引起了一些注意,因为它是SCO声称是从Unix SVR4复制的文件之一。在上合组织提出索赔时,莱纳斯·托瓦尔兹(Linus Torvalds)不记得那个文件是如何组装的。他后来发现它是由libc 2.2.2已知的值生成的。这是用于Linux的C库,并随Linux的GCC端口一起分发。该库可能包含当时各种unix变体的错误代码。
StéphaneChazelas发现在Convergent / Burroughs Unix(CENTIX)中使用了 “阳极”一词作为inode的同义词。我发现另一本书(从1993年开始)提到“阳极”是“索引节点”的变体,但除此之外,即使到那时,它似乎还是很模糊的。该的Solariserrno.h
印证了收敛起源:它在题为“收敛错误归来”(与深奥说明一些其他错误代码在一起,但至少部分列出ENOANO隐约理解喜欢“无效的交流”,“汇全”或“无效的插槽”还有更多的驱动程序使用)。
因此,ENOANO可能表明,在1980年代的某些商用Unix中,内核已耗尽了inode的内存,或者文件系统的inode表已满。现在忘记了Unix,现在忘记了其术语,并且由于一些怪癖,错误代码一直存在。
至少不是“ lp0 on fire ”。
我不知道与“在任何地方编写文件系统布局EP 1003103 A2”专利有什么关系,该专利似乎描述了我们现在所说的分布式文件系统。