增加系統呼叫

2021-07-27 16:24:46 字數 896 閱讀 3898

增加系統呼叫socket2

1. 增加系統呼叫號

在source/net/socket.c增加syscall_define3(socket2....)

syscall_define3(socket2, int,family,int,type, int, protocol)

2.source/arch/x86/syscalls/syscall_64.tbl

在系統呼叫表中增加:

系統呼叫號,common,名稱,函式入口

一般64位將增加的系統呼叫號加在314~511之間

320           common

socket2

sys_socket2

3.source/include/linux/syscalls.h

增加函式asmlinkage long sys_***(...);

asmlinkage long sys_socket2(int family, int type, int protocol);

4.source/inlcude/uapi/asm-generic/unistd.h

//added by oliver

#define __nr_socket2 275

__syscall(__nr_socket2, sys_socket2)

//end

使用者程式實現系統呼叫例項

#include

#include

#include

#include

#include

int main(){

...int retval = syscall(__nr_socket2,af_inet, sock_stream,ipproto_tcp);

...return 0;

增加系統呼叫

增加系統呼叫 在實際程式設計中,尤其是當我們需要增加或完善系統功能的時候,我們經常會用到系統呼叫函式。系統呼叫函式通常由使用者程序在使用者態下呼叫,核心通過system call 函式響應系統呼叫產生的軟中斷,在正確訪問核心棧 系統呼叫開關表之後陷入到作業系統核心中進行處理。系統呼叫是使用者程序由使...

增加系統呼叫

1 修改sys.c 命令 sudo gedit usr src linux 2.6.38.8 kernel sys.c 新增如下內容 include asmlinkage long sys rt read unsigned int ipointnr,64 time,struct data packa...

Linux增加系統呼叫

本次實驗以linux 2.6.35版本的unbutu系統為基礎,在核心上增加乙個helloworld程式的系統呼叫。一 重新安裝配置核心 linux增加系統呼叫 本次實驗以linux 2.6.35版本的unbutu系統為基礎,在核心上增加乙個helloworld程式的系統呼叫。一 重新安裝配置核心 ...