Right now, all servers have a fixed virtual start address, because of this linker script:
. = 0x40000000 + SIZEOF_HEADERS;
This is an easy way to do it, but it has a significant disadvantage when debugging with gdb. When you place a breakpoint in a process, there is a slight risk that you get '"false positives" - other processes hitting the same EIP address.
This Stack Overflow thread seems to have a pretty clever way to do this, and has a lot of details on how the commandline used for doing the override should look. We could use this to fix the debug experience to be less confusing.
Right now, all servers have a fixed virtual start address, because of this linker script:
This is an easy way to do it, but it has a significant disadvantage when debugging with
gdb
. When you place a breakpoint in a process, there is a slight risk that you get '"false positives" - other processes hitting the sameEIP
address.This Stack Overflow thread seems to have a pretty clever way to do this, and has a lot of details on how the commandline used for doing the override should look. We could use this to fix the debug experience to be less confusing.