zoukankan      html  css  js  c++  java
  • CPU中断的机制概论

       cpu的数学模型是图灵机,图灵机是一个线性运行指令的机器,它的执行序列是完全确定的,中断机制是使得cpu具有异步处理能力的机制,就是先暂停他的序列  来执行一些其他指令。具体来说就是,从硬件实现上,其他硬件可以给cpu发电信号,cpu收到这个信号就暂停当前的指令,去执行中断函数。cpu上不是有许多针吗,其中一个就是用来收中断信号的。再具体来说,内核启动的时候会配置一个中断向量表,一个硬件关联一个整数,也就是数组下标,比如,键盘关联5,键盘给cpu发中断,cpu就会收到5号中断,就会去执行函数指针数组中的第五个函数。

       在单cpu单核时代,为什么能实现多线程在微观上切换,宏观上并行呢,cpu是一条单行线,我的进程正在执行,它是怎么切换到其他进程执行的呢?这是因为主板或者cpu内部有一个硬件叫timer定时器,关联32号中断,它每秒发送一百次中断,cpu就去执行32号中断函数,然后选择一个进程去执行。

  • 相关阅读:
    用户态切换到内核态的3种方式
    vim_action
    import date
    __sizeof__()
    classmethod staticmethod
    Java对对象的引用 不是 引用调用 而是按值引用 Java不存在引用调用
    多线程同步
    Does Hadoop require SSH?
    hdfs namenode出错
    软件项目的一致性语义描述
  • 原文地址:https://www.cnblogs.com/yang75n/p/9023043.html
Copyright © 2011-2022 走看看