设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
注册
快捷导航
平台
Portal
论坛
BBS
文库
项目
群组
Group
我的博客
Space
搜索
搜索
热搜:
shell
linux
mysql
本版
用户
LinuxSir.cn,穿越时空的Linuxsir!
»
论坛
›
编程开发讨论区 —— LinuxSir.cn
›
内核与驱动开发
›
do_signal参数的疑问
返回列表
查看:
1204
|
回复:
1
do_signal参数的疑问
[复制链接]
nhjidle
nhjidle
当前离线
积分
39
IP卡
狗仔卡
发表于 2006-2-23 09:42:16
|
显示全部楼层
|
阅读模式
在中断返回的代码中,会判断如果当前进程有signal要处理,就会进入do_signal,
call SYMBOL_NAME(do_signal)
但是现在目前的系统堆栈中最上面应该是一个reg的结构,然后是do_signal的返回地址,
那么do_signal的参数是怎么传的呢? 按理说应该是reg的最先两个寄存器 ebx,ecx才对啊,没发现在哪里设置了????
谢谢
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
camelguo
camelguo
当前离线
积分
33
IP卡
狗仔卡
发表于 2006-3-3 21:32:14
|
显示全部楼层
do_signal的参数依平台的不同而不同,当do_signal只要需要知道引起信号时CPU寄存器的状态信息,即即系统调用进入内核时所保存的调用者保存寄存器caller saved registers。它一般封装在pt_regs数据结构中。同时,do_signal还需要知道当前的中断处理是否是软中断(即系统调用),而此信息有的可以在pt_regs中找到,有的不能,所以在有些体系结构中,do_signal还需要一个参数syscall,来指明当前是否在系统调用中。
^_^
camelguo@gmail.com
http://camelguo1978.blogcn.com
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
Copyright © 2002-2023
LinuxSir.cn
(http://www.linuxsir.cn/) 版权所有 All Rights Reserved.
Powered by
RedflagLinux!
技术支持:
中科红旗
|
京ICP备19024520号
快速回复
返回顶部
返回列表