한동안 회사에서 SNMP Agent만드느라 개삽질을 했더니,
하드웨어 지식이 전무하던 상태에서 5%정도 찬 느낌이다.
네트워크라는 것이 뜬구름 같이 알쏭달쏭하더니 일을 하다보니 "이런거구나"하고 조금씩 알게 된다.
하드웨어와 연관된 프로그래밍을 하다보면 Time 관련 함수들에 대해서 잘 알아야 한다.
더구나 국내에서만 사용될 것이 아니라면 더더욱...
64-bit ERF timestamp (erfts)를 struct timeval 으로 변환.
ps. 오늘 "데이터통신" 시험인데, 50점은 맞아야 할 텐데...!!
하드웨어 지식이 전무하던 상태에서 5%정도 찬 느낌이다.
네트워크라는 것이 뜬구름 같이 알쏭달쏭하더니 일을 하다보니 "이런거구나"하고 조금씩 알게 된다.
하드웨어와 연관된 프로그래밍을 하다보면 Time 관련 함수들에 대해서 잘 알아야 한다.
더구나 국내에서만 사용될 것이 아니라면 더더욱...
64-bit ERF timestamp (erfts)를 struct timeval 으로 변환.
struct timeval tv;
lts = erfts;
tv.tv_sec = lts >> 32;
lts = ((lts & 0xffffffffULL) * 1000 * 1000);
lts += (lts & 0x80000000ULL) << 1; /* rounding */
tv.tv_usec = lts >> 32;
if(tv.tv_usec >= 1000000)
{
tv.tv_usec -= 1000000;
tv.tv_sec += 1;
}
lts = erfts;
tv.tv_sec = lts >> 32;
lts = ((lts & 0xffffffffULL) * 1000 * 1000);
lts += (lts & 0x80000000ULL) << 1; /* rounding */
tv.tv_usec = lts >> 32;
if(tv.tv_usec >= 1000000)
{
tv.tv_usec -= 1000000;
tv.tv_sec += 1;
}
ps. 오늘 "데이터통신" 시험인데, 50점은 맞아야 할 텐데...!!