如果是linux,叫内核栈,当你的内核栈配置成4K的时候,当中断发生时,会有专门的irq栈;
如果配置成8K,则irq用当前进程人内核栈。
每一个应用程序自已的运行时,需要一个栈,这个栈是用来存放你的局部变量的;
而操作系统有一个重要任务就是:任务管理和调度,也就是说你一个应用程序运行时,操作系统也会给你
分配一块资源,这块资源不是给你应用程序里面的代码使用的,而是为了管理你,它管理你,也需要
内存,也需要局部变量,当然,这些管理代码就内核代码的一部分,那它也需要栈,这个栈就是内核栈;
中断会不可预知的到来,当中断到来时,它的处理代码也需要栈,就是上面我所说。
想单方面搞清楚这些问题是不可能,必须要深入学习一下操作系统原理,并看相应的源码。