使用者控制項應用程式通過swi軟中斷指令進入核心空間實現系統呼叫,我們也可以重新編譯核心實現自己設計的的系統的呼叫,以ok6410開發板為例,實現乙個簡單的列印資訊的功能:
1、開啟ok6410核心源**的目錄,因為實現的是列印資訊的功能,所以將這個函式實現到printk.c中去,找到kernel資料夾,進入找到並開啟printk.c,找個適當的位置編寫系統呼叫的函式體 如下:
void sys_pk()
編寫應用程式如下:
void pk()
void main()
因為沒有在根檔案系統建立動態鏈結庫,所以用靜態鏈結庫編譯 arm-linux-gcc -static syscall.c -o syscall,編譯好了之後通過nfs檔案系統傳至開發板,執行。
列印出 this is a new sys call!
linux下C程式設計呼叫自己定義編寫的函式
乙個簡單的例子展現linux下c程式設計呼叫自己定義的函式,使用的是ubuntu14.04作業系統 1 首先使用sudo su命令進入root許可權 2 然後建立乙個test資料夾,並在資料夾下面新建add.c add.h main.c這三個檔案 root ubuntu mkdir test roo...
linux自己編寫的 cp 命令
實現功能 cp filename othername 檔案到檔案的拷貝 cp directory filename 檔案到當前目錄的拷貝 cp directory filename directory 檔案到目錄的拷貝 include include include include include ...
學習筆記九 linux中編寫系統呼叫函式
寫著這篇部落格前,本人也算是成功地完成了在linux4 16到linux 5.0的核心編譯,大致過程還是有經驗的。這裡也算是將編譯新核心的內容重新來一遍。虛擬機器內完成,雙系統的興許會有不同。首先要不嫌麻煩地安裝幾個軟體,不知道是不是必須的,但不會出錯。sudo apt get install li...