How can the Arduino Uno support up to 12 servos if it only has 6 digital PWM pins? According to this:


  The Servo library supports up to 12 motors on most Arduino boards and
  48 on the Arduino Mega. On boards other than the Mega, use of the
  library disables analogWrite() (PWM) functionality on pins 9 and 10,
  whether or not there is a Servo on those pins. On the Mega, up to 12
  servos can be used without interfering with PWM functionality; use of
  12 to 23 motors will disable PWM on pins 11 and 12.


However, according to this:


  Digital I/O Pins 14 (of which 6 provide PWM output)


So how can the Uno control more than 6 servos if it only has 6 digital I/O pins that can provide PWM output?
Although I haven't looked at the source myself, in these types of situations they usually use interrupt timer 1, which in PWM mode would have been associated with pins 9 and 10. This would explain why you can't use pulse width modulation on those pins. In fact, you can use any of the three timers for PWM on any digital pin, although it's not as good as the built in PWM options.


(source: bansky.net)

(Source)
The above image accurately describes how the signals are sent to the servo motor. Such a waveform is similar to a standard PWM. The servo library can translate a degree to a waveform that the servo's IC will be able to use to adjust the motor's position with it's motor and potentiometer.