千鋒教育-做有情懷、有良心、有品質的職業(yè)教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > 常用系統(tǒng)調用分類及總結

常用系統(tǒng)調用分類及總結

來源:千鋒教育
發(fā)布人:wjy
時間: 2022-12-27 17:10:39 1672132239

  一、進程控制

  fork 創(chuàng)建一個新進程 clone 按指定條件創(chuàng)建子進程 execve 運行可執(zhí)行文件 exit 中止進程 _exit 立即中止當前進程 getdtablesize 進程所能打開的最大文件數(shù) getpgid 獲取指定進程組標識號 setpgid 設置指定進程組標志號 getpgrp 獲取當前進程組標識號 setpgrp 設置當前進程組標志號 getpid 獲取進程標識號 getppid 獲取父進程標識號 getpriority 獲取調度優(yōu)先級 setpriority 設置調度優(yōu)先級 modify_ldt 讀寫進程的本地描述表 nanosleep 使進程睡眠指定的時間 nice 改變分時進程的優(yōu)先級 pause 掛起進程,等待信號 personality 設置進程運行域 prctl 對進程進行特定操作 ptrace 進程跟蹤 sched_get_priority_max 取得靜態(tài)優(yōu)先級的上限 sched_get_priority_min 取得靜態(tài)優(yōu)先級的下限 sched_getparam 取得進程的調度參數(shù) sched_getscheduler 取得指定進程的調度策略 sched_rr_get_interval 取得按RR算法調度的實時進程的時間片長度 sched_setparam 設置進程的調度參數(shù) sched_setscheduler 設置指定進程的調度策略和參數(shù) sched_yield 進程主動讓出處理器,并將自己等候調度隊列隊尾 vfork 創(chuàng)建一個子進程,以供執(zhí)行新程序,常與execve等同時使用 wait 等待子進程終止 wait3 參見wait waitpid 等待指定子進程終止 wait4 參見waitpid capget 獲取進程權限 capset 設置進程權限 getsid 獲取會晤標識號 setsid 設置會晤標識號

  二、文件系統(tǒng)控制

  1、文件讀寫操作

  fcntl 文件控制 open 打開文件 creat 創(chuàng)建新文件 close 關閉文件描述字 read 讀文件 write 寫文件 readv 從文件讀入數(shù)據(jù)到緩沖數(shù)組中 writev 將緩沖數(shù)組里的數(shù)據(jù)寫入文件 pread 對文件隨機讀 pwrite 對文件隨機寫 lseek 移動文件指針 _llseek 在64位地址空間里移動文件指針 dup 復制已打開的文件描述字 dup2 按指定條件復制文件描述字 flock 文件加/解鎖 poll I/O多路轉換 truncate 截斷文件 ftruncate 參見truncate umask 設置文件權限掩碼 fsync 把文件在內存中的部分寫回磁盤

  2、文件系統(tǒng)操作

  access 確定文件的可存取性 chdir 改變當前工作目錄 fchdir 參見chdir chmod 改變文件方式 fchmod 參見chmod chown 改變文件的屬主或用戶組 fchown 參見chown lchown 參見chown chroot 改變根目錄 stat 取文件狀態(tài)信息 lstat 參見stat fstat 參見stat statfs 取文件系統(tǒng)信息 fstatfs 參見statfs readdir 讀取目錄項 getdents 讀取目錄項 mkdir 創(chuàng)建目錄 mknod 創(chuàng)建索引節(jié)點 rmdir 刪除目錄 rename 文件改名 link 創(chuàng)建鏈接 symlink 創(chuàng)建符號鏈接 unlink 刪除鏈接 readlink 讀符號鏈接的值 mount 安裝文件系統(tǒng) umount 卸下文件系統(tǒng) ustat 取文件系統(tǒng)信息 utime 改變文件的訪問修改時間 utimes 參見utime quotactl 控制磁盤配額

