Automatically launch your application
From ArmadeusWiki
Revision as of 16:00, 17 April 2013 by JulienB (Talk | contribs) (→Adding your own application in the start process)
You've just developed a state of the art application and want it to be launched each time you boot your APF ? Then this small tutorial is for you !
System startup
First, a small remainder: when you start your board, here is how all things are started:
- U-Boot initializes the processor, vital peripherals and then load Linux image from Flash,
- U-Boot starts Linux image by passing it some parameters, the bootargs,
- Linux starts, mounts its rootfs and launches /sbin/init,
- init process checks its /etc/inittab config file and executes the instructions it contains,
- this config file generally asks init to launch /etc/init.d/rcS at some point,
- /etc/init.d/rcS look at all scripts in /etc/init.d/ directory which start with a S, and executes them in ascending order
Adding your own application in the ssystem start process
- creates a shell script in /etc/init.d/:
# touch /etc/init.d/S99app # chmod a+x /etc/init.d/S99app
- edit it
# vi /etc/init.d/S99app
- put in it the following content (replace /usr/bin/your_app with your application name & path):
#!/bin/sh
# Loading the modules needed by my app:
modprobe xxxxx
# Launching my app:
/usr/bin/your_app & # <-- Don't forget the "&" otherwise other system stuff won't start until you leave your app !!!
exit 0
- save your changes and !! Test it !!
# /etc/init.d/S99app
- That's it ! You can now reboot:
# sync # reboot