C# 클래스 Mono.Debugger.Backend.Inferior

상속: TargetAccess, ITargetNotification, IDisposable
파일 보기 프로젝트 열기: baulig/debugger 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
address_domain AddressDomain
breakpoint_manager BreakpointManager
error_handler DebuggerErrorHandler
exe NativeExecutableReader
io_data System.IntPtr
native bool
process System.Diagnostics.Process
server_handle System.IntPtr
start ProcessStart
thread_manager ThreadManager

Private Properties

프로퍼티 타입 설명
GetCallbackFrame CallbackFrame
InsertBreakpoint void
RemoveBreakpoint void
SetRuntimeInfo void
change_target_state TargetState
check_disposed void
g_free void
get_current_frame ServerStackFrame
io_thread_main void
mono_debugger_server_abort_invoke TargetError
mono_debugger_server_attach TargetError
mono_debugger_server_call_method TargetError
mono_debugger_server_call_method_1 TargetError
mono_debugger_server_call_method_2 TargetError
mono_debugger_server_call_method_3 TargetError
mono_debugger_server_call_method_invoke TargetError
mono_debugger_server_continue TargetError
mono_debugger_server_create_inferior System.IntPtr
mono_debugger_server_current_insn_is_bpt TargetError
mono_debugger_server_detach TargetError
mono_debugger_server_detach_after_fork TargetError
mono_debugger_server_disable_breakpoint TargetError
mono_debugger_server_dispatch_event ChildEventType
mono_debugger_server_enable_breakpoint TargetError
mono_debugger_server_execute_instruction TargetError
mono_debugger_server_finalize TargetError
mono_debugger_server_get_application TargetError
mono_debugger_server_get_callback_frame TargetError
mono_debugger_server_get_capabilities ServerCapabilities
mono_debugger_server_get_frame TargetError
mono_debugger_server_get_pending_signal TargetError
mono_debugger_server_get_registers TargetError
mono_debugger_server_get_server_type ServerType
mono_debugger_server_get_signal_info TargetError
mono_debugger_server_get_target_info TargetError
mono_debugger_server_get_threads TargetError
mono_debugger_server_initialize_process TargetError
mono_debugger_server_initialize_thread TargetError
mono_debugger_server_insert_breakpoint TargetError
mono_debugger_server_insert_hw_breakpoint TargetError
mono_debugger_server_io_thread_main TargetError
mono_debugger_server_kill TargetError
mono_debugger_server_mark_rti_frame TargetError
mono_debugger_server_pop_registers TargetError
mono_debugger_server_push_registers TargetError
mono_debugger_server_read_memory TargetError
mono_debugger_server_remove_breakpoint TargetError
mono_debugger_server_restart_notification TargetError
mono_debugger_server_resume TargetError
mono_debugger_server_set_registers TargetError
mono_debugger_server_set_runtime_info void
mono_debugger_server_set_signal TargetError
mono_debugger_server_spawn TargetError
mono_debugger_server_step TargetError
mono_debugger_server_stop TargetError
mono_debugger_server_stop_and_wait TargetError
mono_debugger_server_write_memory TargetError
read_buffer System.IntPtr

공개 메소드들

메소드 설명
AbortInvoke ( long rti_id ) : void
Attach ( int pid ) : void
CallMethod ( TargetAddress method, byte data, long callback_arg ) : void
CallMethod ( TargetAddress method, long method_argument, TargetObject obj, long callback_arg ) : void
CallMethod ( TargetAddress method, long data1, long data2, long callback_arg ) : void
CallMethod ( TargetAddress method, long arg1, long arg2, long arg3, string arg4, long callback_arg ) : void
Continue ( ) : void
CreateInferior ( ThreadManager thread_manager, Process process, ProcessStart start ) : Inferior
CreateOperatingSystemBackend ( Process process ) : OperatingSystemBackend
CreateThread ( int pid, bool do_attach ) : Inferior
Detach ( ) : void
DetachAfterFork ( ) : void
DisableBreakpoint ( int breakpoint ) : void
Dispose ( ) : void
EnableBreakpoint ( int breakpoint ) : void
ExecuteInstruction ( byte instruction, bool update_ip ) : void
GetCurrentFrame ( ) : StackFrame
GetCurrentFrame ( bool may_fail ) : StackFrame
GetFileContents ( string filename ) : string
GetMemoryMaps ( ) : TargetMemoryArea[]
GetPendingSignal ( ) : int
GetRegisters ( ) : Registers
GetSectionAddress ( string name ) : TargetAddress
GetTargetInfo ( ) : TargetInfo
GetTargetMemoryInfo ( AddressDomain domain ) : TargetMemoryInfo
GetThreads ( ) : int[]
InitializeAfterExec ( int pid ) : void
InitializeThread ( int pid ) : void
InsertBreakpoint ( TargetAddress address ) : int
InsertHardwareBreakpoint ( TargetAddress address, bool fallback, int &index ) : int
InsertHardwareWatchPoint ( TargetAddress address, HardwareBreakpointType type, int &index ) : int
IsManagedSignal ( int signal ) : bool
Kill ( ) : void
MarkRuntimeInvokeFrame ( ) : void
PopRegisters ( ) : void
ProcessEvent ( int status ) : ChildEvent
PushRegisters ( ) : TargetAddress
ReadAddress ( TargetAddress address ) : TargetAddress
ReadBuffer ( TargetAddress address, int size ) : byte[]
ReadByte ( TargetAddress address ) : byte
ReadInteger ( TargetAddress address ) : int
ReadLongInteger ( TargetAddress address ) : long
ReadMemory ( TargetAddress address, int size ) : TargetBlob
ReadString ( TargetAddress address ) : string
RemoveBreakpoint ( int breakpoint ) : void
RestartNotification ( ) : void
Resume ( ) : void
Run ( ) : int
RuntimeInvoke ( TargetAddress invoke_method, TargetAddress method_argument, TargetObject object_argument, TargetObject param_objects, long callback_arg, bool debug ) : void
SetRegisters ( Registers registers ) : void
SetSignal ( int signal, bool send_it ) : void
Shutdown ( ) : void
SimpleLookup ( string name ) : TargetAddress
Step ( ) : void
Stop ( ) : bool

Just send the inferior a stop signal, but don't wait for it to stop. Returns true if it actually sent the signal and false if the target was already stopped.

Stop ( ChildEvent &new_event ) : bool

Stop the inferior. Returns true if it actually stopped the inferior and false if it was already stopped. Note that the target may have stopped abnormally in the meantime, in this case we return the corresponding ChildEvent.

WriteAddress ( TargetAddress address, TargetAddress value ) : void
WriteBuffer ( TargetAddress address, byte buffer ) : void
WriteByte ( TargetAddress address, byte value ) : void
WriteInteger ( TargetAddress address, int value ) : void
WriteLongInteger ( TargetAddress address, long value ) : void

보호된 메소드들

메소드 설명
Dispose ( bool disposing ) : void
GetApplication ( string &cwd, string &cmdline_args ) : string
Inferior ( ThreadManager thread_manager, Process process, ProcessStart start, BreakpointManager bpm, DebuggerErrorHandler error_handler, AddressDomain address_domain ) : System
OnMemoryChanged ( ) : void
SetupInferior ( ) : void
change_target_state ( TargetState new_state ) : TargetState
check_error ( TargetError error ) : void

비공개 메소드들

메소드 설명
GetCallbackFrame ( TargetAddress stack_pointer, bool exact_match ) : CallbackFrame
InsertBreakpoint ( BreakpointHandle handle, TargetAddress address, int domain ) : void
RemoveBreakpoint ( BreakpointHandle handle ) : void
SetRuntimeInfo ( IntPtr mono_runtime_info ) : void
change_target_state ( TargetState new_state, int arg ) : TargetState
check_disposed ( ) : void
g_free ( IntPtr data ) : void
get_current_frame ( ) : ServerStackFrame
io_thread_main ( ) : void
mono_debugger_server_abort_invoke ( IntPtr handle, long rti_id ) : TargetError
mono_debugger_server_attach ( IntPtr handle, int child_pid ) : TargetError
mono_debugger_server_call_method ( IntPtr handle, long method_address, long method_argument1, long method_argument2, long callback_argument ) : TargetError
mono_debugger_server_call_method_1 ( IntPtr handle, long method_address, long method_argument, long data_argument, long data_argument2, string string_argument, long callback_argument ) : TargetError
mono_debugger_server_call_method_2 ( IntPtr handle, long method_address, int data_size, IntPtr data, long callback_argument ) : TargetError
mono_debugger_server_call_method_3 ( IntPtr handle, long method_address, long method_argument, long address_argument, int blob_size, IntPtr blob_data, long callback_argument ) : TargetError
mono_debugger_server_call_method_invoke ( IntPtr handle, long invoke_method, long method_address, int num_params, int blob_size, IntPtr param_data, IntPtr offset_data, IntPtr blob_data, long callback_argument, bool debug ) : TargetError
mono_debugger_server_continue ( IntPtr handle ) : TargetError
mono_debugger_server_create_inferior ( IntPtr breakpoint_manager ) : IntPtr
mono_debugger_server_current_insn_is_bpt ( IntPtr handle, int &is_breakpoint ) : TargetError
mono_debugger_server_detach ( IntPtr handle ) : TargetError
mono_debugger_server_detach_after_fork ( IntPtr handle ) : TargetError
mono_debugger_server_disable_breakpoint ( IntPtr handle, int breakpoint ) : TargetError
mono_debugger_server_dispatch_event ( IntPtr handle, int status, long &arg, long &data1, long &data2, int &opt_data_size, IntPtr &opt_data ) : ChildEventType
mono_debugger_server_enable_breakpoint ( IntPtr handle, int breakpoint ) : TargetError
mono_debugger_server_execute_instruction ( IntPtr handle, IntPtr instruction, int insn_size, bool update_ip ) : TargetError
mono_debugger_server_finalize ( IntPtr handle ) : TargetError
mono_debugger_server_get_application ( IntPtr handle, IntPtr &exe_file, IntPtr &cwd, int &nargs, IntPtr &data ) : TargetError
mono_debugger_server_get_callback_frame ( IntPtr handle, long stack_pointer, bool exact_match, IntPtr info ) : TargetError
mono_debugger_server_get_capabilities ( ) : ServerCapabilities
mono_debugger_server_get_frame ( IntPtr handle, ServerStackFrame &frame ) : TargetError
mono_debugger_server_get_pending_signal ( IntPtr handle, int &signal ) : TargetError
mono_debugger_server_get_registers ( IntPtr handle, IntPtr values ) : TargetError
mono_debugger_server_get_server_type ( ) : ServerType
mono_debugger_server_get_signal_info ( IntPtr handle, IntPtr &data ) : TargetError
mono_debugger_server_get_target_info ( int &target_int_size, int &target_long_size, int &target_address_size, int &is_bigendian ) : TargetError
mono_debugger_server_get_threads ( IntPtr handle, int &count, IntPtr &data ) : TargetError
mono_debugger_server_initialize_process ( IntPtr handle ) : TargetError
mono_debugger_server_initialize_thread ( IntPtr handle, int child_pid, bool wait ) : TargetError
mono_debugger_server_insert_breakpoint ( IntPtr handle, long address, int &breakpoint ) : TargetError
mono_debugger_server_insert_hw_breakpoint ( IntPtr handle, HardwareBreakpointType type, int &index, long address, int &breakpoint ) : TargetError
mono_debugger_server_io_thread_main ( IntPtr io_data, ChildOutputHandler output_handler ) : TargetError
mono_debugger_server_kill ( IntPtr handle ) : TargetError
mono_debugger_server_mark_rti_frame ( IntPtr handle ) : TargetError
mono_debugger_server_pop_registers ( IntPtr handle ) : TargetError
mono_debugger_server_push_registers ( IntPtr handle, long &new_rsp ) : TargetError
mono_debugger_server_read_memory ( IntPtr handle, long start, int size, IntPtr data ) : TargetError
mono_debugger_server_remove_breakpoint ( IntPtr handle, int breakpoint ) : TargetError
mono_debugger_server_restart_notification ( IntPtr handle ) : TargetError
mono_debugger_server_resume ( IntPtr handle ) : TargetError
mono_debugger_server_set_registers ( IntPtr handle, IntPtr values ) : TargetError
mono_debugger_server_set_runtime_info ( IntPtr handle, IntPtr mono_runtime_info ) : void
mono_debugger_server_set_signal ( IntPtr handle, int signal, int send_it ) : TargetError
mono_debugger_server_spawn ( IntPtr handle, string working_directory, string argv, string envp, bool redirect_fds, int &child_pid, IntPtr &io_data, IntPtr &error ) : TargetError
mono_debugger_server_step ( IntPtr handle ) : TargetError
mono_debugger_server_stop ( IntPtr handle ) : TargetError
mono_debugger_server_stop_and_wait ( IntPtr handle, int &status ) : TargetError
mono_debugger_server_write_memory ( IntPtr handle, long start, int size, IntPtr data ) : TargetError
read_buffer ( TargetAddress address, int size ) : IntPtr

