Linux下C语言编程 时间概念
这一章我们学习Linux的时间表示和计算函数
1.时间的表示
2.时间的测量
3.计时器的使用
--------------------------------------------------------------------------------
1。时间表示 在程序当中,我们经常要输出系统当前的时间,比如我们使用date命令的输出结果.这个时候我们可以使用下面两个函数
#include
time_t time(time_t *tloc);
char *ctime(const time_t *clock);
time函数返回从1970年1月1日0点以来的秒数.存储在time_t结构之中.不过这个函数的返回值对于我们来说没有什么实际意义.这个时候我们使用第二个函数将秒数转化为字符串. 这个函数的返回类型是固定的:一个可能值为. Thu Dec 7 14:58:59 2000 这个字符串的长度是固定的为26
2。时间的测量 有时候我们要计算程序执行的时间.比如我们要对算法进行时间分析.这个时候可以使用下面这个函数.
#include
int gettimeofday(struct timeval *tv,struct timezone *tz);
strut timeval {
long tv_sec; /* 秒数 */
long tv_usec; /* 微秒数 */
};
gettimeofday将时间保存在结构tv之中.tz一般我们使用NULL来代替.
#include #include #include
void function()
{
unsigned int i,j;
double y;
for(i=0;i<1000;i++)
for(j=0;j<1000;j++)
y=sin((double)i);
}
main()
{
struct timeval tpstart,tpend;
float timeuse;
gettimeofday(&tpstart,NULL);
function();
gettimeofday(&tpend,NULL);
timeuse=1000000*(tpend.tv_sec-tpstart.tv_sec)+
tpend.tv_usec-tpstart.tv_usec;
timeuse/=1000000;
printf("Used Time:%f\n",timeuse);
exit(0);
}
这个程序输出函数的执行时间,我们可以使用这个来进行系统性能的测试,或者是函数算法的效率分析.在我机器上的一个输出结果是: Used Time:0.556070
3。计时器的使用 Linux操作系统为每一个进程提供了3个内部间隔计
相关文档:
linux
内核空间与用户空间信息交互方法
本文作者
:
康华
:计算机硕士,主要从事Linux
操作系统内核、Linux
技术标准、计算机安全、软件测试等领域的研究与开发工作,现
就职于
信息产业部软件与集成电路促进中心所属的MII-HP Linux
软件实验室。如果需要可以联系通过
kanghua151@msn.com
联系他。
......
原文地址 http://hi.baidu.com/369464812/blog/item/8d738ff50bc74269ddc474e7.html
[转载]《GNU/Linux编程指南》
1、开发环境及开发工具
GDB的使用
http://www.linuxsir.org/bbs/showthread.php?t=171156
Eclipse IDE
http://www.linuxsir.org/bbs/showthread.php?t=145249
autotools 使用
http: ......
嵌入式Linux内核优化裁剪
优化1、取消虚拟内存的支持
General setup ---& ......
Red Hat Enterprise linux 5配置VPN服务器端新手上路
1.准备动作,使用下面的命令下载需要的安装文件。(默认的存放位置应该是/home
/admin)
wget http://poptop.sourceforge.net/yum/stable/packages/dkms-2.0.17.5-1.noarch.rpm
wget
http://poptop.sourceforge.net/yum/stable/packages/kernel_ppp_mppe-1.0.2-3dk ......
网上有很多资料,也是参考eygle的文档。
OS : Redhat AS 4 U5
DB : Oracle 10.2.0.3
1.修改jdk 下面的字体。
[oracle@rac2 db_1]$ cd $ORACLE_HOME/jdk/jre/lib/
[oracle@rac2 lib]$ mv font.properties font.properties_bak
[oracle@rac2 lib]$
[oracle@rac2 lib]$ cp font.properties.zh_CN.Redhat font.propertie ......