Hi Waldo,
hello genode hackers, I need to know which types of testing and tools are available for testing devices drivers, system call performance, scheduling and any modification made on the system.
I wonder what's your intention to post the exact same (and overly generic) question on different mailing lists (i.e., l4-hackers). Are you doing a survey?
In the course of your experiments with Genode, you have certainly encountered so-called run scripts. The run tool that executes those scripts is the most relevant answer to your question. You can find the corresponding documentation here:
http://genode.org/documentation/developer-resources/build_system#Automated_i...
The run and autopilot tools are used daily to exercise all run scripts listed in 'tool/autopilot.list' on various kernels and hardware platforms.
Among the tests are several benchmarks, for example, the time it takes to execute the 'ports/run/noux_tool_chain_auto.run' script, or the measurements taken by the 'ports/run/netperf*.run' scripts. For some device drivers, there exist driver-specific benchmarks. For example, a performance test for the OMAP4 SD-card driver can be found at 'repos/os/src/drivers/sd_card/omap4/bench/'.
Regarding tools for investigating performance issues, I'd like to highlight two approaches. First, since Genode is able to run on Linux, popular profiling tools like oprofile can be used to analyze most of Genode's components (except for device drivers). The second tool is Genode's tracing framework, which is explained here:
http://genode.org/documentation/release-notes/13.08#Light-weight_event_traci...
The latter is very flexible but not easy to use because one has to implement a so-called trace monitor for each kind of measurement. The tracing mechanism had been extremely helpful for analyzing performance issues such as the IRQ handling of the USB driver on the Rpi.
If you have more specific questions, please don't hesitate to ask.
Cheers Norman