我正在为Mac OS编写内核扩展,我需要删除由...创建的tmp文件 vnode_open(),但我找不到如何删除文件并列出目录中的所有文件。
谢谢!
答案 0 :(得分:2)
最好创建用户空间守护程序并使用mach RPC与之通信。 在kext中删除文件的方法(我知道)取决于内核的版本,因为它需要在vnode结构中查找v_op(vnode操作向量。在内核扩展中不可见)的偏移量。 vnode结构可能会从内核更改为内核。即使找到vnop_remove_desc和vnop_rmdir_desc,我认为使用它可能会有危险,因为可能会改变使用这些回调的逻辑。