servo trouble

Hi,
Im using a VTS 08B servo 4.8V - 6.0V,
and im using a external 9V battery to rin it , my connecting arduino ground to the gnd of the servo and battery , but my servo behaves strangely , sometimes it just goes directly to the position i mention in myservo.write(pos) , otherwise it twists and jerks and vibrates and stops, it does not follow the instructions, what would be the problem??

#include <Servo.h> 
 
Servo myservo;  // create servo object to control a servo 
                // a maximum of eight servo objects can be created 
 

 
void setup() 
{ 
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object 

} 
 
 
void loop() 
{ 
 
    myservo.write(45);

  
}

If the servo is rated for a maximum of 6V, are you using a voltage regulator to reduce your 9V battery to 6V? And is it a standard rectangular 'block' type 9V battery? Because if it is, it may not be able to supply enough current for the servo. Could you try powering it from, say, four AA batteries in a battery-holder?

You are correct in connecting the grounds together, of course.