What I am trying to implement is a platform definition for the systems we develop. If we can assume that they are based on Linux with an appropriate set of hardware abstractions then we can develop complex algorithms on just about any Linux platform with an appropriate set of simulated hardware interfaces and then move the completed code to a target platform with minimum fuss. That also allows algorithm development using Python or other scripting languages and then recoding them in C/C++ if necessary for efficiency.
In many cases we use development boards to asses the platform for it's capabilities. Sure, we would test the i/o over which the end system inputs and outputs to make sure they are functionally adequate for the application, but we wouldn't necessarily develop the whole application on the development board.
Having said that, the tools required that you mention would be absolutely required on the target hardware / system once it has been developed (after the evaluation using the development board results in a positive evaluation).
One of our favorites for Ethernet communications debug and monitoring is Wireshark awesome tool.
As we unveil EE Times’ 2015 Silicon 60 list, journalist & Silicon 60 researcher Peter Clarke hosts a conversation on startups in the electronics industry. Panelists Dan Armbrust (investment firm Silicon Catalyst), Andrew Kau (venture capital firm Walden International), and Stan Boland (successful serial entrepreneur, former CEO of Neul, Icera) join in the live debate.