谁发送SIGALRM信号?

时间:2017-04-23 06:47:23

标签: c linux timer operating-system

我不明白计时器功能(例如NodeJS中的setTimeOut)是如何工作的。经过一番搜索,似乎最终与Linux的alarm()函数有关(也许是Windows的CreateWaitableTimer)。这个功能的描述是:

  

安排在几秒钟内将SIGALRM信号传递给调用进程

我的问题是:

  1. 这个SIGALRM似乎是进程级别而不是线程级别。是吗 真的与计时器功能有关吗?
  2. SIGALRM将由谁交付?
  3. 我的猜测可能有两种方式。一个是当CPU调度进程检查时,如果OK,则发送SIGALRM。其中两种是知道时间并发送SIGALRM的硬件。

    以上所有描述都可能不正确,因为我对低级编程或OS /硬件知识知之甚少。所以请告诉我答案以及我弄错的任何其他事情。

0 个答案:

没有答案