In France we use the system described by 57AZ on main lines (except high speed line where there is a cab-signalling system with continuous monitoring of the speed).
So double red is stop and wait, single red stop and proceed (run at sigh), yellow, the next signal has a stop indication, green is normal speed.
Plus a lot of other indications (blinking green, blinking yellow, blinking red, two yellow on horizontal or vertical lines, these two blinking, white, purple… as mentioned Railways signalling is complex).
An ATP system has been implemented sin the middle of the eighties in France.
Basically it is a computer on board the train that reads beacons located on the track, and which can send variable information depending on the status of the following signals, and fixed information regarding the track gradient until the signal.
The computer then calculates the breaking curve that should be respected by the driver to safely stop at the signal, taking into account the braking characteristics of its train. If the driver stays below the curve, nothing happens. If not the systems takes over and triggers an automatic braking.
Similar ATP systems exist in most of European countries (unfortunately for UK these systems appeared when the conservative governments had decided not to invest in the railways).
While ATP systems are efficient to avoid passing signals at danger, this will not help in case of any obstacle on the track (being on a level crossing), if signals are opened.
Tests have been made for obstacle detection on level crossings, but the reliability was not deemed satisfactory. Furthermore this implied to have a longer closing time for the level crossing (because the detection should be made when the train is at a sufficient distance from the level crossing to stop).
A European common signaling system has been developed, and is now in its first phase of implementation in various countries. It is based on interoperable beacons and on-board systems, with normalized MMI (man Machine Interface) on board the trains. And it goes with a common communications system for railways, GSM-R, derived from the general GSM system.
Avoid 777 with 3-4-3 config in Y ! They are real sardine cans. (AF/KL for example)