I am trying to get file open/write/create operation, I have tried fslogger which can only get file creation/delete....and other operations, can not get open/close operation, then I wrote a driver to do it, I can get open/close operation but can not get create operation, what's more, it's too messy! for example, if I open a file and modify it, and then close it, the driver gets a lot of open/write operations..I have no way to tell which one is really caused by user open/close operation.. any hints about this? thanks.
how to monitor operation on mac platform
744 Views Asked by Jet At
1
There are 1 best solutions below
Related Questions in MACOS
- How do I customize NSOutlineView to have border color?
- Force sublime text to use PATH from the shell value
- Do executable files always open a terminal window on MacOS?
- setting OpenGL version in objective-C
- C std library don't appear to be linked in object file
- Cross compile simple standard C program on Linux for Mac
- How to generate request format for WCF web service method for Mac and iPhone
- Bundle Multiple Xamarin apps in one pkg installer
- How to Handle Command Line Prompt from a Cocoa App
- AVFoundation - Process each image separately
- CMYK NSImage get pixel data
- how i get the mac of ibeacon or BLE
- Set JAVA_HOME on Mac
- Finding active IPv6 interfaces under Mac OS (using Python)
- OSX: Why is my launchd agent running my script twice?
Related Questions in KERNEL-EXTENSION
- OSX kext: Can't open IOResouces in ::start() due to owned by some other
- BLE interfce mac OS 10.12 class porting
- Kext driver cannot find symbol OSPrintBacktrace
- IOServiceOpen returns kIOReturnUnsupported despite driver's user client instantiation
- I can't find file "/usr/lib/kernex.exp" in my AIX 6.1 when I write a Kernel Extension
- Kernel extension not removed from /Library/StagedExtension in High Sierra OSX
- Network Kernel Extensions case Mac Kernel Panic
- Which KPI Library Is IODeviceMemory Declared In?
- Permission Problems with KextManagerLoadKextWithIdentifier
- Unable to find symbol links for IOKit kext
- how to monitor operation on mac platform
- how come osx kernel get so many times of file operations
- Packages installer how to detect if user consent to kext
- Xcode: Link kernel framework to kernel extension?
- trying to run kextutil on kext file returns permissions error
Related Questions in FILE-MONITORING
- How should I read the filename in FILE_NOTIFY_INFORMATION struct
- Monitoring file changes using select() within a loop
- how to monitor operation on mac platform
- File Montoring | Not updating in jsp while listening
- FindFirstChagneNotification cannot find specified file
- How to filewatch three folder at same time
- Monitor file for read availability using asyncio on Windows
- Monitor unlimited files/folders under Mac osx with Qt
- check directory of oracle logs
- FileSystemWatcher skips Created-events
- Best way to check a file content is changed or not with perl?
- How does c# FileSystemWatcher handle multiple files?
- monitoring proc mounts using poll or select
- Build a File Monitoring System
- Watchdog library isn't identified
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Your best bet is going to be the KAuth system. You install your kauth handler (as a kernel extension) and get various callback codes when someone tries to create, open or close a file. This involves getting your callback in the critical path of opening files, so whatever you do has to be quick!
To quote:
If you're writing a kext you then have the question of how to get that info back into userland. FWIW I used Kqueue but you may have success with another method (let me know in the comments if you do!).
More info on Kauth here and KQueue here. It's not brilliantly documented, but there's enough info between those two to work out what you need to do.