如何在带有Android KitKat的外部SD卡上使用O_DIRECT或O_SYNC

时间:2014-02-19 07:24:49

标签: android android-4.4-kitkat

我为一家制造包含硬件加密引擎的SD存储卡的公司工作。我们通过写入/读取特殊文件与加密模块进行交互。

从KitKat开始,外部SD卡似乎不支持O_DIRECT标志。如果没有O_DIRECT or O_SYNC支持,当我们从SD卡读取加密引擎的响应时(通过我们的特殊文件),操作系统将返回缓存数据。

是否有使用O_DIRECT or O_SYNC打开永久SD卡上的文件,读/写的程序?

1 个答案:

答案 0 :(得分:0)

如果您具有对手机的root访问权限,则可以将1写入/ proc / sys / vm / drop_caches以清除页面缓存(请参阅http://linux-mm.org/Drop_Caches)。在该命令之后,sdcard上的下一次读取将返回非缓存数据。

对于stock-devices(你没有/ proc / sys / vm / drop_caches的权限),AOSP中存在一个问题(你可以为它加注星标): https://code.google.com/p/android/issues/detail?id=67406

相关问题