.Net  

Unix系统是通过进程树来进行进程管理,当计算机系统被启动后,Unix的核心程序装主存,这点与Windows差不了.当核心程序在做完自身的初始化工作后,建立系统的第一个进程.这个进程在UNIX系统中被称为0号进程, 0号进程进程始终运行在系统的核心态,它的功能是完成UNIX系统的进程调度(这里说下,UNIX的进程调度一般都是在trap访管理指令下进行的)和让进程在主存与磁盘上进行交换(这一个过程发生在UNIX系统中的交换区,通常为UNIX的swap磁盘区),因此,在UNIX系统中0号进程与被人们称为交换进程.

注意:在UNIX系统中0号进程并不是初始化进程,而是由0号进程创建的1号进程才是初始化进行,1号进程在用户态运行;每当有终端请求注册时,1号进行就为该用户创建一个login进程.如果有多个终端用户向系统注册,则要为每个用户创建一个login进程,分别处理各个用户的登录过程.若用户注册成功,则login进程就为该用户再创建一个shell进程.

每个shell进程等待用户输入命令.shell进行执行shell解释程序,对接收到的命令进行分析,分析后再创建一个进程去执行该命令.执行命令的进程可按需要再继续创建进程.一条命令执行完后,又返回到shell进程等待下一条命令.

 以下只是说明UNIX从启动到终端用户登录系统并执行UNIX命令这一过程中从UNIX系统的进程观点去分析相关系统进程的过程,总的来说在UNIX中,0号进程和1号进程是进程簇的老祖宗,在系统运行期间就不消亡.

另外,在UNIX系统中用户可通过Shell编程来监控自己在系统中运行的相关进程情况.

posted on 2008-03-04 21:08  东方新秀  阅读(767)  评论(0编辑  收藏  举报