青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

攀升·Uranus


Something Different,Something New
數(shù)據(jù)加載中……

dup與賦值語(yǔ)句用于文件描述符的區(qū)別(聚合)

    dup/dup2的使用請(qǐng)參考其他資料,個(gè)人只是想了解dup后文件描述符,進(jìn)程表項(xiàng),文件表的關(guān)系。

    進(jìn)程要對(duì)文件進(jìn)行操作,一般使用open調(diào)用打開一個(gè)文件進(jìn)行訪問(wèn),每個(gè)進(jìn)程都有一個(gè)文件描述符表,該表中存放打開的文件描述符。用戶使用open等調(diào)用得到的文件描述符其實(shí)是文件描述符在該表中的索引號(hào),該表項(xiàng)的內(nèi)容是一個(gè)指向文件表的指針。應(yīng)用程序只要使用該描述符就可以對(duì)指定文件進(jìn)行操作。
   
    為了了解dup與賦值語(yǔ)句用于文件描述符的區(qū)別,請(qǐng)看如下程序。

程序描述:

    打開一個(gè)文件描述符,分別適用dup和賦值語(yǔ)句進(jìn)行復(fù)制,復(fù)制之后,打印原始和被復(fù)制的文件描述符id,看看是否具有相同的值,然后關(guān)閉文件,測(cè)試關(guān)閉是否成功。

程序示例:

#include <stdio.h>

#include <stdlib.h>

#include <fcntl.h>

#include <unistd.h>

 

int sys_err(char *str)

{

    puts(str);

    exit(0);

}

 

int main(void)

{

    int p,q;

 

    if((p=open("c_fid.c", O_RDONLY)) == -1)

        sys_err("open error");

    q = dup(p);

    puts("dup:");

    printf("file p,q fd is:%d %d\n", q, p);

    printf("close file p ok?: %d\n", close(p));

    printf("close file q ok?: %d\n", close(q));

 

    if((p=open("c_fid.c", O_RDONLY)) == -1)

        sys_err("open error");

    q = p;

    puts("=:");

    printf("file p,q fd is:%d %d\n", q, p);

    printf("close file p ok?: %d\n", close(p));

    printf("close file q ok?: %d\n", close(q));

 

    return 0;

}

 

程序運(yùn)行結(jié)果:

dup:

file p,q fd is:4 3   //文件p,q使用不同的文件描述符

close file p ok?: 0

close file q ok?: 0 //文件關(guān)閉成功

=:

file p,q fd is:3 3 //簡(jiǎn)單復(fù)制

close file p ok?: 0

close file q ok?: -1//關(guān)閉失敗,原因是此描述符已經(jīng)被關(guān)閉了

 

    由此證明,dup是產(chǎn)生一個(gè)新的文件描述符id和指針在進(jìn)程表項(xiàng)中,但是他們共用文件表,這時(shí),關(guān)閉一個(gè)文件描述符,另外一個(gè)仍舊可用,文件表并不會(huì)被釋放。而賦值語(yǔ)句不同,它只是簡(jiǎn)單的在另外一個(gè)變量中記錄原始文件指針等,2個(gè)變量的文件描述符相同,進(jìn)程表項(xiàng)中并不產(chǎn)生新的項(xiàng)目。

關(guān)于socket的文件描述符

    socket接口增加了網(wǎng)絡(luò)通信操作的抽象定義,與文件操作一樣,每個(gè)打開的socket都對(duì)應(yīng)一個(gè)整數(shù),我們稱它為socket描述符,該整數(shù)也是socket描述符在文件描述符表中的索引值。但socket描述符在描述符表中的表項(xiàng)并不指向文件表,而是指向一個(gè)與該socket有關(guān)的數(shù)據(jù)結(jié)構(gòu)。BSD UNIX中新增加了一個(gè)socket調(diào)用,應(yīng)用程序可以調(diào)用它來(lái)新建一個(gè)socket描述符,注意進(jìn)程用open只能產(chǎn)生文件描述符,而不能產(chǎn)生socket描述符。socket調(diào)用只能完成建立通信的部分工作,一旦建立了一個(gè)socket,應(yīng)用程序可以使用其他特定的調(diào)用來(lái)為它添加其他詳細(xì)信息,以完成建立通信的過(guò)程。

