Hi,
Following on from Richard's response.
The main cron.php job is like a heart-beat. It runs every minute (typically) and kicks off any jobs that need running. It runs all the jobs scheduled for that minute, in order, and waits for them to finish. If they don't all get done in the minute, the main cron misses a beat, ie, it won't fire again until it's last run has finished.
Typically you can get away with one cron job but you can add more if needed (by adding multiple cron.php and/or adhoc_task.php lines in your crontab). See the
Scaling up cron with multiple processes section in the Moodle cron docs (
here).
I suspect that your first run picked up all the Moodle install related ad-hoc tasks (not just Coderunner) and hence it took a while. Now that things are setup, the normal day-to-day cron jobs won't be so taxing.
On tests systems I rarely even setup cron and simply run the adhoc tasks from the web admin pages (Server -> Ad hoc tasks), eg, when I notice the Coderunner prototypes are missing. So, if you're just playing around on a test system you don't necessarily need to bother too much with cron (unless you are testing something that uses scheduled tasks - and even then you can got to Sever -> Scheduled tasks and kick them off manually).
Cheers,
Paul