日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Linux終端控制:探索TTYS層次的奧秘(linuxttys)

linux 終端控制是一種強(qiáng)大的技術(shù),它可以讓我們更深入地控制終端以及與終端相關(guān)的所有東西,例如登錄用戶,vim編輯器等。本文將著重介紹TTYS層次的奧秘,深入了解TTY的主要組件以及它們是如何起作用的。

成都創(chuàng)新互聯(lián)公司從2013年開(kāi)始,先為康樂(lè)等服務(wù)建站,康樂(lè)等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為康樂(lè)企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

首先,我們來(lái)看看 TTY 的層次結(jié)構(gòu)。圖 1提供了一個(gè)簡(jiǎn)圖,展示了TTY抽象層次結(jié)構(gòu):

![1.png](https://upload-images.jianshu.io/upload_images/5030629-190154b67a7bfa17.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

圖 1:TTY抽象層次結(jié)構(gòu)

從上面我們可以看出,TTY 基本上可以分為三個(gè)部分:

– TTY 設(shè)備驅(qū)動(dòng)程序:這是低層次的硬件驅(qū)動(dòng)程序,可以處理串口和終端等設(shè)備的輸入輸出,包括獲取輸入數(shù)據(jù),控制發(fā)送數(shù)據(jù)以及更新設(shè)備的狀態(tài)等。

– TTY 內(nèi)核部分:包括管理 TTY 的和控制 TTY 之間的交互等使用的行為,以及實(shí)現(xiàn) TTY 的特定的功能和選項(xiàng)等。

– 用戶空間:它提供了 TTY 和用戶對(duì)話的接口,它能夠控制 TTY 的輸入和輸出,并實(shí)現(xiàn)了終端和終端控制程序之間的交互,所以可以在 Linux 命令行窗口中使用 TTY。

既然我們已經(jīng)來(lái)了解 TTY 的層次結(jié)構(gòu),那么下面我們來(lái)看看如何使用代碼來(lái)控制 TTY。 TTY設(shè)備驅(qū)動(dòng)程序提供了一些內(nèi)核級(jí)的接口,下面是有關(guān) TTY 控制的代碼,其中, tty_ioctl() 是用于 TTY 控制的內(nèi)核函數(shù):

“`c

int tty_ioctl (struct tty_struct * tty,

unsigned int cmd,

unsigned long arg)

{

switch (cmd) {

// 打開(kāi)TTY

case TIOCSCTTY:

if (tty_paranoia_check(tty, current->tty, “tty_ioctl”))

return -EACCES;

if (current->signal->tty != tty &&

tty->session == NULL) {

if (!capable(CAP_SYS_ADMIN))

return -EPERM;

}

current->signal->tty = tty;

tty->session = current->signal;

tty->pgrp = process_group(current);

return 0;

// 關(guān)閉TTY

case TIOCCLOSE:

if (!capable(CAP_SYS_ADMIN))

return -EPERM;

tty_kref_put(tty);

return 0;

}

return -ENOIOCTLCMD;

}


這段代碼實(shí)現(xiàn)了一個(gè)控制 TTY 的函數(shù),既可以打開(kāi) TTY,也可以關(guān)閉 TTY,這在控制 TTY 時(shí)非常有用。

通過(guò)上述的內(nèi)容,我們可以看出,TTY 層次的結(jié)構(gòu)其實(shí)就是一種抽象的技術(shù),可以把設(shè)備的輸入輸出抽象成一種更抽象的概念,并且通過(guò)編寫(xiě)相關(guān)的控制代碼,更加輕松地控制 TTY 以及它有關(guān)的東西。

香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開(kāi)通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過(guò)10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。


文章名稱:Linux終端控制:探索TTYS層次的奧秘(linuxttys)
網(wǎng)頁(yè)路徑:http://www.dlmjj.cn/article/dhdjoch.html