메소드 상세

AbortInvoke() 공개 메소드

public AbortInvoke ( long rti_id ) : void
rti_id long
리턴 void

Attach() 공개 메소드

public Attach ( int pid ) : void
pid int
리턴 void

CallMethod() 공개 메소드

public CallMethod ( TargetAddress method, byte data, long callback_arg ) : void
method TargetAddress
data byte
callback_arg long
리턴 void

CallMethod() 공개 메소드

public CallMethod ( TargetAddress method, long method_argument, TargetObject obj, long callback_arg ) : void
method TargetAddress
method_argument long
obj Mono.Debugger.Languages.TargetObject
callback_arg long
리턴 void

CallMethod() 공개 메소드

public CallMethod ( TargetAddress method, long data1, long data2, long callback_arg ) : void
method TargetAddress
data1 long
data2 long
callback_arg long
리턴 void

CallMethod() 공개 메소드

public CallMethod ( TargetAddress method, long arg1, long arg2, long arg3, string arg4, long callback_arg ) : void
method TargetAddress
arg1 long
arg2 long
arg3 long
arg4 string
callback_arg long
리턴 void

Continue() 공개 메소드

public Continue ( ) : void
리턴 void

CreateInferior() 공개 정적인 메소드

public static CreateInferior ( ThreadManager thread_manager, Process process, ProcessStart start ) : Inferior
thread_manager ThreadManager
process System.Diagnostics.Process
start ProcessStart
리턴 Inferior

CreateOperatingSystemBackend() 공개 정적인 메소드

public static CreateOperatingSystemBackend ( Process process ) : OperatingSystemBackend
process System.Diagnostics.Process
리턴 OperatingSystemBackend

CreateThread() 공개 메소드

public CreateThread ( int pid, bool do_attach ) : Inferior
pid int
do_attach bool
리턴 Inferior

Detach() 공개 메소드

public Detach ( ) : void
리턴 void

DetachAfterFork() 공개 메소드

public DetachAfterFork ( ) : void
리턴 void

DisableBreakpoint() 공개 메소드

public DisableBreakpoint ( int breakpoint ) : void
breakpoint int
리턴 void

Dispose() 공개 메소드

public Dispose ( ) : void
리턴 void

Dispose() 보호된 메소드

protected Dispose ( bool disposing ) : void
disposing bool
리턴 void

EnableBreakpoint() 공개 메소드

public EnableBreakpoint ( int breakpoint ) : void
breakpoint int
리턴 void

ExecuteInstruction() 공개 메소드

public ExecuteInstruction ( byte instruction, bool update_ip ) : void
instruction byte
update_ip bool
리턴 void

GetApplication() 보호된 메소드

protected GetApplication ( string &cwd, string &cmdline_args ) : string
cwd string
cmdline_args string
리턴 string

GetCurrentFrame() 공개 메소드

public GetCurrentFrame ( ) : StackFrame
리턴 System.Diagnostics.StackFrame

GetCurrentFrame() 공개 메소드

public GetCurrentFrame ( bool may_fail ) : StackFrame
may_fail bool
리턴 System.Diagnostics.StackFrame

