710.html

来自「linux 0.11中文版 有注释」· HTML 代码 · 共 170 行 · 第 1/2 页

HTML
170
字号
<html>
<head>
<title>tty</title>
<meta name='robots' content='noindex,nofollow'>
<meta name='generator' content='GLOBAL-5.4.1'>
</head>
<body text='#191970' bgcolor='#f5f5dc' vlink='gray'>
<pre>
<a href='../S/15.html#L254'>tty</a>               254 fs/open.c      	if (current-&gt;leader &amp;&amp; current-&gt;tty &lt; 0)
<a href='../S/15.html#L256'>tty</a>               256 fs/open.c      	    current-&gt;tty = MINOR (inode-&gt;i_zone[0]);
<a href='../S/15.html#L257'>tty</a>               257 fs/open.c      	    tty_table[current-&gt;tty].pgrp = current-&gt;pgrp;
<a href='../S/15.html#L263'>tty</a>               263 fs/open.c            if (current-&gt;tty &lt; 0)
<a href='../S/36.html#L155'>tty</a>               155 include/linux/sched.h   int tty;			/* -1 if no tty, so it must be signed */
<a href='../S/38.html#L56'>tty</a>                56 include/linux/tty.h #define INTR_CHAR(tty) ((tty)-&gt;termios.c_cc[VINTR])	// 中断符。
<a href='../S/38.html#L57'>tty</a>                57 include/linux/tty.h #define QUIT_CHAR(tty) ((tty)-&gt;termios.c_cc[VQUIT])	// 退出符。
<a href='../S/38.html#L58'>tty</a>                58 include/linux/tty.h #define ERASE_CHAR(tty) ((tty)-&gt;termios.c_cc[VERASE])	// 削除符。
<a href='../S/38.html#L59'>tty</a>                59 include/linux/tty.h #define KILL_CHAR(tty) ((tty)-&gt;termios.c_cc[VKILL])	// 终止符。
<a href='../S/38.html#L60'>tty</a>                60 include/linux/tty.h #define EOF_CHAR(tty) ((tty)-&gt;termios.c_cc[VEOF])	// 文件结束符。
<a href='../S/38.html#L61'>tty</a>                61 include/linux/tty.h #define START_CHAR(tty) ((tty)-&gt;termios.c_cc[VSTART])	// 开始符。
<a href='../S/38.html#L62'>tty</a>                62 include/linux/tty.h #define STOP_CHAR(tty) ((tty)-&gt;termios.c_cc[VSTOP])	// 结束符。
<a href='../S/38.html#L63'>tty</a>                63 include/linux/tty.h #define SUSPEND_CHAR(tty) ((tty)-&gt;termios.c_cc[VSUSP])	// 挂起符。
<a href='../S/38.html#L71'>tty</a>                71 include/linux/tty.h   void (*write) (struct tty_struct * tty);	// tty 写函数指针。
<a href='../S/60.html#L444'>tty</a>               444 kernel/chr_drv/console.c       PUTCH (*p, tty-&gt;read_q);
<a href='../S/60.html#L448'>tty</a>               448 kernel/chr_drv/console.c   copy_to_cooked (tty);		// 转换成规范模式(放入辅助队列中)。
<a href='../S/60.html#L611'>tty</a>               611 kernel/chr_drv/console.c   nr = CHARS (tty-&gt;write_q);
<a href='../S/60.html#L620'>tty</a>               620 kernel/chr_drv/console.c       GETCH (tty-&gt;write_q, c);
<a href='../S/60.html#L649'>tty</a>               649 kernel/chr_drv/console.c 	  else if (c == ERASE_CHAR (tty))
<a href='../S/60.html#L696'>tty</a>               696 kernel/chr_drv/console.c 	    respond (tty);
<a href='../S/64.html#L85'>tty</a>                85 kernel/chr_drv/serial.c   if (!EMPTY (tty-&gt;write_q))
<a href='../S/64.html#L86'>tty</a>                86 kernel/chr_drv/serial.c     outb (inb_p (tty-&gt;write_q.data + 1) | 0x02, tty-&gt;write_q.data + 1);
<a href='../S/65.html#L36'>tty</a>                36 kernel/chr_drv/tty_io.c #define _L_FLAG(tty,f) ((tty)-&gt;termios.c_lflag &amp; f)	// 取termios 结构中的本地模式标志。
<a href='../S/65.html#L37'>tty</a>                37 kernel/chr_drv/tty_io.c #define _I_FLAG(tty,f) ((tty)-&gt;termios.c_iflag &amp; f)	// 取termios 结构中的输入模式标志。
<a href='../S/65.html#L38'>tty</a>                38 kernel/chr_drv/tty_io.c #define _O_FLAG(tty,f) ((tty)-&gt;termios.c_oflag &amp; f)	// 取termios 结构中的输出模式标志。
<a href='../S/65.html#L41'>tty</a>                41 kernel/chr_drv/tty_io.c #define L_CANON(tty) _L_FLAG((tty),ICANON)	// 取本地模式标志集中规范(熟)模式标志位。
<a href='../S/65.html#L42'>tty</a>                42 kernel/chr_drv/tty_io.c #define L_ISIG(tty) _L_FLAG((tty),ISIG)	// 取信号标志位。
<a href='../S/65.html#L43'>tty</a>                43 kernel/chr_drv/tty_io.c #define L_ECHO(tty) _L_FLAG((tty),ECHO)	// 取回显字符标志位。
<a href='../S/65.html#L44'>tty</a>                44 kernel/chr_drv/tty_io.c #define L_ECHOE(tty) _L_FLAG((tty),ECHOE)	// 规范模式时,取回显擦出标志位。
<a href='../S/65.html#L45'>tty</a>                45 kernel/chr_drv/tty_io.c #define L_ECHOK(tty) _L_FLAG((tty),ECHOK)	// 规范模式时,取KILL 擦除当前行标志位。
<a href='../S/65.html#L46'>tty</a>                46 kernel/chr_drv/tty_io.c #define L_ECHOCTL(tty) _L_FLAG((tty),ECHOCTL)	// 取回显控制字符标志位。
<a href='../S/65.html#L47'>tty</a>                47 kernel/chr_drv/tty_io.c #define L_ECHOKE(tty) _L_FLAG((tty),ECHOKE)	// 规范模式时,取KILL 擦除行并回显标志位。
<a href='../S/65.html#L50'>tty</a>                50 kernel/chr_drv/tty_io.c #define I_UCLC(tty) _I_FLAG((tty),IUCLC)	// 取输入模式标志集中大写到小写转换标志位。
<a href='../S/65.html#L51'>tty</a>                51 kernel/chr_drv/tty_io.c #define I_NLCR(tty) _I_FLAG((tty),INLCR)	// 取换行符NL 转回车符CR 标志位。
<a href='../S/65.html#L52'>tty</a>                52 kernel/chr_drv/tty_io.c #define I_CRNL(tty) _I_FLAG((tty),ICRNL)	// 取回车符CR 转换行符NL 标志位。
<a href='../S/65.html#L53'>tty</a>                53 kernel/chr_drv/tty_io.c #define I_NOCR(tty) _I_FLAG((tty),IGNCR)	// 取忽略回车符CR 标志位。
<a href='../S/65.html#L56'>tty</a>                56 kernel/chr_drv/tty_io.c #define O_POST(tty) _O_FLAG((tty),OPOST)	// 取输出模式标志集中执行输出处理标志。
<a href='../S/65.html#L57'>tty</a>                57 kernel/chr_drv/tty_io.c #define O_NLCR(tty) _O_FLAG((tty),ONLCR)	// 取换行符NL 转回车换行符CR-NL 标志。
<a href='../S/65.html#L58'>tty</a>                58 kernel/chr_drv/tty_io.c #define O_CRNL(tty) _O_FLAG((tty),OCRNL)	// 取回车符CR 转换行符NL 标志。
<a href='../S/65.html#L59'>tty</a>                59 kernel/chr_drv/tty_io.c #define O_NLRET(tty) _O_FLAG((tty),ONLRET)	// 取换行符NL 执行回车功能的标志。
<a href='../S/65.html#L60'>tty</a>                60 kernel/chr_drv/tty_io.c #define O_LCUC(tty) _O_FLAG((tty),OLCUC)	// 取小写转大写字符标志。
<a href='../S/65.html#L140'>tty</a>               140 kernel/chr_drv/tty_io.c   if (tty-&gt;pgrp &lt;= 0)
<a href='../S/65.html#L145'>tty</a>               145 kernel/chr_drv/tty_io.c     if (task[i] &amp;&amp; task[i]-&gt;pgrp == tty-&gt;pgrp)
<a href='../S/65.html#L197'>tty</a>               197 kernel/chr_drv/tty_io.c   while (!EMPTY (tty-&gt;read_q) &amp;&amp; !FULL (tty-&gt;secondary))
<a href='../S/65.html#L200'>tty</a>               200 kernel/chr_drv/tty_io.c       GETCH (tty-&gt;read_q, c);
<a href='../S/65.html#L205'>tty</a>               205 kernel/chr_drv/tty_io.c 	if (I_CRNL (tty))
<a href='../S/65.html#L207'>tty</a>               207 kernel/chr_drv/tty_io.c 	else if (I_NOCR (tty))
<a href='../S/65.html#L211'>tty</a>               211 kernel/chr_drv/tty_io.c       else if (c == 10 &amp;&amp; I_NLCR (tty))
<a href='../S/65.html#L214'>tty</a>               214 kernel/chr_drv/tty_io.c       if (I_UCLC (tty))
<a href='../S/65.html#L217'>tty</a>               217 kernel/chr_drv/tty_io.c       if (L_CANON (tty))
<a href='../S/65.html#L220'>tty</a>               220 kernel/chr_drv/tty_io.c 	  if (c == KILL_CHAR (tty))
<a href='../S/65.html#L225'>tty</a>               225 kernel/chr_drv/tty_io.c 	      while (!(EMPTY (tty-&gt;secondary) ||
<a href='../S/65.html#L226'>tty</a>               226 kernel/chr_drv/tty_io.c 		       (c = LAST (tty-&gt;secondary)) == 10 ||
<a href='../S/65.html#L227'>tty</a>               227 kernel/chr_drv/tty_io.c 		       c == EOF_CHAR (tty)))
<a href='../S/65.html#L231'>tty</a>               231 kernel/chr_drv/tty_io.c 		  if (L_ECHO (tty))
<a href='../S/65.html#L234'>tty</a>               234 kernel/chr_drv/tty_io.c 			PUTCH (127, tty-&gt;write_q);
<a href='../S/65.html#L235'>tty</a>               235 kernel/chr_drv/tty_io.c 		      PUTCH (127, tty-&gt;write_q);
<a href='../S/65.html#L236'>tty</a>               236 kernel/chr_drv/tty_io.c 		      tty-&gt;write (tty);
<a href='../S/65.html#L239'>tty</a>               239 kernel/chr_drv/tty_io.c 		  DEC (tty-&gt;secondary.head);
<a href='../S/65.html#L244'>tty</a>               244 kernel/chr_drv/tty_io.c 	  if (c == ERASE_CHAR (tty))
<a href='../S/65.html#L248'>tty</a>               248 kernel/chr_drv/tty_io.c 	      if (EMPTY (tty-&gt;secondary) ||
<a href='../S/65.html#L249'>tty</a>               249 kernel/chr_drv/tty_io.c 		  (c = LAST (tty-&gt;secondary)) == 10 || c == EOF_CHAR (tty))
<a href='../S/65.html#L253'>tty</a>               253 kernel/chr_drv/tty_io.c 	      if (L_ECHO (tty))
<a href='../S/65.html#L256'>tty</a>               256 kernel/chr_drv/tty_io.c 		    PUTCH (127, tty-&gt;write_q);
<a href='../S/65.html#L257'>tty</a>               257 kernel/chr_drv/tty_io.c 		  PUTCH (127, tty-&gt;write_q);
<a href='../S/65.html#L258'>tty</a>               258 kernel/chr_drv/tty_io.c 		  tty-&gt;write (tty);
<a href='../S/65.html#L261'>tty</a>               261 kernel/chr_drv/tty_io.c 	      DEC (tty-&gt;secondary.head);
<a href='../S/65.html#L265'>tty</a>               265 kernel/chr_drv/tty_io.c 	  if (c == STOP_CHAR (tty))
<a href='../S/65.html#L267'>tty</a>               267 kernel/chr_drv/tty_io.c 	      tty-&gt;stopped = 1;
<a href='../S/65.html#L271'>tty</a>               271 kernel/chr_drv/tty_io.c 	  if (c == START_CHAR (tty))
<a href='../S/65.html#L273'>tty</a>               273 kernel/chr_drv/tty_io.c 	      tty-&gt;stopped = 0;
<a href='../S/65.html#L279'>tty</a>               279 kernel/chr_drv/tty_io.c       if (L_ISIG (tty))
<a href='../S/65.html#L282'>tty</a>               282 kernel/chr_drv/tty_io.c 	  if (c == INTR_CHAR (tty))
<a href='../S/65.html#L284'>tty</a>               284 kernel/chr_drv/tty_io.c 	      tty_intr (tty, INTMASK);
<a href='../S/65.html#L288'>tty</a>               288 kernel/chr_drv/tty_io.c 	  if (c == QUIT_CHAR (tty))
<a href='../S/65.html#L290'>tty</a>               290 kernel/chr_drv/tty_io.c 	      tty_intr (tty, QUITMASK);
<a href='../S/65.html#L295'>tty</a>               295 kernel/chr_drv/tty_io.c       if (c == 10 || c == EOF_CHAR (tty))

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?