.SSH:UNIX-UNIX环境高级编程9.pdfVIP

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
下载 下载 第9章 进 程 关 系 9.1 引言 在上一章我们已了解到进程之间具有关系。首先,每个进程有一个父进程。当子进程终止 时,父进程会得到通知并能取得子进程的退出状态。在 8 . 6节说明w a i t p i d 函数时,我们也提到 了进程组,以及如何等待进程组中的任意一个进程终止。 本章将更详细地说明进程组以及 P O S I X . 1 引进的对话期新概念。还将介绍登录 s h e l l (登录 时所调用的)和所有从登录s h e l l起动的进程之间的关系。 在说明这些关系时不可能不谈及信号,而谈论信号又需要很多本章介绍的概念。如果你不 熟悉U N I X信号,则可能先要浏览一下第 1 0章。 9.2 终端登录 先看一看登录到U N I X系统时所执行的各个程序。在早期的 U N I X 系统中,例如V 7 ,用户 用哑终端(通过R S - 2 3 2连到主机)进行登录。终端或者是本地的(直接连接)或者是远程的(通 过调制解调器连接)。在这两种情况下,登录都经由内核中的终端设备驱动程序。例如,在 P D P - 1 1上常用的设备是D H - 11和D Z - 1 1。因为连到主机上的终端设备数已经确定,所以同时的 登录数也就有了已知的上限。下面说明的登录过程适用于使用一个 R S - 2 3 2终端登录到U N I X系 统中。 9.2.1 4.3+BSD终端登录 登录过程在过去 1 5年中并没有多少改变。系统管理者创建一个通常名为 / e t c / t t y s 的文件, 其中,每个终端设备有一行,每一行说明设备名和传到 g e t t y程序的参数,这些参数说明了终端 的波特率等。当系统自举时,内核创建进程 ID 1 ,也就是i n i t进程。i n i t进程使系统进入多用户 状态。i n i t读文件/ e t c / t t y s ,对每一个允许登录的终端设备, i n i t调用一次f o r k ,它所生成的子进程 则执行程序g e t t y 。这种情况示于图9 - 1 中。 进程 ID 1 图9 - 1 中各个进程的实际用户I D和有效用户I D都是 0 (也就是它们都具有超级用户特权 ) 。i n i t 以空环境执行 g e t t y程序。 g e t t y对终端设备调用o p e n 函数,以读、写方式将终 对每个终端 f o r k一次 端打开。如果设备是调制解调器,则 o p e n可能会在设备 驱动程序中滞留,直到用户拨号调制解调器,并且线 路被接通。一旦设备被打开,则文件描述符 0 、1、2就 每个子进程 被设置到该设备。然后g e t t y输出“l o g i n :”之类的信息, exec getty 并等待用户键入用户名。如果终端支持多种速度,则 g e t t y可以测试特殊字符以便适当地更改终端速度 (波特 率) 。关于g e t t y程序以及有关数据文件的细节,请参阅 图9-1 init生成进程使终端可用于登录 第 9章 进 程 关 系 1 8 1 下载 U N I X手册。 当用户键入了用户名后,g e t t y就完成了。然后它以类似于下列的方式调用 l o g i n程序: execle(/usr/bin/login, login, -p, username, (char *) 0, envp); (在g e t t y t a b文件中可能会有一些选择项使其调用其他程序,但系统默认是 l o g i n程序)。i n i t 以一 个空环境调用

文档评论(0)

zhuanqmf01 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档