Armin Steinhoff wrote:
Hi all,
I have submitted a pidin command in the following format:
pidin -F “%I %N %p %J %B %c %d”
It shows that the size of the KERNEL code is 1.116 MEGA BYTES =:-(
Is this corrcet ???
Armin, since source of pidin is on CVS you could figure the answer,
being such a big advocate of open source =:)
Don’t know why pidin reports in such a funny way, but if you try to get
list of mapped segments for procnto you’ll see that there’s no ‘code’ or
‘data’ segments at all, since those concepts do not exist yet at the
time procnto is loaded. You also will see single physical shared segment
of roughly 1meg size. This 1meg is basically the size of physical memory
representing image filesystem (/proc/boot). When your .boot file is
loaded, it is uncompressed, that’s how you get 1meg from ~500k.
The 12k of ‘data’ is in fact stack. There are other 2 stack segments of
the same size, but only one is reported as ‘data’. I have yet to dig
further into it to figure why.
If you want to know size of procnto you can do ‘ls -l
/proc/boot/procnto’. Or run mkifs with -v and take a look at ‘size’
value. On PowerPC it is about 300k, on Pentium it is 200k.
Note, the SPIN reports code & data size of procnto as 0 and stack as
36k. Bad new is, it does not count real size of procnto in any way
because it is not mapped by anybody. I’ll fix it for next release.
pidin -F “%I %N %p %J %B %c %d”
pid-tid name prio STATE Blocked code data
1-01 (n/a) 0f READY 1116K 12K
1-02 (n/a) 10r RECEIVE 1 1116K 12K
1-03 (n/a) 10r RUNNING 1116K 12K
1-04 (n/a) 15r RECEIVE 1 1116K 12K
1-05 (n/a) 10r RECEIVE 1 1116K 12K
1-06 (n/a) 6r NANOSLEEP 1116K 12K
1-07 (n/a) 15r RECEIVE 1 1116K 12K
1-08 (n/a) 10r RECEIVE 1 1116K 12K
1-09 (n/a) 10r RECEIVE 1 1116K 12K
2-01 devc-con 10r RECEIVE 1 336K 68K
Armin