常用系統(tǒng)調用分類及總結

  三、系統(tǒng)控制

  ioctl I/O總控制函數(shù) _sysctl 讀/寫系統(tǒng)參數(shù) acct 啟用或禁止進程記賬 getrlimit 獲取系統(tǒng)資源上限 setrlimit 設置系統(tǒng)資源上限 getrusage 獲取系統(tǒng)資源使用情況 uselib 選擇要使用的二進制函數(shù)庫 ioperm 設置端口I/O權限 iopl 改變進程I/O權限級別 outb 低級端口操作 reboot 重新啟動 swapon 打開交換文件和設備 swapoff 關閉交換文件和設備 bdflush 控制bdflush守護進程 sysfs 取核心支持的文件系統(tǒng)類型 sysinfo 取得系統(tǒng)信息 adjtimex 調整系統(tǒng)時鐘 alarm 設置進程的鬧鐘 getitimer 獲取計時器值 setitimer 設置計時器值 gettimeofday 取時間和時區(qū) settimeofday 設置時間和時區(qū) stime 設置系統(tǒng)日期和時間 time 取得系統(tǒng)時間 times 取進程運行時間 uname 獲取當前UNIX系統(tǒng)的名稱、版本和主機等信息 vhangup 掛起當前終端 nfsservctl 對NFS守護進程進行控制 vm86 進入模擬8086模式 create_module 創(chuàng)建可裝載的模塊項 delete_module 刪除可裝載的模塊項 init_module 初始化模塊 query_module 查詢模塊信息 *get_kernel_syms 取得核心符號,已被query_module代替

  四、存儲管理

  brk 改變數(shù)據(jù)段空間的分配 sbrk 參見brk mlock 內存頁面加鎖 munlock 內存頁面解鎖 mlockall 調用進程所有內存頁面加鎖 munlockall 調用進程所有內存頁面解鎖 mmap 映射虛擬內存頁 munmap 去除內存頁映射 mremap 重新映射虛擬內存地址 msync 將映射內存中的數(shù)據(jù)寫回磁盤 mprotect 設置內存映像保護 getpagesize 獲取頁面大小 sync 將內存緩沖區(qū)數(shù)據(jù)寫回硬盤 cacheflush 將指定緩沖區(qū)中的內容寫回磁盤

  五、網(wǎng)絡管理

  getdomainname 取域名 setdomainname 設置域名 gethostid 獲取主機標識號 sethostid 設置主機標識號 gethostname 獲取本主機名稱 sethostname 設置主機名稱

  六、socket控制

  socketcall socket系統(tǒng)調用 socket 建立socket bind 綁定socket到端口 connect 連接遠程主機 accept 響應socket連接請求 send 通過socket發(fā)送信息 sendto 發(fā)送UDP信息 sendmsg 參見send recv 通過socket接收信息 recvfrom 接收UDP信息 recvmsg 參見recv listen 監(jiān)聽socket端口 select 對多路同步I/O進行輪詢 shutdown 關閉socket上的連接 getsockname 取得本地socket名字 getpeername 獲取通信對方的socket名字 getsockopt 取端口設置 setsockopt 設置端口參數(shù) sendfile 在文件或端口間傳輸數(shù)據(jù) socketpair 創(chuàng)建一對已聯(lián)接的無名socket

  七、用戶管理

  getuid 獲取用戶標識號 setuid 設置用戶標志號 getgid 獲取組標識號 setgid 設置組標志號 getegid 獲取有效組標識號 setegid 設置有效組標識號 geteuid 獲取有效用戶標識號 seteuid 設置有效用戶標識號 setregid 分別設置真實和有效的的組標識號 setreuid 分別設置真實和有效的用戶標識號 getresgid 分別獲取真實的,有效的和保存過的組標識號 setresgid 分別設置真實的,有效的和保存過的組標識號 getresuid 分別獲取真實的,有效的和保存過的用戶標識號 setresuid 分別設置真實的,有效的和保存過的用戶標識號 setfsgid 設置文件系統(tǒng)檢查時使用的組標識號 setfsuid 設置文件系統(tǒng)檢查時使用的用戶標識號 getgroups 獲取后補組標志清單 setgroups 設置后補組標志清單

  八、進程間通信

  ipc 進程間通信總控制調用

  1、信號

  sigaction 設置對指定信號的處理方法 sigprocmask 根據(jù)參數(shù)對信號集中的信號執(zhí)行阻塞/解除阻塞等操作 sigpending 為指定的被阻塞信號設置隊列 sigsuspend 掛起進程等待特定信號 signal 參見signal kill 向進程或進程組發(fā)信號 *sigblock 向被阻塞信號掩碼中添加信號,已被sigprocmask代替 *siggetmask 取得現(xiàn)有阻塞信號掩碼,已被sigprocmask代替 *sigsetmask 用給定信號掩碼替換現(xiàn)有阻塞信號掩碼,已被sigprocmask代替 *sigmask 將給定的信號轉化為掩碼,已被sigprocmask代替 *sigpause 作用同sigsuspend,已被sigsuspend代替 sigvec 為兼容BSD而設的信號處理函數(shù),作用類似sigaction ssetmask ANSI C的信號處理函數(shù),作用類似sigaction

  2、消息

  msgctl 消息控制操作 msgget 獲取消息隊列 msgsnd 發(fā)消息 msgrcv 取消息

  3、管道

  pipe 創(chuàng)建管道

  4、信號量

  semctl 信號量控制 semget 獲取一組信號量 semop 信號量操作

  5、共享內存

  shmctl 控制共享內存 shmget 獲取共享內存 shmat 連接共享內存 shmdt 拆卸共享內存

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業(yè)內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT