1

a-swapper 启用在其中使用 SD 卡作为交换空间 ( http://code.google.com/p/a-swapper/ ) 的 android 设备中的交换。我可以制作一个应用程序来防止使用 mlock() 将特定当前正在运行的应用程序交换到交换空间中,还是有其他方法可以解决这个问题?

此外,busybox 默认小程序似乎没有 mlock()。

4

1 回答 1

1

阅读mlock(2)手册页。它需要root权限或至少需要 CAP_IPC_LOCK能力。查看功能(7)

在大多数 Android 系统上,要根植它们并不容易。

并且mlock只适用于当前进程的虚拟空间(不适用于其他进程的地址空间)。阅读有关虚拟内存的信息。考虑使用/proc/ (有关更多信息,请参见proc(5))来了解它。(了解cat /proc/self/maps.... 的输出)

阅读Advanced Linux Programming也应该有所帮助。

于 2013-10-08T04:35:43.020 回答