【发布时间】:2016-08-09 11:56:06
【问题描述】:
类似于系统调用在int 0x80 上的工作方式,是否可以在内核中实现我自己的ISR,以便在softirq 上假设int 0x120 或任何其他softirq 程序计数器可以从用户空间 到内核空间?
以特权模式进入内核是否仅与int 0x80 相关联,或者与任何softirq 实现相关联,我可以自动进入特权模式或禁用保护模式并进入特权模式,我们必须通过编写其关联标志手动执行?
还有一件事,如果可以实现这种类型的 ISR,数据交换的最佳方式是使用寄存器 EBX、ECX、EDX、ESI、EDI 和 EBP 还是任何其他方式仍然存在?
我已经看到How to define and trigger my own new softirq in linux kernel?,但没有得到我想要的解决方案。
我会说得更清楚,为什么我需要这个
我已经实现了一些直接与硬件外围设备对话的内核函数,我希望它们使用软件中断从用户空间触发。无法使用具有可用驱动程序架构的系统调用,因为我需要减少执行时间。
【问题讨论】:
-
是的,我的意思是环 0,已编辑。谢谢
-
在 Linux 中进入内核模式最简单的方法是编写自己的驱动程序。
-
只是这不是我的要求,我一直在寻找如何使用来自用户空间的新软中断进入内核模式
-
请解释您的问题,而不是您认为的实现。
标签: c linux-kernel embedded-linux system-calls softirq