当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 17 篇帖子 ]  前往页数 1, 2  下一页
作者 内容
1 楼 
 文章标题 : 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 9:10 
头像

注册: 2006-07-28 14:58
帖子: 225
地址: 廣州
送出感谢: 0 次
接收感谢: 0 次
本人要统计一些数据,想在bash中开启大量进程进行测试,但有个问题是如何将每个进程的具体时间记录下来? 这个时间应该要比S还要精确才行吧


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 9:12 
头像

注册: 2006-07-28 14:58
帖子: 225
地址: 廣州
送出感谢: 0 次
接收感谢: 0 次
另外,怎样测试进程才算是好方法?我想试一下不同的调度算法的影响。


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 9:12 
头像

注册: 2007-10-19 14:51
帖子: 4953
地址: 深圳
送出感谢: 0 次
接收感谢: 2
代码:
time command


_________________
Nothing 有事请发邮件到 yms541 AT gmail.com
alias 爱慕颇雷尔='mplayer'


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 9:50 
头像

注册: 2006-07-28 14:58
帖子: 225
地址: 廣州
送出感谢: 0 次
接收感谢: 0 次
这个不是只计算运行时间吗?


页首
 用户资料  
 
5 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 9:57 
头像

注册: 2007-10-19 14:51
帖子: 4953
地址: 深圳
送出感谢: 0 次
接收感谢: 2
那就用这个:

代码:
date +%s.%N


精确到纳秒 :em05


_________________
Nothing 有事请发邮件到 yms541 AT gmail.com
alias 爱慕颇雷尔='mplayer'


页首
 用户资料  
 
6 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 11:55 
头像

注册: 2006-07-28 14:58
帖子: 225
地址: 廣州
送出感谢: 0 次
接收感谢: 0 次
好的 试试 希望大家都提写好东西
谢谢你 :em05

prccmd1 &
date +%s.%N
prccmd2 &

如何知道中间打出来的命令是后面的开始时间呢,这样之能做一个大概的评估吧,可能后两条命令间延迟‘严重’


页首
 用户资料  
 
7 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 12:22 
头像

注册: 2006-07-28 14:58
帖子: 225
地址: 廣州
送出感谢: 0 次
接收感谢: 0 次
而且还有结束时间呢


页首
 用户资料  
 
8 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 17:47 
头像

注册: 2006-07-28 14:58
帖子: 225
地址: 廣州
送出感谢: 0 次
接收感谢: 0 次
突然想起来 我自己可以写一个程序体 在头和尾把tick打印出来,然后再装载成进程,反正都是模拟的。

现在问题是怎样打印出tick?


最后由 xxdaystar 编辑于 2009-04-08 17:51,总共编辑了 1 次

页首
 用户资料  
 
9 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 17:48 
头像

注册: 2006-07-28 14:58
帖子: 225
地址: 廣州
送出感谢: 0 次
接收感谢: 0 次
而且程序的调入和开始执行不是一个时间吧


页首
 用户资料  
 
10 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 18:53 
头像

注册: 2006-07-28 14:58
帖子: 225
地址: 廣州
送出感谢: 0 次
接收感谢: 0 次
gettimeofday(); 可以解决

就是另一个问题不知怎么办,如何才知道进程的被调入时间,这个时间应该和被执行第一句的时间不是一个。


页首
 用户资料  
 
11 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 20:22 
头像

注册: 2005-12-28 1:16
帖子: 3916
地址: 火星
系统: Ubuntu 12.10 X64
送出感谢: 1
接收感谢: 0 次
xxdaystar 写道:
gettimeofday(); 可以解决

就是另一个问题不知怎么办,如何才知道进程的被调入时间,这个时间应该和被执行第一句的时间不是一个。


http://linux.chinaunix.net/bbs/viewthre ... id=1056687


_________________
目前负债150多万


页首
 用户资料  
 
12 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 21:09 
头像

注册: 2006-07-28 14:58
帖子: 225
地址: 廣州
送出感谢: 0 次
接收感谢: 0 次
xhy 写道:
xxdaystar 写道:
gettimeofday(); 可以解决

就是另一个问题不知怎么办,如何才知道进程的被调入时间,这个时间应该和被执行第一句的时间不是一个。


http://linux.chinaunix.net/bbs/viewthre ... id=1056687


关键是如何将他自动化记录下来,如果一大堆的进程同时运行的话,PID号恐怕是未知的。
比如
#!/bin/bash
myproc1 &;
myproc2 &;
myproc3 &;
myproc4 &;
....



如果采用下面方法倒是可以作一个大致估计
#!/bin/bash
echo someting; date +%s.%N
myproc1 &;
echo someting; date +%s.%N
myproc2 &;
echo someting; date +%s.%N
myproc3 &;
echo someting; date +%s.%N
myproc4 &;
....


页首
 用户资料  
 
13 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 21:15 
头像

注册: 2005-12-28 1:16
帖子: 3916
地址: 火星
系统: Ubuntu 12.10 X64
送出感谢: 1
接收感谢: 0 次
xxdaystar 写道:
xhy 写道:
xxdaystar 写道:
gettimeofday(); 可以解决

就是另一个问题不知怎么办,如何才知道进程的被调入时间,这个时间应该和被执行第一句的时间不是一个。


http://linux.chinaunix.net/bbs/viewthre ... id=1056687


关键是如何将他自动化记录下来,如果一大堆的进程同时运行的话,PID号恐怕是未知的。
比如
#!/bin/bash
myproc1 &;
myproc2 &;
myproc3 &;
myproc4 &;
....



如果采用下面方法倒是可以作一个大致估计
#!/bin/bash
echo someting; date +%s.%N
myproc1 &;
echo someting; date +%s.%N
myproc2 &;
echo someting; date +%s.%N
myproc3 &;
echo someting; date +%s.%N
myproc4 &;
....



如果你要保证每一个进程都不漏网,只有两个办法

1 所有的进程都由你创建,你可以自行写log

2 hook掉fork系统调用,和exit系统调用,你就可以知道每个进程的生存时间区间


_________________
目前负债150多万


页首
 用户资料  
 
14 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-08 21:16 
头像

注册: 2005-12-28 1:16
帖子: 3916
地址: 火星
系统: Ubuntu 12.10 X64
送出感谢: 1
接收感谢: 0 次
xhy 写道:
xxdaystar 写道:
xhy 写道:
xxdaystar 写道:
gettimeofday(); 可以解决

就是另一个问题不知怎么办,如何才知道进程的被调入时间,这个时间应该和被执行第一句的时间不是一个。


http://linux.chinaunix.net/bbs/viewthre ... id=1056687


关键是如何将他自动化记录下来,如果一大堆的进程同时运行的话,PID号恐怕是未知的。
比如
#!/bin/bash
myproc1 &;
myproc2 &;
myproc3 &;
myproc4 &;
....



如果采用下面方法倒是可以作一个大致估计
#!/bin/bash
echo someting; date +%s.%N
myproc1 &;
echo someting; date +%s.%N
myproc2 &;
echo someting; date +%s.%N
myproc3 &;
echo someting; date +%s.%N
myproc4 &;
....



如果你要保证每一个进程都不漏网,只有两个办法

1 所有的进程都由你创建,你可以自行写log

2 hook掉fork系统调用,和exit系统调用,你就可以知道每个进程的生存时间区间



pid也不可能是未知的,/proc下面有所有进程的pid


_________________
目前负债150多万


页首
 用户资料  
 
15 楼 
 文章标题 : Re: 如何在bash中得到或记录一个进程的开始和结束时间
帖子发表于 : 2009-04-09 21:47 
头像

注册: 2006-07-28 14:58
帖子: 225
地址: 廣州
送出感谢: 0 次
接收感谢: 0 次
xhy 写道:
xhy 写道:
xxdaystar 写道:
xhy 写道:
xxdaystar 写道:
gettimeofday(); 可以解决

就是另一个问题不知怎么办,如何才知道进程的被调入时间,这个时间应该和被执行第一句的时间不是一个。


http://linux.chinaunix.net/bbs/viewthre ... id=1056687


关键是如何将他自动化记录下来,如果一大堆的进程同时运行的话,PID号恐怕是未知的。
比如
#!/bin/bash
myproc1 &;
myproc2 &;
myproc3 &;
myproc4 &;
....



如果采用下面方法倒是可以作一个大致估计
#!/bin/bash
echo someting; date +%s.%N
myproc1 &;
echo someting; date +%s.%N
myproc2 &;
echo someting; date +%s.%N
myproc3 &;
echo someting; date +%s.%N
myproc4 &;
....



如果你要保证每一个进程都不漏网,只有两个办法

1 所有的进程都由你创建,你可以自行写log

2 hook掉fork系统调用,和exit系统调用,你就可以知道每个进程的生存时间区间



pid也不可能是未知的,/proc下面有所有进程的pid


谢谢你的回答。

可能我表述得不太准确,其实我想说的是 并不是说怕漏掉,因为/proc下有所有的进程信息,只是不知道怎么将他们每个进程号与bash脚本中的未执行进程联系起来。因为一个进程在没有执行前是不知道他将得到的进程号的吧? 而且进程太短了的话恐怕连读都没来得读在/proc下就结束了..


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 17 篇帖子 ]  前往页数 1, 2  下一页

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译