亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

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

嵩明县| 清镇市| 晋中市| 贵定县| 鹤峰县| 兴隆县| 乐山市| 高碑店市| 乌什县| 玉环县| 茂名市| 三穗县| 丹凤县| 大兴区| 亳州市| 蚌埠市| 含山县| 绥滨县| 洪洞县| 揭东县| 泾源县| 侯马市| 河津市| 祥云县| 邓州市| 浑源县| 泾源县| 东山县| 朝阳市| 岳普湖县| 托克逊县| 辽阳市| 称多县| 泰兴市| 柞水县| 贵德县| 会昌县| 河池市| 呼图壁县| 丰镇市| 徐州市|