Generally, the timing of operations of the intake valve and the exhaust valve of engines including direct fuel injection engines is dependent only on the cam profiles of cams driven for rotation in synchronism With the rotation of the crank shaft of the engine. Accordingly, it is difficult to achieve optimum valve timing control in a Wide range of operating condition. It is desirable to vary valve timing according to the operating condition to improve the output performance of the engine and the like. It is necessary to vary valve timing so that valve overlap period, i.e., a period in Which both the intake and the exhaust valve are open, decreases to prevent the blow by of new charge While the engine is operating at a relatively low engine speed, and so that valve overlap period increases to supply new charge at a high charging efficiency by using exhaust gas pulsation While the engine is operating at a relatively high engine speed.