Chinaunix首页 | 论坛 | 博客
  • 博客访问: 438768
  • 博文数量: 78
  • 博客积分: 2030
  • 博客等级: 大尉
  • 技术积分: 1002
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-28 15:25
文章分类

全部博文(78)

文章存档

2012年(1)

2011年(1)

2010年(4)

2009年(12)

2008年(60)

我的朋友

分类: LINUX

2008-10-29 18:08:01

有时需要根据进程的名称,得到它的,写了一个函数

static pid_t get_pid_by_name(char *name)
{
 struct task_struct *tsk;
  pid_t pid = 0;
  read_lock(&tasklist_lock);
  for_each_process(tsk) {
    if (!strcmp(tsk->comm, name))  {
      pid = tsk->pid;    
      break;
    }
  }
  read_unlock(&tasklist_lock);
 /*printk("%s pid = %d\n", name, pid);*/
  return pid;
}
还有一个API根据进程的pid,得到进程的task_struct结构指针,
find_task_by_pid(1)
这个函数很多人配合下面的API函数使用,在内核空间发信号给空间进程。
send_sig(sig_no, struct task_struct * p, 0); 
阅读(1407) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~