[Lldb-commits] [lldb] r125815 - in /lldb/trunk: include/lldb/Core/PluginManager.h include/lldb/Target/Process.h include/lldb/Target/Target.h include/lldb/lldb-enumerations.h source/Core/PluginManager.cpp source/Core/UserSettingsController.cpp source/Interpreter/CommandInterpreter.cpp source/Target/Process.cpp source/Target/Target.cpp source/lldb.cpp

Jim Ingham jingham at apple.com
Fri Feb 18 11:21:24 PST 2011


On Feb 18, 2011, at 11:00 AM, Stephen Wilson wrote:

>> target.execution-os-type = none is for when there is no OS that we should be
>> attempting to track down.
> 
> Ah, OK.  I see now.  I did not realize this was *exclusively* about
> pugins to help with OS data structures/address mappings/etc.  On the
> first read I was thinking about plugins to help interface with specific
> JTAG emulators (one might implement support for a JTAG emulator via a
> Process plugin instead of writing a gdb remote server, for example).
> 
> 

Exactly.  The goal was to allow the process.gdb-remote plugin to only know about the gdb remote protocol, and have everything that is specific to the target we are actually talking to figured out from these target.execution* settings.  Note as Greg said most of these settings can in the normal course of things be determined either from the ArchSpec or from the initial executable module...

If you had a different way of talking to a process, like some vendor supplied library that provided a direct interface to a JTAG, you would write process.vendor-jtag-library plugin.  That would handle the connection and then you could again use the target.execution* settings to configure what you were actually talking to through that interface.

Jim





More information about the lldb-commits mailing list