日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux内核打开prntk,操作系统实验一向Linux内核增加一个系统调用.docx

發布時間:2025/4/16 linux 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux内核打开prntk,操作系统实验一向Linux内核增加一个系统调用.docx 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

操作系統實驗一:

向Linux內核增加一個系統調用

xx 711103xx

2012年3月18日

一、實驗目的

通過實驗,熟悉Linux操作系統的使用,掌握構建與啟動Linux內核的方法;掌握用 戶程序如何利用系統調用與操作系統內核實現通信的方法,加深對系統調用機制的理解;進 一步掌握如何向操作系統內核增加新的系統調用的方法,以擴展操作系統的功能。

二、實驗內容

Linux環境下的C或C++編譯和調試工具的使用

向Linux內核增加新的系統調用,系統調用名稱和功能自行定義

Linux新內核的編譯、安裝和配置

編寫應用程序以測試新的系統調用并輸出測試結果

三、實驗步驟

1、安裝Vi rtua I Box-4. 0. 8并在虛擬機上安裝ubuntul 1. 10o (電腦上本有ubuntul 1.10 64位系統,但在編譯內核完成后發現參考教程為32位系統,因64位系統與32位系統增加 系統調用步驟差別較大,身為初學者的我選擇安裝虛擬機,并重新編譯……)

2、安裝編譯源環境 sudo ap t-ge t inst a I I bu i ld-esse nti al、sudo ap t-ge t inst a I I gcc> sudo apt-get instaI I g++

編寫一個c++或c程序,并使用gcc -o xxx或g++ -o xxx進行編譯并運行。

3、用 sudo apt-get update 更新軟件源,并用 apt-get i nsta I I I i nux-source 命令 下載適合自己的內核。(當使用過老版本內核時,采用默認的內核配置make oldconf ig時, 將會造成錯誤,自己也因此重做一遍)。

4、增加系統調用:

第一步:解壓文件

cp I inux-source-3. 0. 0. tar. bz2 /usr/src 拷貝至/usr/src 目錄

tar xvf I inux-source-3. 0. 0. tar. bz2解壓文件

第二步:修改源程序,增加系統調用實現

# gedit /usr/src/ I inux-source-3.0.0 /kernel/sys. c asm I inkage int sys_mycaI I(int number)

pr irrtk("hel Io, my new kernel, xw~! n); return number;

第三步:修改頭文件,增加系統調用聲名

#gedit/usr/src/linux-source-3. 0. 0/arch/x86/kernel/syscall_tabIe_32. S

將223行.long sys_ni_sysca I I改為.long sys_myca I I (不要放在其他地方,否側可 能出現錯誤)

第四步:修改系統調用表,注冊系統調用。

#ged it /usr/src/ Ii nux-source-3. 0. 0/arch/x86/i ncIude/asm/un i std_32. h 增加一行,對應上面的223

第一步:make 第二步:make 第三步:第四步:第五步:make

第一步:make 第二步:make 第三步:

第四步:

第五步:

make

make

make

mrproper清除內核中不穩定的目標文件,附屬文件及內核配置文件 clean清除以前生成的目標文件和其他文件

o I dconf i g采用默認的內核配置

bzImage編譯內核

modules編譯模塊

終端

cc

[M]

fs/afs/vlcltent.o

cc

[MJ

fs/afs/vlocation.o

cc

[M]

fs/afs/vnode.o

cc

[M]

fs/afs/volume.o

cc

[M]

fs/afs/write.o

LD

[MJ

fs/afs/kafs.o

CC

[M]

fs/autofs4/tntt.o

CC

[M]

fs/autofs4/inode.o

CC

[M]

fs/autofs4/root.o

cc

[M]

fs/autofs4/symlink.o

cc

[M]

fs/autofs4/wattq.o

cc

[M]

fs/autofs4/expire.o

cc

[M]

fs/autofs4/dev-xoctl.o

LD

[M]

fs/autofs4/autofs4.o

CC

[M]

fs/befs/datastream.o

CC

[M]

fs/befs/btree?o

cc

[M]

fs/befs/super.o

cc

[M]

fs/befs/inode.o

cc

[M]

fs/befs/debug.o

cc

[M]

fs/befs/io.o

cc

[M]

fs/befs/linux

總結

以上是生活随笔為你收集整理的linux内核打开prntk,操作系统实验一向Linux内核增加一个系统调用.docx的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。