Todo depende del micro. Para consultar la frecuencia del timer del sistema utiliza la función
QueryPerformanceFrequency . Para consultar los ciclos por segundo (no es la frecuencia) utiliza
QueryPerformanceCounter . Luego con la función
timeGetTime obtenés la hora del sistema en milisegundos y lo podés usar como referencia para realizar las cuentas.
Todo esto no sé si te va a servir para hacer un oscilador de alta frecuencia porque todo depende del hardware. Generalmente el ancho de banda es muy reducido y está en el orden de los 44KHz (la velocidad de muestreo de la placa de sonido).
Saludos.