标签:
setuid的用途是允许普通用户完成一些任务,而完成这些任务需要特权和通常被禁止的访问权限。
在实际应用中,通常用来允许普通用户以root用户的角色运行只有root帐号才能运行的程序或命令。
当一个具有setid访问模式的文件被执行时,进程的有效UID将会变成文件所有者的UID,并使用该UID的访问权限来访问其他的文件和资源。
由于可执行文件属于root,因此当程序设置了setid权限位时,普通用户会临时变成root权限,但实际用户任然是原来的mike。
通常,一个进程由三个部分组成:进程控制块PCB、数据和程序。在UNIX中,一个进程也由三个部分组成:进程控制块、数据段和共享正文段,并有其自身的不同含义。
进程运行时用到的数据以及工作区,构成了一个进程的数据段。要注意的是,如果进程执行的程序是不能被共享的,那么也把它归入到数据段中。
为了管理好进程的共享正文段,UNIX在内存专门开辟了一个text结构区域,形成正文段表text[ ].
因此,划分进程为进程控制块、正文段、数据段可以实现共享正文,共享数据和可重入。
标签:
原文地址:http://www.cnblogs.com/wspblog/p/4283165.html