This week I have begun to submit patch.
First, I have submit a patch create some new files. Pedro Alves suggest me to re-use the exist file for easy maintaining and reviewing with the #ifdef GDBSERVER macro. Then I changed the patch to satisfy that but I used soft link. Then he told me the soft link will be not available on all platform. Then I have studied some knowledge about autoconf to modify the confingure.ac the Makefile.in.
Now, I need do some more improving work. Such as, combination the memory-access interface to wrap gnu_xfer_memory, using a single target backend between gdb and gdbserver ,adding comment to describe the design divergences before the macro GDBSERVER and some other helper function to wrap the rest interface.