GetFileContents() 공개 정적인 메소드

public static GetFileContents ( string filename ) : string
filename string
리턴 string

GetMemoryMaps() 공개 메소드

public GetMemoryMaps ( ) : TargetMemoryArea[]
리턴 TargetMemoryArea[]

GetPendingSignal() 공개 메소드

public GetPendingSignal ( ) : int
리턴 int

GetRegisters() 공개 메소드

public GetRegisters ( ) : Registers
리턴 Registers

GetSectionAddress() 공개 메소드

public GetSectionAddress ( string name ) : TargetAddress
name string
리턴 TargetAddress

GetTargetInfo() 공개 정적인 메소드

public static GetTargetInfo ( ) : TargetInfo
리턴 TargetInfo

GetTargetMemoryInfo() 공개 정적인 메소드

public static GetTargetMemoryInfo ( AddressDomain domain ) : TargetMemoryInfo
domain AddressDomain
리턴 TargetMemoryInfo

GetThreads() 공개 메소드

public GetThreads ( ) : int[]
리턴 int[]

Inferior() 보호된 메소드

protected Inferior ( ThreadManager thread_manager, Process process, ProcessStart start, BreakpointManager bpm, DebuggerErrorHandler error_handler, AddressDomain address_domain ) : System
thread_manager ThreadManager
process System.Diagnostics.Process
start ProcessStart
bpm BreakpointManager
error_handler DebuggerErrorHandler
address_domain AddressDomain
리턴 System

InitializeAfterExec() 공개 메소드

public InitializeAfterExec ( int pid ) : void
pid int
리턴 void

InitializeThread() 공개 메소드

public InitializeThread ( int pid ) : void
pid int
리턴 void

InsertBreakpoint() 공개 메소드

public InsertBreakpoint ( TargetAddress address ) : int
address TargetAddress
리턴 int

InsertHardwareBreakpoint() 공개 메소드

public InsertHardwareBreakpoint ( TargetAddress address, bool fallback, int &index ) : int
address TargetAddress
fallback bool
index int
리턴 int

InsertHardwareWatchPoint() 공개 메소드

public InsertHardwareWatchPoint ( TargetAddress address, HardwareBreakpointType type, int &index ) : int
address TargetAddress
type HardwareBreakpointType
index int
리턴 int

IsManagedSignal() 공개 메소드

public IsManagedSignal ( int signal ) : bool
signal int
리턴 bool

Kill() 공개 메소드

public Kill ( ) : void
리턴 void

MarkRuntimeInvokeFrame() 공개 메소드

public MarkRuntimeInvokeFrame ( ) : void
리턴 void

OnMemoryChanged() 보호된 메소드

protected OnMemoryChanged ( ) : void
리턴 void

PopRegisters() 공개 메소드

public PopRegisters ( ) : void
리턴 void

ProcessEvent() 공개 메소드

public ProcessEvent ( int status ) : ChildEvent
status int
리턴 ChildEvent

PushRegisters() 공개 메소드

public PushRegisters ( ) : TargetAddress
리턴 TargetAddress

ReadAddress() 공개 메소드

public ReadAddress ( TargetAddress address ) : TargetAddress
address TargetAddress
리턴 TargetAddress

ReadBuffer() 공개 메소드

public ReadBuffer ( TargetAddress address, int size ) : byte[]
address TargetAddress
size int
리턴 byte[]

ReadByte() 공개 메소드

public ReadByte ( TargetAddress address ) : byte
address TargetAddress
리턴 byte

ReadInteger() 공개 메소드

public ReadInteger ( TargetAddress address ) : int
address TargetAddress
리턴 int

ReadLongInteger() 공개 메소드

public ReadLongInteger ( TargetAddress address ) : long
address TargetAddress
리턴 long

ReadMemory() 공개 메소드

public ReadMemory ( TargetAddress address, int size ) : TargetBlob
address TargetAddress
size int
리턴 TargetBlob

ReadString() 공개 메소드

public ReadString ( TargetAddress address ) : string
address TargetAddress
리턴 string

RemoveBreakpoint() 공개 메소드

