It is well-known that one-tape Turing machines working in linear time are no more powerful than finite automata, namely they recognize exactly the class of regular languages. We prove that it is not decidable if a one-tape machine works in linear time, even if it is deterministic and restricted to use only the portion of the tape which initially contains the input. This motivates the introduction of a constructive variant of one-tape machines, called weight-reducing machine, and the investigation of its properties. We focus on the deterministic case. In particular, we show that, paying a polynomial size increase only, each weight-reducing machine can be turned into a halting one that works in linear time. Furthermore each weight-reducing machine can be converted into equivalent nondeterministic and deterministic finite automata by paying exponential and doubly-exponential increase in size, respectively. These costs cannot be reduced in general.