на счёт звания отвечу с радостью :-)) так вот Первоначально было звание "генерал" (главный). Его заместители именовались "генерал-лейтенант" (заместитель главного, помощник главного);
"генерал-майор" первоначально обозначал самого старшего офицера в полку (еще не уровня "воеводы", так сказать: главный майор), он обычно полком и командовал, т.к. "полковниками" именовались владельцы полков, создававшие их за свой счет (период феодализма, наемные армии....).
ну и когда в большинстве европейских стран вводили воинские звания, такого звания, как "лейтенант" изначально не было а генералы-майоры были)) его заменяло звание "поручик". В соответствии с французским происхождением слова, лейтенаннами именовались заместители командиров более высокого уровня. При этом, в системе званий существовало звание "полного генерала" или просто генерала - чина, на одну ступень ниже фельдмаршала. Таким образом, звание "генерал-лейтенант" первоначально обозначало скорее должность - заместитель полного генерала.
так что современная система званий берет свое начало от наименований строевых должностей в войсках 17-18 вв., и примерно устоявшись к середине 18 в. в принципе остается неизменной.
ещё версия что по звёздам
Генерал майор= одна звезда
г/лейт.= две