91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

unix環境編程學習-chapter 3 IO讀寫操作

發布時間:2020-07-01 00:33:06 來源:網絡 閱讀:310 作者:圖形初學者 欄目:系統運維

原子操作pread,pwirte

#include <unistd.h>

ssize_t pread(int fd, void *buf, size_t nbytes, off_t offset);//返回值:讀到的字節數,若已到文件結尾則返回0,若出錯返回-1

ssize_t pwrite(int fd,const void *buf ,size_t nbytes, off_t offset);//返回值:若成功返回已寫的字節數,若出錯返因-1

pread,pwirte,相當于順序調用lseek和read或write,但調用pread,pwrite時無法中斷其定位和讀寫操作,并且不能更新文件指針。

od -c file:查看file的實際內容

文件共享:

 文件描述符:每個進程在進程表中都有一個記錄項每個記錄項中有一張打開的文件描述符表(所以才有必要復制文件描述符),每個文件描述符表項關聯:(a)文件描述符標志。(b)指向一個文件表項的指針。

 文件表:內核為所有打開的文件維護一張文件表,每個文件表項包含:(a)文件狀態標志(讀、寫、增寫、同步、非阻塞等)。(b)當前文件的偏移量。(c)指向該文件v節點表項的指針。

    v節點:每個打開的文件(或設備)都有一個v節點結構。包含了文件類型和對此文件進行各種操作的函數的指針信息。對于大多數文件,v節點還包含了該文件的i節點(索引節點)。這些信息是在打開文件時從盤上讀入內存的,所以所有關于文件的信息都是快速可供使用的。例如,i節點包含了文件的所有者、文件長度、文件所在的設備、指向文件在盤上所使用的實際數據塊的指針等等。

fcntl函數可以改變已經打開文件的性質。

   int fcntl(int filedes, int cmd ,....);

cmd:

 F_DUPFD 復制一個現存的文件描述符。

 F_GETFD or F_SETFD 獲得/設置文件描述符標志

 F_GETFL or F_SETFL 獲得/設置文件狀態標志 即open函數中mode的幾種狀態

 F_GETOWN or F_SETOWN 獲得/設置異步I/0權限

 F_GETLK,F_SETLK or F_SETLKW 獲得/設置記錄鎖


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永州市| 洪泽县| 夏河县| 鹤山市| 共和县| 金川县| 金华市| 涟源市| 余姚市| 灵武市| 静海县| 阿拉善左旗| 确山县| 新宾| 湘潭市| 木里| 兰西县| 日照市| 太白县| 中超| 双辽市| 灌南县| 常山县| 静安区| 浙江省| 武夷山市| 虞城县| 西华县| 德清县| 甘肃省| 寿阳县| 合作市| 苍溪县| 马关县| 洪泽县| 阳曲县| 梧州市| 扎赉特旗| 榆林市| 东丰县| 安岳县|