20111013版:
目前1588服务已经实现精确对时,基于8139网卡,时差可控范围30ns,1588服务调试方式为写文件,与NdisProt驱动(8139协议层驱动)直接通讯,采用三线程结构(主服务线程、看门狗线程、PTP协议处理线程)。
协议处理线程中所有逻辑与数据处理均与linux一致,设置系统时间部分需要经过几次数据类型转换,因此系统时间的设置精度较linux低一些,不过操作系统时间设定部分并无高精度需求。
在调试过程中,发现了linux的1588最新版驱动,如果将verbose调试开关打开,过多的调试信息会导致报文处理效率下降,因此当对时间隔在1秒钟时,对时精度骤降,因此平时使用时不应打开verbose调试开关,避免大量调试信息输出,需要打开verbose时,可将对时间隔设定为2秒或2秒以上。
Windows 1588服务的使用流程如下:
1、打开命令行窗体
2、执行 net start ndisprot (启动协议层驱动)
3、执行 IEEE1588Svc.exe install (安装1588服务)
4、执行 IEEE1588Svc.exe start(目前有调试信息输出到DebugView)
5、执行 IEEE1588Svc.exe stop(停止1588服务)
6、执行 IEEE1588Svc.exe uninstall(卸载1588服务)