我将Solaris应用程序移植到Linux平台,我正在寻找以下Solaris特定文件的替代头文件。
sys/devpoll.h
sys/procset.h
sys/systeminfo.h
sys/types32.h
sysutil.h
答案 0 :(得分:1)
您需要进行一些严肃的重写,因为您的应用程序似乎使用了大量特定于Solaris的内部实现,甚至是Solaris内部实现。
sys/devpoll.h
- 没有等效的,最接近Solaris /dev/poll
的Linux替代品是使用sys/epoll.h
。
sys/procset.h
- 没有等效的,几乎完全是Solaris内核的通道。
sys/systeminfo.h
- sys/sysinfo.h
。请参阅Solaris和Linux的sysinfo()
手册页,因为sysinfo()
库调用在两个平台上有显着差异,
sys/types32.h
- 没有等价物。不仅如此,我的Solaris 11.2文件服务器上的sys/types32.h
也有此警告:
/*
* Interoperability types for programs. Used for:
*
* Crossing between 32-bit and 64-bit domains.
*
* On disk data formats such as filesystem meta data
* and disk label.
*
* Note: Applications should never include this
* header file.
*/
sysutil.h
- 似乎不是Solaris标头。它在我的Solaris 11.2文件服务器上不存在,也不会出现在illumos.org托管的OpenSolaris源中。