fbpx
维基百科

进程ID

计算机领域,进程标识符(英語:process identifier,又略称为进程ID(英語:process ID)、PID)是大多数操作系统内核用于唯一标识进程的一个数值。这一数值可以作为许多函数调用的参数,以使调整进程优先级、杀死进程之类的进程控制行为成为可能。

类UNIX系统 编辑

类UNIX操作系统中,新进程都衍自系统调用fork()fork()调用会将子进程的PID返回给父进程,使其可以之指代子进程,从而在需要时以之为函数参数。例如,若以子进程PID为参数调用waitpid(),可使父进程以休眠状态等待子进程结束;若以之为参数调用kill(),便可结束对应子进程。

在各PID中,较为特别的是0号PID和1号PID。PID为0者为交换进程(英語:swapper),属于内核进程,负责分页任务;PID为1者则常为init进程,主要负责启动与关闭系统。值得一提的是,1号PID本来并非是特意为init进程预留的,而init进程之所以拥有这一PID,则是因为init即是内核创建的第一个进程。不过,现今的许多UNIX/类UNIX系统内核也有以进程形式存在的其他组成部分,而在这种情况下,1号PID则仍为init进程保有,以与之前系统保持一致[1]

PID的分配机制则因系统而异,一般从0开始,然后顺序分配,直到达到一个最大值(亦因系统而异),而后又从300开始重新分配;在Mac OS XHP-UX下,则是由100开始重分配。在分配PID时,若遇到已分配的PID,则直接跳过,继续递增查找下一个可分配PID。

Microsoft Windows 编辑

Microsoft Windows系列操作系统提供了一系列API,以使开发者可以获取相关PID,如用于获取当前进程PIDGetCurrentProcessId()[2]、返回其他进程PID的GetProcessId()[3]。在操作系统内部,进程ID与线程ID在同一个命名空间中,因此二者不会重合。

PID文件 编辑

有些长时间运行的进程(如MySQL的守护进程)会将自己的PID写入一个文件,以使其他进程可寻获之。

参见 编辑

参考资料 编辑

  1. ^ ISRD Group. Basics Of Os Unix And Shell Programming. Tata McGraw-Hill Education. 2006. 
  2. ^ GetCurrentProcessId Function, Windows Developer Center, [2009-05-20], (原始内容于2009-06-27) 
  3. ^ ProcessId Function, Windows Developer Center, [2011-03-05], (原始内容于2011-03-22) 

本條目部分或全部内容出自以GFDL授權發佈的《自由線上電腦詞典》(FOLDOC)。

进程id, 在计算机领域, 进程标识符, 英語, process, identifier, 又略称为, 英語, process, 是大多数操作系统的内核用于唯一标识进程的一个数值, 这一数值可以作为许多函数调用的参数, 以使调整进程优先级, 杀死进程之类的进程控制行为成为可能, 目录, 类unix系统, microsoft, windows, pid文件, 参见, 参考资料类unix系统, 编辑在类unix操作系统中, 新进程都衍自系统调用fork, fork, 调用会将子进程的pid返回给父进程, 使其可以之指代. 在计算机领域 进程标识符 英語 process identifier 又略称为进程ID 英語 process ID PID 是大多数操作系统的内核用于唯一标识进程的一个数值 这一数值可以作为许多函数调用的参数 以使调整进程优先级 杀死进程之类的进程控制行为成为可能 目录 1 类UNIX系统 2 Microsoft Windows 3 PID文件 4 参见 5 参考资料类UNIX系统 编辑在类UNIX操作系统中 新进程都衍自系统调用fork fork 调用会将子进程的PID返回给父进程 使其可以之指代子进程 从而在需要时以之为函数参数 例如 若以子进程PID为参数调用waitpid 可使父进程以休眠状态等待子进程结束 若以之为参数调用kill 便可结束对应子进程 在各PID中 较为特别的是0号PID和1号PID PID为0者为交换进程 英語 swapper 属于内核进程 负责分页任务 PID为1者则常为init进程 主要负责启动与关闭系统 值得一提的是 1号PID本来并非是特意为init进程预留的 而init进程之所以拥有这一PID 则是因为init即是内核创建的第一个进程 不过 现今的许多UNIX 类UNIX系统内核也有以进程形式存在的其他组成部分 而在这种情况下 1号PID则仍为init进程保有 以与之前系统保持一致 1 PID的分配机制则因系统而异 一般从0开始 然后顺序分配 直到达到一个最大值 亦因系统而异 而后又从300开始重新分配 在Mac OS X和HP UX下 则是由100开始重分配 在分配PID时 若遇到已分配的PID 则直接跳过 继续递增查找下一个可分配PID Microsoft Windows 编辑Microsoft Windows系列操作系统提供了一系列API 以使开发者可以获取相关PID 如用于获取当前进程PIDGetCurrentProcessId 2 返回其他进程PID的GetProcessId 3 在操作系统内部 进程ID与线程ID在同一个命名空间中 因此二者不会重合 PID文件 编辑有些长时间运行的进程 如MySQL的守护进程 会将自己的PID写入一个文件 以使其他进程可寻获之 参见 编辑 a href Pidof html title Pidof pidof a 用户标识符 UID 组标识符 英语 Group identifier GID 参考资料 编辑 ISRD Group Basics Of Os Unix And Shell Programming Tata McGraw Hill Education 2006 GetCurrentProcessId Function Windows Developer Center 2009 05 20 原始内容存档于2009 06 27 ProcessId Function Windows Developer Center 2011 03 05 原始内容存档于2011 03 22 本條目部分或全部内容出自以GFDL授權發佈的 自由線上電腦詞典 FOLDOC 取自 https zh wikipedia org w index php title 进程ID amp oldid 74532893, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。