没有合适的资源?快使用搜索试试~ 我知道了~
服务层查找系统调用中是否有PM_CHRT,若有则调用映射表中其对应的do_chrt函数do_chrt函数调用sys_chrt,sys_chrt函数调用应用层层次
资源详情
资源评论
资源推荐
chrt 系统调用过程:
每个层次函数功能:
内核层
查找映射表中是否有SYS_CHRT,若有则调用其
对应的do_chrt函数
do_chrt函数找到内核中进程地址,并修改进
程内容。
服务层
查找系统调用中是否有PM_CHRT,若有则调
用映射表中其对应的do_chrt函数
do_chrt函数调用sys_chrt,sys_chrt函数调用
_kernel_call(SYS_CHRT,&m)
应用层
chrt函数调用_syscall(PM_PROC_NR,PM_CHRT,&m),通过m消息结构体进行IPC通信,传递
deadline
层次
应用层
服务层
内核层
该层完
成的功
能
用户调用 chrt 系统
调用,将 deadline
传入到服务层
注册 chrt 服务,将
deadline 传入到内核层
修改内核信息
函数说
明
chrt 函数。设置
alarm,记录进程终
止时间赋值给
deadline,并将
deadline 通过
_syscall 传到服务
层。
do_chrt 函数(修改一下,
参照 proto 文件函数命名
格式)。调用
sys_chrt(who_p,消息结
构体)。
sys_chrt 函数。将进程号
和 deadline 放入消息结
构体,通过_kernel_call
传递到内核层
do_chrt 函数。参考
do_fork,用消息结
构体中的进程号,通
过 proc_addr 定位内
核中进程地址,然后
将消息结构体中的
deadline 赋值给该进
程的 p_deadline(这
里已经在 proc 头文
件中添加了该成员变
量)。
参数含
义
_syscall(PM_PROC_N
R, PM_CHRT, &m)
进程号,调用的服
务,消息结构体(将
deadline 放入)
who_p 是传递进程号,消
息结构体传递 deadline
内容。
_kernel_call(SYS_CHRT,
&m)
内核调用,消息结构体
利用全局搜索查看
proc_addr 含义(善于
利用),该函数可确定
进程在内核中地址。
点墨楼
- 粉丝: 32
- 资源: 279
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0