在c或java编程中使用交换文件

时间:2017-04-03 14:58:42

标签: java c linux unix swap

我在c程序中工作(我可以轻松地在java中重写)我想如果我使用swap来增加ram它可以顺利运行。但我不知道如何调用交换文件/分区。我可以在c或java上做吗?我可以询问用户是否在安装时是否要创建交换文件?

1 个答案:

答案 0 :(得分:3)

  

但我不知道如何调用交换文件/分区。我可以在c或java上做吗?

因为C和Java程序可以执行外部系统命令并且可以进行系统调用(通过JNI,在Java情况下),原则上你可以这样做。然而,这种事情肯定需要特权,因此通常不能在普通用户的权限下完成。

  

我可以询问用户是否在安装时是否要创建交换文件?

原则上,是的,你可以这样做。在系统管理员安装程序的情况下,您甚至可以依靠具有足够的权限来采取积极响应。

但你不应该。 这是系统管理员的域名和责任,我知道没有系统管理员欢迎程序的安装程序尝试 - 甚至提供 - 搞乱系统的虚拟内存配置。此外,如果您的安装程序被接受,您是否可以依赖于成功完成此类要约,因为您需要足够的未分配磁盘空间来创建交换分区,以及交换文件的足够空闲(可能是连续的)磁盘空间。

相反,记录您的程序的最低和理想内存要求。您可以考虑在安装时检查系统是否满足这些要求,但您作为软件提供商的责任在那里结束,这不是一个适合或欢迎您超出自己职责范围的领域。