Se puede clasificar a los subfusiles en cuatro "generaciones":