This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Type of event in eCos instrumentation record
- From: Nodir Kodirov <nodir dot qodirov at gmail dot com>
- To: Yuriy Coureelo <coureelo at micran dot ru>
- Cc: eCos Discussion <ecos-discuss at ecos dot sourceware dot org>
- Date: Sun, 28 Mar 2010 15:48:50 +0900
- Subject: [ECOS] Type of event in eCos instrumentation record
Hello Mr. Yuriy!
I was using eCos kernel instrumentation feature to analyze behavior of
my application. I tried the sample given at
http://ecos.sourceware.org/docs-latest/user-guide/kernel-instrumentation.html
where with these lines of the code:
[...]
for (i = 0; i < instrument_buffer_size; ++i) {
printf("Record %02d: type 0x%04x, thread %d, ",
i, instrument_buffer[i].type, instrument_buffer[i].thread);
printf("time %5d, arg1 0x%08x, arg2 0x%08x\n",
instrument_buffer[i].timestamp, instrument_buffer[i].arg1,
instrument_buffer[i].arg2);
}
I have got instrumentation info in this format:
Record 00: type 0x0207, thread 2, time 6057, arg1 0x48001cd8, arg2 0x00000002
Record 01: type 0x0202, thread 2, time 6153, arg1 0x48001cd8, arg2 0x00000000
Record 02: type 0x0904, thread 2, time 6358, arg1 0x48001d24, arg2 0x00000000
Record 03: type 0x0905, thread 2, time 6424, arg1 0x00000002, arg2 0x00000000
Record 04: type 0x0906, thread 2, time 6490, arg1 0x00000000, arg2 0x00000000
[...]
My question to you (or to all who might know) is how to get the type
of the event in each instrumentation record. I looked through eCos
discussion mailing list and I found in your question asked at 2005
with title "Task switching problem"
http://sourceware.org/ml/ecos-discuss/2005-07/msg00036.html you
printed your instrumentation information with type of record. Here is
the excerpt of your output:
> Num Thread Time Arg1 Arg2
>
> 130 0e 0x2316 SCHED_UNLOCK 0x00000001 0x00000000
> 131 0e 0x2327 SCHED_LOCK 0x00000001 0x00000000
> 132 0e 0x232d SCHED_UNLOCK 0x00000001 0x00000000
> 133 0e 0x2344 ALARM_INIT 0x020f3080 0x00000000
> 134 0e 0x234a ALARM_TRIGGER 0x00000af6 0x00000000
> 135 0e 0x234f ALARM_INTERVAL 0x00000000 0x00000000
> 136 0e 0x2358 SCHED_LOCK 0x00000001 0x00000000
So, what I need is the type of the event as it is indicated as
SCHED_UNLOCK, SCHED_LOCK, ALARM_INIT, ALARM_TRIGGER and so on. Can you
share the code which you used to have instrumentation info with type
of event?
Thanks a lot!
Nodir.
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss