统调用有多浪费时间???

编译执行下面的代码,并测试以下时间(测试所用文件大小1.9M):

 

 

 

time :::0.48user 9.50system 0:10.50elapsed 95%CPU (0avgtext+0avgdata 0maxresident)k

 

再看下面的代码:

 

 

 

TIME::0.00user 0.04system 0:00.04elapsed 86%CPU (0avgtext+0avgdata 0maxresident)k

 

复制时间相差那么大的原因,表面上看是将每次复制的字节数扩大了1024倍,但深层次的原因是减少了频繁的

系统调用,在用户程序中使用系统调用是相当浪费系统资源的


主要原因是:在用户空间中执行用户函数,要使用系统调用的话要切换到用户空间,然后切换回来

这样来来回回相当的浪费时间。观察上面两个程序执行的结果,主要的时间都浪费在系统调用上了

在用户空间执行程序的时间是相当小的。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值