下载此文档

07--Linux系统编程-守护进程.doc


文档分类:IT计算机 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
终端:在UNIX系统中,用户通过终端登录系统后得到一个Shell进程,这个终端成为Shell进程的控制终端(ControllingTerminal),进程中,控制终端是保存在PCB中的信息,而fork会复制PCB中的信息,因此由Shell进程启动的其它进程的控制终端也是这个终端。默认情况下(没有重定向),每个进程的标准输入、标准输出和标准错误输出都指向控制终端,进程从标准输入读也就是读用户的键盘输入,进程往标准输出或标准错误输出写也就是输出到显示器上。信号中还讲过,在控制终端输入一些特殊的控制键可以给前台进程发信号,例如Ctrl-C表示SIGINT,Ctrl-\表示SIGQUIT。Alt+Ctrl+F1、F2、F3、F4、F5、F6  字符终端 pts(pseudoterminalslave)指伪终端。Alt+F7    图形终端SSH、...    网络终端终端的启动流程:文件与I/O中讲过,每个进程都可以通过一个特殊的设备文件/dev/tty访问它的控制终端。事实上每个终端设备都对应一个不同的设备文件,/dev/tty提供了一个通用的接口,一个进程要访问它的控制终端既可以通过/dev/tty也可以通过该终端设备所对应的设备文件来访问。ttyname函数可以由文件描述符查出对应的文件名,该文件描述符必须指向一个终端设备而不能是任意文件。简单来说,一个Linux系统启动,大致经历如下的步骤:init-->fork-->exec-->getty-->用户输入帐号-->login-->输入密码-->exec-->bash硬件驱动程序负责读写实际的硬件设备,比如从键盘读入字符和把字符输出到显示器,线路规程像一个过滤器,对于某些特殊字符并不是让它直接通过,而是做特殊处理,比如在键盘上按下Ctrl-z,对应的字符并不会被用户程序的read读到,而是被线路规程截获,解释成SIGTSTP信号发给前台进程,通常会使该进程停止。线路规程应该过滤哪些字符和做哪些特殊处理是可以配置的。终端设备模块linedisciline:线路规程,用来过滤键盘输入的内容。ttyname函数由文件描述符查出对应的文件名char*ttyname(intfd);  成功:终端名;失败:NULL,设置errno    下面我们借助ttyname函数,通过实验看一下各种不同的终端所对应的设备文件名。#include<>#include<>intmain(void){printf("fd0:%s\n",ttyname(0));printf("fd1:%s\n",ttyname(1));printf("fd2:%s\n",ttyname(2));return0;}                                          【】网络终端:虚拟终端或串口终端的数目是有限的,虚拟终端(字符控制终端)一般就是/dev/tty1~/dev/tty6六个,串口终端的数目也不超过串口的数目。然而网络终端或图形终端窗口的数目却是不受限制的,这是通过伪终端(PseudoTTY)实现的。一套伪终端由一个主设备(PTYMaster)和一个从设备(PTYSlave)组成。主设备在概念上相当于键盘和显示器,只不过它不是真正的硬件而是一个内核模块,操作它的

07--Linux系统编程-守护进程 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数9
  • 收藏数0 收藏
  • 顶次数0
  • 上传人iris028
  • 文件大小25 KB
  • 时间2019-12-06