系統呼叫ftruncate可以將乙個檔案裁剪為指定的大小,函式描述如下:
函式使用:
#include
#include
#include
#include
#include
#include
#define trun "./test_truncate"
intmain()
//通過檔案描述符對檔案大小進行裁剪if(
ftruncate
(fd,
4096)!=
-1)//直接設定指定路徑的檔案大小if(
truncate
(trun,
8192)!=
-1)//通過fstat獲取檔案屬性資訊
struct stat buf;
fstat
(fd,
&buf)
;printf
("stat.size is %ld \n"
,buf.st_size)
;printf
("stat.inode is %ld \n"
,buf.st_ino)
;printf
("stat.mode is %lo(octal) \n",(
unsigned
long
)buf.st_mode)
;printf
("stat.bytes is %ld \n"
,buf.st_blksize)
;close
(fd)
;return0;
}
linux 系統呼叫
使用者應用可以通過兩種方式使用系統呼叫。第一種方式是通過c庫函式,包括系統呼叫在c庫中的封裝函式和其他普通函式。圖5.2 使用系統呼叫的兩種方式 第二種方式是使用 syscall巨集。2.6.18版本之前的核心,在include asm i386 unistd.h檔案中定義有7個 syscall巨集...
Linux系統呼叫
一 實驗目的和要求 1.學習linux核心的配置和編譯 2.深入理解linux系統呼叫 3.理解arm和x86的cpu模式 系統模式 使用者模式 的不同 4.掌握核心模組的編寫方法。二 實驗器材 1.linux實驗板卡一塊 2.5v 1a電源乙個 3.microusb線一根 4.macos一台 5....
Linux系統呼叫
linux系統呼叫 系統呼叫 system call 是使用者空間訪問核心的唯一手段,除異常和陷入外,他們是核心唯一的合法入口。通常情況下應用程式是通過應用程式設計介面api來訪問函式,而不是直接使用系統呼叫來程式設計。作業系統通常是通過中斷從使用者態切換到核心態。中斷就是乙個硬體或軟體請求,要求c...