the __main symbol in the crt0_x.S

Guanghui, Cheng cheng.guanghui.ml at gmail.com
Wed Sep 9 11:56:38 CEST 2009


On Wednesday 09 September 2009 04:00:40 pm you wrote:
> Hi Cheng,
>
> sorry, but I don't get your question here. Could you please rephrase
> your problem?
	Thanks for your kind reply. I have resolved this problem. I posted my problem 
and solution here and it may help others playing with Fiasco.

	Now in my application there are two main functions existing at the same time. 
One main function is for starting this application and this is a real 
functional main function.  But another needs have the name like this : 
main(int argc, char ** argv) and it is only a function with main name. But 
normally the main function is as the entry of one application, too. So there 
is only one not two.
	So i tried to trace the booting sequence when loading a l4 application and 
the last mail is only about the __main function in the crt0.S.
	I trace the code from crt0.s  first and find L4 application is started like 
this:
	crt0.s   ->   __main 
(/home/cheng/tudos/l4/pkg/crtx/lib/src/ARCH-x86/crt0_x.S)
	This calling happend in the crtx package.

	And then
	__main  -> main 
(/home/cheng/tudos/l4/pkg/l4env/lib/src/startup.c)
	
	So i could fix the main name (startup.c) as other name like pmain. So in my 
application pmain is the first function to be called when running and main 
function is only a name like other normal function.

	That's all.
	Thanks.
								Cheng Guanghui




More information about the l4-hackers mailing list