From 1b6c5406b302c496320d6012dae1342c699c2290 Mon Sep 17 00:00:00 2001 From: Eugene Zemtsov Date: Mon, 16 Feb 2015 21:58:15 -0800 Subject: Pipe based communication between debugee and managed debugger on Linux Goal of this change is to make managed debugging on Linux possible. (It is not fully achieved, but we're getting there) So far our provision for debugging on Linux is somewhat different from debugging on Windows. Instead of using WaitForDebugEvent and RaiseException as means of communication between debugger and debuggee, we're gonna use pipes. Thankfully from old times of Silverlight Mac debugging we had debugging via network sockets under ifdefs FEATURE_DBGIPC_TRANSPORT_DI and FEATURE_DBGIPC_TRANSPORT_VM. So this change is taking that old way of debugging, changing sockets for network pipes, removes lots of unused stuff and implements whatever is missing on Linux. Testing: Due to infrastructural issues I wasn't able to test debugging on Linux yet. So my testing consistent of 1. End to end net pipe debugging on Windows 2. Testing of twowaypipe implementation on Linux 3. Testing of search for loaded CoreCLR module on Linux. --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) (limited to '.gitignore') diff --git a/.gitignore b/.gitignore index e69eb76426..137c9100dd 100644 --- a/.gitignore +++ b/.gitignore @@ -248,6 +248,9 @@ Temporary Items # We have some checked in prebuilt generated files !src/pal/prebuilt/idl/*_i.c +# Valid 'debug' folder, that contains CLR debuggin code +!src/debug + # Ignore folders created by the test build TestWrappers_x64_debug TestWrappers_x64_release -- cgit v1.2.3