Norman, Thanks for your help as usual. With my code, I have functionality that is based on the iguana trace buffer. As such, some of my functionality is iguana based. In particular, I am wondering how i can go about mapping kernel memory to user space in a way that works the same as the Iguana trace buffer, given you have suggested that Genode primitives should be used.
Thanks ----------------------------------------------------- Peter Nguyen Jacaranda Research Group On 11/01/2010, at 7:02 PM, Norman Feske wrote: > Hi Peter, > >> I'm trying to port some code that I originally implemented in >> Iguana. This >> functionality pertains to profiling functionality. In my current >> setup (ie. with >> Iguana), I added an L4 system call (OKL4) to start and stop >> profiling. I'm >> wondering whether it's possible at all to use OKL4 functionality >> directly in > > yes, that is no problem. In fact, Genode's framework libraries such as > the IPC library directly use L4 system calls. Also, our port of > OKLinux > relies on using L4 system calls directly. However, all programs except > for Genode's core do not have roottask privileges. So you are > restricted > to use system calls that need no special privileges. As a general rule > of thumb, I would suggest to perform all tasks that are related to > resource allocation (e.g., creating threads and address spaces) and > address-space layout management (mapping) using Genode primitives > only. > > If you want to use OKL4 system calls from your program, you might take > some existing Genode code as reference, for example the IPC library: > > base-okl4/src/base/ipc/ipc.cc > > There you can see that we include the OKL4 headers into a dedicated > namespace called 'Okl4'. I suggest to stick to this scheme to avoid > symbol-name conflicts between your code and the Genode libraries. > >> writing genode apps. The profiling code that I have implemented is >> L4 code, >> where some of the code uses OKL4 IPC primitives and a small amount >> of Iguana >> based code with regards to creating threads. > > It should be ok to use OKL4 directly for your L4-specific IPC > operations > and your custom system-call interface. For thread creation, however, > Genode's Thread API should be used. > > Regards > Norman > > ------------------------------------------------------------------------------ > This SF.Net email is sponsored by the Verizon Developer Community > Take advantage of Verizon's best-in-class app development support > A streamlined, 14 day to market process makes app distribution fast > and easy > Join now and get one step closer to millions of Verizon customers > http://p.sf.net/sfu/verizon-dev2dev > _______________________________________________ > Genode-main mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/genode-main ------------------------------------------------------------------------------ This SF.Net email is sponsored by the Verizon Developer Community Take advantage of Verizon's best-in-class app development support A streamlined, 14 day to market process makes app distribution fast and easy Join now and get one step closer to millions of Verizon customers http://p.sf.net/sfu/verizon-dev2dev _______________________________________________ Genode-main mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/genode-main