posted on 2009-12-22 10:10 攀升 閱讀(907) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Linux

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品99久久久久久久vr| 国产欧美日本| 久久九九精品| 欧美日精品一区视频| 久久深夜福利免费观看| 国产精品久久九九| 亚洲精品国产精品国产自| 在线观看亚洲a| 欧美在线观看www| 欧美在线观看视频一区二区三区| 欧美精品一区二| 亚洲国产精品久久人人爱蜜臀| 激情文学一区| 久久er精品视频| 欧美资源在线| 国产午夜精品理论片a级探花| 一区二区激情视频| 亚洲午夜av电影| 国产精品白丝av嫩草影院| 亚洲精品免费看| 一本一本久久a久久精品综合麻豆| 久久躁日日躁aaaaxxxx| 免费成人高清视频| 亚洲成人在线视频网站| 久热精品视频在线| 亚洲电影免费观看高清完整版在线| 黄色成人在线网站| 久久久之久亚州精品露出| 久久青草欧美一区二区三区| 国产一区二区三区观看| 久久se精品一区二区| 久久久在线视频| 在线看一区二区| 免费欧美在线视频| 最近看过的日韩成人| 亚洲视频一起| 国产精品伦一区| 久久av一区二区三区漫画| 免费人成精品欧美精品| 亚洲国产日韩精品| 欧美久久婷婷综合色| 最新国产乱人伦偷精品免费网站 | 亚洲第一搞黄网站| 久久精品视频免费播放| 欧美国产三区| 日韩一级视频免费观看在线| 欧美亚州一区二区三区 | 久久久久国产免费免费| 欧美激情第一页xxx| 999在线观看精品免费不卡网站| 欧美日韩精品不卡| 亚洲欧美日韩电影| 久久久亚洲人| 亚洲看片免费| 国产精品欧美久久| 久久久青草婷婷精品综合日韩| 欧美黄色免费| 亚洲欧美综合v| 亚洲电影免费在线观看| 欧美劲爆第一页| 午夜日韩电影| 亚洲国产黄色片| 欧美在线高清| 一本色道久久综合亚洲精品不 | 欧美色中文字幕| 久久久国产91| aa国产精品| 欧美国产日本韩| 欧美中文在线字幕| 99精品久久久| 一区在线观看视频| 国产精品欧美经典| 欧美经典一区二区三区| 翔田千里一区二区| 亚洲美女精品一区| 久久天天躁狠狠躁夜夜av| 一区二区三区成人| 亚洲国产精品成人综合色在线婷婷| 欧美涩涩视频| 欧美国产精品| 久久久久久久国产| 亚洲欧美电影院| 亚洲靠逼com| 欧美二区在线观看| 久久人人爽人人爽爽久久| 亚洲一区视频在线| 99视频在线精品国自产拍免费观看| 国产综合网站| 国产精品稀缺呦系列在线| 欧美母乳在线| 美腿丝袜亚洲色图| 久久精品最新地址| 亚洲欧美资源在线| 亚洲网站在线播放| 亚洲精品影院| 亚洲人成在线影院| 亚洲国产一成人久久精品| 卡通动漫国产精品| 久久久久国产精品www| 欧美一二区视频| 亚洲综合社区| 午夜久久99| 欧美一区二区三区视频在线观看| 亚洲视频欧洲视频| 亚洲天堂激情| 一本大道久久精品懂色aⅴ| 亚洲欧洲三级| 亚洲精品一区二区三区蜜桃久| 亚洲高清资源| 最新成人av在线| 亚洲狼人综合| 在线综合亚洲欧美在线视频| 夜夜嗨av一区二区三区网页| 9i看片成人免费高清| 在线视频精品| 午夜欧美不卡精品aaaaa| 午夜国产不卡在线观看视频| 欧美一区二区视频观看视频| 欧美一区三区三区高中清蜜桃| 久久aⅴ国产紧身牛仔裤| 欧美一区二区三区免费在线看| 欧美呦呦网站| 久久这里只有| 亚洲欧洲在线看| 一区二区久久久久久| 亚洲欧美综合国产精品一区| 久久蜜桃精品| 欧美精品在欧美一区二区少妇| 欧美午夜精品久久久久久久 | 久久久久99| 欧美jizz19性欧美| 亚洲美女精品久久| 新片速递亚洲合集欧美合集 | 久久久久久电影| 欧美成人激情视频| 国产精品久久一级| 国内精品视频一区| 日韩网站在线观看| 久久国产天堂福利天堂| 亚洲缚视频在线观看| 在线亚洲欧美| 久久青草久久| 欧美视频免费在线观看| 激情欧美一区二区| 亚洲一二三四区| 久久亚洲影音av资源网| 亚洲日本中文字幕免费在线不卡| 亚洲综合精品四区| 欧美成年人视频网站欧美| 国产精品盗摄久久久| 永久91嫩草亚洲精品人人| 亚洲视频在线观看网站| 麻豆91精品| 亚洲网址在线| 欧美极品在线观看| 国产在线欧美| 亚洲一区视频在线| 亚洲电影视频在线| 久久精品视频免费播放| 欧美视频不卡中文| 亚洲日本va午夜在线影院| 亚洲欧美中文另类| 亚洲欧洲一区| 美女任你摸久久| 国产亚洲va综合人人澡精品| 一个人看的www久久| 欧美成人免费在线| 午夜激情综合网| 欧美丝袜一区二区| 最新成人av网站| 免费在线国产精品| 午夜精品视频网站| 国产精品久久久久久久久久久久久 | 欧美网站在线| 99国内精品久久| 欧美黑人一区二区三区| 久久精品系列| 国产一区二区在线观看免费| 午夜一区在线| 一区二区三区毛片| 欧美久久视频| 亚洲精选国产| 亚洲经典三级| 欧美va亚洲va国产综合| 亚洲国产精品福利| 另类尿喷潮videofree| 欧美一区网站| 国内精品视频在线播放| 久久精品最新地址| 久久狠狠久久综合桃花| 国产午夜精品全部视频在线播放| 午夜精品久久久久久久男人的天堂 | 羞羞色国产精品| 亚洲夜晚福利在线观看| 国产精品久久一卡二卡| 午夜影视日本亚洲欧洲精品| 亚洲午夜一二三区视频| 国产欧美精品在线播放| 久久国产88| 久久久久久久综合色一本|