Re: Why calling kernelInit two times.



On Jul 17, 11:24 am, Nabendu <nbma...@xxxxxxxxx> wrote:
On Jul 17, 7:25 pm, gvarndell <gvarnd...@xxxxxxxxxxx> wrote:



On Jul 17, 9:09 am, Nabendu <nbma...@xxxxxxxxx> wrote:

Hi all,

When I was studying boot sequence I found the below abnormality.

There is kernel init call

kernelInit ((FUNCPTR) usrRoot, ROOT_STACK_SIZE, \
(char *) MEM_POOL_START_ADRS,
sysMemTop (), ISR_STACK_SIZE, INT_LOCK_LEVEL); in
usrKernelInit() function in usrkernel.c .

which is called from usrInit() function. but after calling
usrKernelInit(), we again calling kernelInit() from usrInit(). in
bootconfig.c

I wonder why we are calling kernelInit two time..?

Any one know the reason?

I am using vxworks 6.4 ..

Hhhmm, if you had found a third module with a call to kernelInit(),
would you have assumed it was being called 3 times? ;-)
Seriously, it is not being called twice.

HTH,
GV

Logically I understand it should not be called more than once.

GV,Had you ever gone through the code of usrInit() in target\config\all
\bootconfig.c or usrConfig.c
and usrKernelInit() code in target\config\comps\src\usrKernel.c ?

No, never.


(FYI - bootconfig.c or usrConfig.c are copied and modified to BSP
directory any change required in bootloader commads or other things)

Actually, you're right -- kernelInit() is called twice.
Once when the bootrom image executes.
And then again when the ram image is executed.
And, if you reset the target, it's executed 4 times. ;-)

HTH
GV
.



Relevant Pages

  • Re: Why calling kernelInit two times.
    ... usrKernelInit(), we again calling kernelInitfrom usrInit(). ... I wonder why we are calling kernelInit two time..? ...
    (comp.os.vxworks)
  • Why calling kernelInit two times.
    ... usrKernelInit(), we again calling kernelInitfrom usrInit(). ... I wonder why we are calling kernelInit two time..? ...
    (comp.os.vxworks)
  • Re: Why calling kernelInit two times.
    ... usrKernelInit(), we again calling kernelInitfrom usrInit(). ... Hhhmm, if you had found a third module with a call to kernelInit, ...
    (comp.os.vxworks)