如何打印出正在运行的进程pid

ftimh 2010-10-23 12:46:30
请问各位大虾在Linux0.11内核下如何打印出正在运行的进程的pid??
...全文
371 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
louyong0571 2010-10-25
  • 打赏
  • 举报
回复
就getpid吧,能运行到不就说明占用着cpu吗?
ftimh 2010-10-25
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 louyong0571 的回复:]

就getpid吧,能运行到不就说明占用着cpu吗?
[/Quote]

getpid是能提取这个进程号,但是有这个进程并不代表它正在占用着cpu,该进程有可能处于阻塞态或就绪态。
我的意思是要打印出cpu正在执行的进程号,而不是有什么进程。
ftimh 2010-10-24
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 steptodream 的回复:]

楼主教教我 0.11内核怎么让他跑起来啊
[/Quote]

下个虚拟机bochs还有Linux0.11内核代码
网上有教程
ftimh 2010-10-24
  • 打赏
  • 举报
回复
是指正在占用cpu的进程号,即cpu正在运行的进程pid
jihen 2010-10-24
  • 打赏
  • 举报
回复
》~《 牛人。。。用这么原始的内核
神秘嘉宾07 2010-10-23
  • 打赏
  • 举报
回复
getpid()是可以用的,他是个包含在sched.c 里的系统调用:
int sys_getpid(void)
{
return current->pid;
}
沭水河畔 2010-10-23
  • 打赏
  • 举报
回复
使用task_struct结构体吧,具体可以参见 linux/kernel/sched.c 中show_task、sys_getpid等函数的实现。

cr4315 2010-10-23
  • 打赏
  • 举报
回复
神马!0。11?
黑呼乎 2010-10-23
  • 打赏
  • 举报
回复
0.11提供的借口很少很少,没有ps命令,貌似也没有getpid方法 哈哈
井朝天 2010-10-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 steptodream 的回复:]
楼主教教我 0.11内核怎么让他跑起来啊
[/Quote]

同问,这么牛逼。难道该内核不提供get_pid()么?
steptodream 2010-10-23
  • 打赏
  • 举报
回复
楼主教教我 0.11内核怎么让他跑起来啊
linyilong3 2010-10-23
  • 打赏
  • 举报
回复
ps -ax
linux 0.11有没有这个函数?

4,465

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