I'm looking for something (a tool?) that can help me achieve my current goal: write a driver that can momentously interrupt the execution of the operating system (Linux, in my case), let me be able to run some code, and then resume the operating system execution, letting me access information on the pre-interruption context afterwards.

Following some advice, I've tried the well-known Intel Pin (a binary instrumentation framework), only to discover that in fact, it can only operate at user-level, while I need to access kernel mode. After some research, I've then found some interesting threads in this group, namely this and this. Currently, my doubt is which tool is best suited for my needs. I'm leaning towards DynamoRio Kernel (DRK), but besides the other frameworks/tools mentioned in both threads, I found some more that seem to somewhat relate to what I'm looking for, namely Valgrind, GILK (although this is pretty deprecated, so it's not an option) or QEMU.

The thing is, I'm a newbie in the area, so probably some of the tools I've mentioned in the last paragraph don't even apply to what I'm looking for. Can someone help me in choosing the best framework for my purposes?

  • Maybe you should mention what problem you're trying to solve with this approach.
    – Igor Skochinsky
    Jul 25, 2014 at 14:16
  • I'm trying to figure out a way of injection a small fault into the Linux kernel. I'm a new researcher on this field, and so after searching a little bit, I came with this kind of framework/application shortlist. To start, I would like to make a bit-flip in a CPU register, at kernel mode, and so I'm trying to figure out which of the tools mentioned above best suits my needs. Can you help me on that? Valgrind seems to only work at user level, for instance, but I still need to discover if QEMU, Franary or BT Kernel are good choices (DRK is looking good, though). Thanks. Jul 25, 2014 at 18:27
  • Can't anyone help me? Jul 29, 2014 at 16:05


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.