Не понимаю вашего возмущения. Ж/д подвижной состав — это всё, что способно двигаться по ж/д путям: и локомотив и вагоны, и вместе и по отдельности. Да, забыл упомянуть снегоуборочную технику, путеукладчики и прочие дрезины, но в процентном отношении их меньшинство..
Тут главное - что это собирательное. Т.е. если просто "состав" - это какой-то один набор сцепленных вместе единиц, и о составах можно говорить во множественном числе, можно их посчитать и т.д., то "подвижной состав" - это просто совокупность всех единиц подвижного состава (или всех подходящих под уточняющее определение, если оно там есть), оно не может быть во множественном числе, оно несчётное и т.д.
Т.е. вопреки обычной логике и здравому смыслу, "подвижной состав" - это не какой-то подвид "состава", а на самом деле совсем отдельная лексическая единица.