[lldb-dev] [RFC] OS Awareness in LLDB

Zachary Turner via lldb-dev lldb-dev at lists.llvm.org
Wed Oct 31 12:22:04 PDT 2018


I don’t totally agree with this. I think there are a lot of useful os
awareness tasks in user mode. For example, you’re debugging a deadlock and
want to understand the state of other mutexes, who owns them, etc. or you
want to examine open file descriptors. In the case of a heap corruption you
may wish to study the internal structures of your process’s heap, or even
lower level, the os virtual memory page table structures.

There’s quite a lot you can still do in user mode, but definitely there is
more in kernel mode. As Leonard said, try put WinDbg as a lot of this stuff
already exists so it’s a good reference
On Wed, Oct 31, 2018 at 12:08 PM Alexander Polyakov via lldb-dev <
lldb-dev at lists.llvm.org> wrote:

> Hi Leonard,
>
> I think it will be kernel-mode debugging since debugging an application in
> user mode is not an OS awareness imo. Of course, some of kernel's modules
> might run in user-mode, but it will be ok I think.
>
> Thanks for your reference, I'll take a look at it.
>
> Also, I found out that ARM supports OS awareness in their DS-5 debugger.
> They have a mechanism for adding new operating systems. All you need to do
> is to describe OS' model (thread's or task's structure for example). I
> think that is how it might be done in LLDB.
>
> On Wed, Oct 31, 2018 at 9:26 PM Leonard Mosescu <mosescu at google.com>
> wrote:
>
>> Hi Alexander, are you interested in user-mode, kernel-mode debugging or
>> both?
>>
>> Fore reference, the current state of the art regarding OS-awareness
>> debugging is debugging tools for windows
>> <https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/index> (windbg
>> & co.). This is not surprising since the tools were developed alongside
>> Windows. Obviously they are specific to Windows, but it's good example of
>> how the OS-awareness might look like.
>>
>>
>> On Mon, Oct 29, 2018 at 11:37 AM, Alexander Polyakov via lldb-dev <
>> lldb-dev at lists.llvm.org> wrote:
>>
>>> Hi lldb-dev,
>>>
>>> I'm a senior student at Saint Petersburg State University. The one of my
>>> possible diploma themes is "OS Awareness in LLDB". Generally, the OS
>>> awareness extends a debugger to provide a representation of the OS threads
>>> - or tasks - and other relevant data structures, typically semaphores,
>>> mutexes, or queues.
>>>
>>> I want to ask the community if OS awareness is interesting for LLDB
>>> users and developers? The main goal is to create some base on top of LLDB
>>> that can be extended to support awareness for different operating systems.
>>>
>>> Also, if you have a good article or other useful information about OS
>>> awareness, please share it with me.
>>>
>>> Thanks in advance!
>>>
>>> --
>>> Alexander
>>>
>>> _______________________________________________
>>> lldb-dev mailing list
>>> lldb-dev at lists.llvm.org
>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
>>>
>>>
>>
>
> --
> Alexander
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20181031/dd6abf0d/attachment.html>


More information about the lldb-dev mailing list