📄 readme.txt
字号:
1. porting guide
修改env.make中的CROSS_COMPILE和KERNEL_PATH。
修改kernel目录下Makefile中的CFLAGS与你内核的编译选项相同。
2. 编译
在ksh目录下执行make kernel
3. 结果
kernel目录下生成一个ksh.o
4. 如何使用
a.将ksh.o insmod到linux系统中,假定其IP为192.168.1.157
【该模块加载是需要系统的符号表,缺省使用/proc/ksyms文件
可强制指定符号表文件,强制方法: insmod ksh.o sym="/proc/your_syms"】
b.运行ksh目录下的ksh.exe,例如ksh 192.168.1.157
【注意:要在dos窗口中运行, 可以先双击ksh目录下的my.cmd打开一个DOS窗口】
c.退出ksh, CTRL+c.
5.命令使用示例
Z:\ksh>ksh 192.168.1.152
connect ok
ksh>
ksh>help
COMMAND PARA_NR HELP
--------------------------------------------------
help: 0 print this msg
d: 2 display memory, usage:d addr,[len]
p: 2 print value of var, usage:p var_name,[width]
r: 5 run a func arg1, arg2...arg4
s: 3 set value of var,usage:s var_name,[width],value
f: 3 fill a block of memory with value, usage: f addr,length,value
/*显示内存内容*/
ksh>d 0xd0990ef4
addr = 0xd0990ef4, length = 128
0xd0990ef4: 83 ec 14 ff 74 24 24 ff - 74 24 24 ff 74 24 24 ff
0xd0990f04: 74 24 24 68 f4 11 99 d0 - 68 d4 16 99 d0 e8 9a 07
0xd0990f14: 79 ef 83 c4 2c c3 89 f6 - 55 57 56 53 81 ec dc 01
0xd0990f24: 00 00 31 c0 fc b9 40 00 - 00 00 8d bc 24 d0 00 00
0xd0990f34: 00 f3 ab a1 30 13 99 d0 - 89 84 24 c0 00 00 00 66
0xd0990f44: a1 34 13 99 d0 66 89 84 - 24 c4 00 00 00 ff 05 20
0xd0990f54: 5b 99 d0 b8 00 e0 ff ff - 21 e0 8b 50 0c 89 54 24
0xd0990f64: 08 c7 40 0c ff ff ff ff - 8b 15 90 1f 99 d0 8b 42
/*读一个变量的值*/
ksh>p gIsQoSEnabled
gIsQoSEnabled @ 0x941e1c18
gIsQoSEnabled = 1 = 0x00000001
/*设置变量的值*/
ksh>s gIsQoSEnabled 0
gIsQoSEnabled @ 0x941e1c18
set gIsQoSEnabled ok, width 4
ksh>p gIsQoSEnabled
gIsQoSEnabled @ 0x941e1c18
gIsQoSEnabled = 0 = 0x00000000
/*运行一个内核函数, 例如动态申请内存*/
ksh>r kmalloc 128 0x1f0
kmalloc @ 0x940521e4
func res = -1803979968 = 0x94797340 /*kmalloc返回值*/
ksh>d 0x94797340
addr = 0x94797340, length = 128
0x94797340: 00 00 00 70 b4 00 00 00 - b4 00 00 00 b4 00 00 00
0x94797350: 18 00 00 00 18 00 00 00 - 04 00 00 00 04 00 00 00
0x94797360: 01 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00
0x94797370: 80 52 00 00 80 52 00 00 - 05 00 00 00 00 10 00 00
0x94797380: 01 00 00 00 80 52 00 00 - 80 52 04 00 80 52 04 00
0x94797390: d4 00 00 00 00 01 00 00 - 06 00 00 00 00 10 00 00
0x947973a0: 02 00 00 00 cc 00 00 00 - cc 00 00 00 cc 00 00 00
0x947973b0: ad 08 00 00 ad 08 00 00 - 07 00 00 00 04 00 00 00
/*填充kmalloc分配的内存*/
ksh>f 0x94797340 128 0xfe
fill addr@94797340, length[128], value[0xfe]
ksh>d 0x94797340
addr = 0x94797340, length = 128
0x94797340: fe fe fe fe fe fe fe fe - fe fe fe fe fe fe fe fe
0x94797350: fe fe fe fe fe fe fe fe - fe fe fe fe fe fe fe fe
0x94797360: fe fe fe fe fe fe fe fe - fe fe fe fe fe fe fe fe
0x94797370: fe fe fe fe fe fe fe fe - fe fe fe fe fe fe fe fe
0x94797380: fe fe fe fe fe fe fe fe - fe fe fe fe fe fe fe fe
0x94797390: fe fe fe fe fe fe fe fe - fe fe fe fe fe fe fe fe
0x947973a0: fe fe fe fe fe fe fe fe - fe fe fe fe fe fe fe fe
0x947973b0: fe fe fe fe fe fe fe fe - fe fe fe fe fe fe fe fe
Z:\ksh>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -