Linux環(huán)境高級(jí)編程

Linux環(huán)境高級(jí)編程

open 函數(shù)

   #include <sys/types.h>
   #include <sys/stat.h>
   #include <fcntl.h>

   int open(const char *pathname, int flags);
   int open(const char *pathname, int flags, mode_t mode);

   int creat(const char *pathname, mode_t mode);

write

   #include <unistd.h>

   ssize_t write(int fd, const void *buf, size_t count);

read
#include <unistd.h>

   ssize_t read(int fd, void *buf, size_t count);

ssize_t 有符號(hào)類型,(typedef定義)

查看最大打開文件個(gè)數(shù)的限制(ulimit -a)

ulimit -a

ulimit -n 4096 (設(shè)置)

core file size  (blocks, -c) 0
data seg size   (kbytes, -d) unlimited
scheduling priority (-e) 0
file size   (blocks, -f) unlimited
pending signals (-i) 7976
max locked memory   (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files  (-n) 65536
pipe size(512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority  (-r) 0
stack size  (kbytes, -s) 8192
cpu time   (seconds, -t) unlimited
max user processes  (-u) 7976
virtual memory  (kbytes, -v) unlimited
file locks  (-x) unlimited

查看當(dāng)前系統(tǒng)允許最大文件個(gè)數(shù)cat /proc/sys/fs/file-max

文件描述符

STDIN_FILENO 0
STDOUT_FILENO 1

error 頭文件 errno的值

/usr/include/asm-generic/errno-base.h
/usr/include/asm-generic/errno.h

#define EPERM        1  /* Operation not permitted */
#define ENOENT       2  /* No such file or directory */
#define ESRCH        3  /* No such process */
#define EINTR        4  /* Interrupted system call */
#define EIO      5  /* I/O error */
#define ENXIO        6  /* No such device or address */
#define E2BIG        7  /* Argument list too long */
#define ENOEXEC      8  /* Exec format error */
#define EBADF        9  /* Bad file number */
#define ECHILD      10  /* No child processes */
#define EAGAIN      11  /* Try again */
#define ENOMEM      12  /* Out of memory */
#define EACCES      13  /* Permission denied */
#define EFAULT      14  /* Bad address */
#define ENOTBLK     15  /* Block device required */
#define EBUSY       16  /* Device or resource busy */
#define EEXIST      17  /* File exists */
#define EXDEV       18  /* Cross-device link */
#define ENODEV      19  /* No such device */
#define ENOTDIR     20  /* Not a directory */
#define EISDIR      21  /* Is a directory */
#define EINVAL      22  /* Invalid argument */
#define ENFILE      23  /* File table overflow */
#define EMFILE      24  /* Too many open files */
#define ENOTTY      25  /* Not a typewriter */
#define ETXTBSY     26  /* Text file busy */
#define EFBIG       27  /* File too large */
#define ENOSPC      28  /* No space left on device */
#define ESPIPE      29  /* Illegal seek */
#define EROFS       30  /* Read-only file system */
#define EMLINK      31  /* Too many links */
#define EPIPE       32  /* Broken pipe */
#define EDOM        33  /* Math argument out of domain of func */
#define ERANGE      34  /* Math result not representable */

報(bào)錯(cuò)的時(shí)候把錯(cuò)誤碼寫入errno传趾,strerror(errno)可以得到錯(cuò)誤的解釋永脓,perror()也可以得到錯(cuò)誤的解釋

   #include <string.h>

   char *strerror(int errnum);

   #include <stdio.h>

   void perror(const char *s);

lseek

   lseek - reposition read/write file offset

   #include <sys/types.h>
   #include <unistd.h>
   off_t lseek(int fd, off_t offset, int whence);
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子造寝,更是在濱河造成了極大的恐慌磕洪,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,657評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诫龙,死亡現(xiàn)場(chǎng)離奇詭異析显,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)签赃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門谷异,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人锦聊,你說(shuō)我怎么就攤上這事歹嘹。” “怎么了孔庭?”我有些...
    開封第一講書人閱讀 164,057評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵尺上,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我圆到,道長(zhǎng)怎抛,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,509評(píng)論 1 293
  • 正文 為了忘掉前任构资,我火速辦了婚禮抽诉,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘吐绵。我一直安慰自己迹淌,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,562評(píng)論 6 392
  • 文/花漫 我一把揭開白布己单。 她就那樣靜靜地躺著唉窃,像睡著了一般。 火紅的嫁衣襯著肌膚如雪纹笼。 梳的紋絲不亂的頭發(fā)上纹份,一...
    開封第一講書人閱讀 51,443評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音廷痘,去河邊找鬼蔓涧。 笑死,一個(gè)胖子當(dāng)著我的面吹牛笋额,可吹牛的內(nèi)容都是我干的元暴。 我是一名探鬼主播,決...
    沈念sama閱讀 40,251評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼兄猩,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼茉盏!你這毒婦竟也來(lái)了鉴未?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,129評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤鸠姨,失蹤者是張志新(化名)和其女友劉穎铜秆,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體讶迁,經(jīng)...
    沈念sama閱讀 45,561評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡连茧,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,779評(píng)論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了添瓷。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片梅屉。...
    茶點(diǎn)故事閱讀 39,902評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡值纱,死狀恐怖鳞贷,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情虐唠,我是刑警寧澤搀愧,帶...
    沈念sama閱讀 35,621評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站疆偿,受9級(jí)特大地震影響咱筛,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜杆故,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,220評(píng)論 3 328
  • 文/蒙蒙 一迅箩、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧仔蝌,春花似錦版保、人聲如沸距糖。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至家肯,卻和暖如春龄砰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背讨衣。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工换棚, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人反镇。 一個(gè)月前我還...
    沈念sama閱讀 48,025評(píng)論 2 370
  • 正文 我出身青樓固蚤,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親愿险。 傳聞我的和親對(duì)象是個(gè)殘疾皇子颇蜡,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,843評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容