public RemoveBreakpoint ( int breakpoint ) : void
breakpoint int
리턴 void

RestartNotification() 공개 메소드

public RestartNotification ( ) : void
리턴 void

Resume() 공개 메소드

public Resume ( ) : void
리턴 void

Run() 공개 메소드

public Run ( ) : int
리턴 int

RuntimeInvoke() 공개 메소드

public RuntimeInvoke ( TargetAddress invoke_method, TargetAddress method_argument, TargetObject object_argument, TargetObject param_objects, long callback_arg, bool debug ) : void
invoke_method TargetAddress
method_argument TargetAddress
object_argument Mono.Debugger.Languages.TargetObject
param_objects Mono.Debugger.Languages.TargetObject
callback_arg long
debug bool
리턴 void

SetRegisters() 공개 메소드

public SetRegisters ( Registers registers ) : void
registers Registers
리턴 void

SetSignal() 공개 메소드

public SetSignal ( int signal, bool send_it ) : void
signal int
send_it bool
리턴 void

SetupInferior() 보호된 메소드

protected SetupInferior ( ) : void
리턴 void

Shutdown() 공개 메소드

public Shutdown ( ) : void
리턴 void

SimpleLookup() 공개 메소드

public SimpleLookup ( string name ) : TargetAddress
name string
리턴 TargetAddress

Step() 공개 메소드

public Step ( ) : void
리턴 void

Stop() 공개 메소드

Just send the inferior a stop signal, but don't wait for it to stop. Returns true if it actually sent the signal and false if the target was already stopped.
public Stop ( ) : bool
리턴 bool

Stop() 공개 메소드

Stop the inferior. Returns true if it actually stopped the inferior and false if it was already stopped. Note that the target may have stopped abnormally in the meantime, in this case we return the corresponding ChildEvent.
public Stop ( ChildEvent &new_event ) : bool
new_event ChildEvent
리턴 bool

WriteAddress() 공개 메소드

public WriteAddress ( TargetAddress address, TargetAddress value ) : void
address TargetAddress
value TargetAddress
리턴 void

WriteBuffer() 공개 메소드

public WriteBuffer ( TargetAddress address, byte buffer ) : void
address TargetAddress
buffer byte
리턴 void

WriteByte() 공개 메소드

public WriteByte ( TargetAddress address, byte value ) : void
address TargetAddress
value byte
리턴 void

WriteInteger() 공개 메소드

public WriteInteger ( TargetAddress address, int value ) : void
address TargetAddress
value int
리턴 void

WriteLongInteger() 공개 메소드

public WriteLongInteger ( TargetAddress address, long value ) : void
address TargetAddress
value long
리턴 void

change_target_state() 보호된 메소드

protected change_target_state ( TargetState new_state ) : TargetState
new_state TargetState
리턴 TargetState

check_error() 보호된 정적인 메소드

protected static check_error ( TargetError error ) : void
error TargetError
리턴 void

프로퍼티 상세

address_domain 보호되어 있는 프로퍼티

protected AddressDomain address_domain
리턴 AddressDomain

breakpoint_manager 보호되어 있는 프로퍼티

protected BreakpointManager,Mono.Debugger.Backend breakpoint_manager
리턴 BreakpointManager

error_handler 보호되어 있는 프로퍼티

protected DebuggerErrorHandler error_handler
리턴 DebuggerErrorHandler

exe 보호되어 있는 프로퍼티

protected NativeExecutableReader,Mono.Debugger.Backend exe
리턴 NativeExecutableReader

io_data 보호되어 있는 프로퍼티

protected IntPtr,System io_data
리턴 System.IntPtr

native 보호되어 있는 프로퍼티

protected bool native
리턴 bool

process 보호되어 있는 프로퍼티

protected Process,System.Diagnostics process
리턴 System.Diagnostics.Process

server_handle 보호되어 있는 프로퍼티

protected IntPtr,System server_handle
리턴 System.IntPtr

start 보호되어 있는 프로퍼티

protected ProcessStart start
리턴 ProcessStart

thread_manager 보호되어 있는 프로퍼티

protected ThreadManager thread_manager
리턴 ThreadManager