Arduino is just a development IDE that creates a standard linux executable, and transfers it to Galileo.
Galileo runs the program just like any other Linux program and it continues to run after you close down the Arduino IDE.
Arduino IDE compiles your code to a program called 'sketch.elf' and then transfers that to the /Sketches folder on Galileo.
There is no reason why you can't run other more difficult tasks at the same time.
To communicate from Linux to the Arduino Sketch, you can either read and write to a file or use sockets. For example, I am running a node.js server and communicating via sockets to the Arduino sketch. I have also communicated from a Python script and a sketch.To run Linux commands from the sketch you can use system("your command");. Your question "Can I use linux to do "other" more difficult tasks at the same time?" can you give an example?