Filesystems OracleSolaris 11.2——类似于Linux procfs的机制

Filesystems OracleSolaris 11.2——类似于Linux procfs的机制,filesystems,kernel,solaris,procfs,opensolaris,Filesystems,Kernel,Solaris,Procfs,Opensolaris,在Linux中,通常使用proc FS作为与内核模块对话、从内核接收统计信息或设置一些标志的手段。在Solaris中可以使用什么来实现这些功能?procfs最初的设计目的是允许访问与流程相关的信息。在Linux上,这个目标出轨了,各种与进程无关的伪文件和目录开始出现在那里。通过在使用sysfs而不是procfs的/sys中重新定位(部分)它们,这一点正在慢慢得到纠正 Solaris中没有这样的问题,procfs严格限制为处理数据。Solaris和Linuxprocfs实现之间的一个主要区别是,L

在Linux中,通常使用proc FS作为与内核模块对话、从内核接收统计信息或设置一些标志的手段。在Solaris中可以使用什么来实现这些功能?

procfs
最初的设计目的是允许访问与流程相关的信息。在Linux上,这个目标出轨了,各种与进程无关的伪文件和目录开始出现在那里。通过在使用
sysfs
而不是
procfs
/sys
中重新定位(部分)它们,这一点正在慢慢得到纠正

Solaris中没有这样的问题,
procfs
严格限制为处理数据。Solaris和Linux
procfs
实现之间的一个主要区别是,Linux通常提供纯文本数据,Solaris在其中公开二进制结构

对于与进程无关的统计信息,常用的Solaris接口是一个API,许多命令都使用它,也可以通过命令从shell中查询它


设置标志和与内核“通信”的方式完全取决于需要做什么,没有单一的接口。它还根据Solaris版本进行了改进。

procfs
最初设计为允许访问与流程相关的信息。在Linux上,这个目标出轨了,各种与进程无关的伪文件和目录开始出现在那里。通过在使用
sysfs
而不是
procfs
/sys
中重新定位(部分)它们,这一点正在慢慢得到纠正

Solaris中没有这样的问题,
procfs
严格限制为处理数据。Solaris和Linux
procfs
实现之间的一个主要区别是,Linux通常提供纯文本数据,Solaris在其中公开二进制结构

对于与进程无关的统计信息,常用的Solaris接口是一个API,许多命令都使用它,也可以通过命令从shell中查询它


设置标志和与内核“通信”的方式完全取决于需要做什么,没有单一的接口。它也随着Solaris版本的不同而发展。

在Solaris中,您要做的是使用kstats(3kstat)提供有关驱动程序的信息,如@jilliagre所述。如果您想让您的驱动程序完成一些事情,那么您应该通过ioctl(2)提供该功能。

在Solaris中,您要做的是使用kstats(3kstat)提供有关您的驱动程序的信息,如@jilliagre所述。如果你想让你的司机做一些事情,那么你应该通过ioctl(2)提供该功能。

谢谢你的澄清。我正在将Linux驱动程序移植到Solaris 11.2,基本上我在Solaris上重新实现了Linux特定的功能。驱动程序使用procfs进行统计转储、底层H/W寄存器转储、设置调试级别等操作。那么,可以使用哪些Solaris特定的方法在驱动程序中完成这些操作?您可以创建自己的
kstats
,以公开驱动程序统计信息。对于配置,
ioctl
可能是一个合适的接口,但这实际上取决于您正在开发/移植的设备驱动程序的类型。另外,如果你的目标是发布/分发你的驱动程序,请确保你有一个允许链接专有代码的许可证。谢谢澄清。我正在将Linux驱动程序移植到Solaris 11.2,基本上我在Solaris上重新实现了Linux特定的功能。驱动程序使用procfs进行统计转储、底层H/W寄存器转储、设置调试级别等操作。那么,可以使用哪些Solaris特定的方法在驱动程序中完成这些操作?您可以创建自己的
kstats
,以公开驱动程序统计信息。对于配置,
ioctl
可能是一个合适的接口,但这实际上取决于您正在开发/移植的设备驱动程序的类型。另外,如果目标是发布/分发驱动程序,请确保使用允许链接专有代码的许可证。