系统调用中的软件中断

时间:2012-07-11 12:33:26

标签: linux-kernel arm interrupt system-calls

在fork系统中调用,

swi#0

使用了

指令,它到底是做什么的?

谢谢。

1 个答案:

答案 0 :(得分:1)

如果你在“swi arm指令”上谷歌,那么第一个例子是:...

SWI:软件中断

SWI 这是一个简单的设施,但可能是最常用的设施。许多操作系统设施由SWI提供。没有SWI就不可能想象RISC OS。 Nava Whiteford解释了SWI如何工作(最初在Frobnicate问题12½)......

在本文中,我将尝试深入研究SWI(SoftWare Interrupts)的工作。 什么是SWI?

SWI代表软件中断。在RISC OS中,SWI用于访问由第三方生成的操作系统例程或模块。许多应用程序使用模块为其他应用程序提供低级别外部访问。 SWI的例子是:

Filer SWI,可帮助读取光盘,设置属性等。 打印机驱动程序SWI,用于帮助使用并行端口进行打印。 SWIs FreeNet / Acorn TCP / IP堆栈SWI用于使用TCP / IP协议传输和接收数据,通常用于通过Internet发送数据。 当以这种方式使用时,SWI允许操作系统具有模块化结构,这意味着创建完整操作系统所需的代码可以分成许多小部件(模块)和模块处理程序。

当SWI处理程序获取特定例程编号的请求时,它会找到例程的位置并执行它,传递任何数据。