Use the kernel command line parameter: "init=[absolute_path_to_you_executable]/a.out"
Hahaha. I'm just kidding. I highly doubt that's what you are looking for. I recommend Rob's solution. Use Cronie and apply the crontab entry to the user you want your executable to run as. Ensure that cronie is set to run at boot. This will depend on your init system, but almost all distros these days use systemd. With systemd, as the root user, run "systemctl enable cronie" . As the user you want to execute a.out as, run "crontab -e" . From there you can enter the configuration provided by Rob. If it opens with a text editor you don't like, you can use something like "EDITOR=/bin/nano crontab -e". If you need more granular control over the run sequence of a.out during boot, you'll need to look into setting it up as a systemd service instead. I've never done that so I can't help you with the details there.