系统调用可以中断吗?

有意义的工程师

请评论以下句子:

在没有rt补丁的标准Linux内核上,中断不能中断正在进行的系统调用。从硬盘中提取数据时,我们的机器无法停止工作的原因是,我们用于该操作的系统调用处于阻塞状态。阻塞表示一旦将请求发送到硬盘,它就会将进程状态更改为“阻塞”,并自愿放弃处理器时间。无法中断非实时内核上正在进行的系统调用。

这是我对主题的理解,但是我不确定它是否正确。

你好

系统调用可以通过使用信号来中断,例如SIGINT(由CTRL+生成CSIGHUP等。您只能通过通过PID与系统调用进行交互来中断它们,但是在使用Unix信号和kill命令时。

rt_patch和系统调用

@Alan问了以下后续问题:

中断系统调用的可能性是否与主线Linux内核中rt_patch的接受直接相关?

我的回复:

我会这样认为。在研究此问题时,我找不到能说/不能做的吸烟枪,这使我相信可以。

使我想到这一点的另一个数据点是,Unix内置的底层信号机制对于能够与进程进行交互是必不可少的。我不知道没有这些补丁的系统在没有信号使用能力的情况下如何运作

顺便说一下,信号在过程级别上运行。我知道没有任何方法/ API可直接将中断注入系统调用。

参考

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

被信号中断后可以读取系统调用体验短计数吗?

来自分类Dev

病毒可以中断dll函数调用吗

来自分类Dev

SIGALRM中断系统调用

来自分类Dev

什么是中断的系统调用?

来自分类Dev

软件中断VS系统调用

来自分类Dev

我可以在Ruby中显示系统调用日志吗?

来自分类Dev

您可以从OSX终端执行系统调用吗?

来自分类Dev

我可以在android中使用Linux系统调用吗?

来自分类Dev

我可以将nullptr用作Linux系统调用参数吗?

来自分类Dev

一个库调用可以调用多个系统调用吗?

来自分类Dev

为什么“新”系统调用比“中断”系统调用更快?

来自分类Dev

RabbitMQ Java API:我想使用 basicGet() 进行 RPC 调用。可以做屏蔽吗?可以中断吗?

来自分类Dev

x86程序集中断服务例程可以调用另一个中断吗?

来自分类Dev

防止IOError:[Errno 4]中断系统调用

来自分类Dev

bash:echo:写错误:系统调用中断

来自分类Dev

捕获信号时中断系统调用

来自分类Dev

C-正常中断msgrcv系统调用

来自分类Dev

Arduino 中断函数可以调用另一个函数吗?

来自分类Dev

我可以使用 openmp 或 pthreads 调用不同线程的相同系统调用吗

来自分类Dev

可以暂停系统时间吗?

来自分类Dev

您可以使用私有API来挂接iOS中的系统函数调用吗?

来自分类Dev

我可以不使用fork来执行Shell或系统调用吗?

来自分类Dev

我可以不使用fork来执行Shell或系统调用吗?

来自分类Dev

MinGW可以毫不费力地复制大多数Unix系统调用吗?

来自分类Dev

用户可以在终端中调用哪些中断

来自分类Dev

用户可以在终端中调用哪些中断

来自分类Dev

可以在标准C中处理中断吗?

来自分类Dev

可以不“加入”中断的线程吗?

来自分类Dev

可以中断Memtest86 +吗?

Related 相关文章

  1. 1

    被信号中断后可以读取系统调用体验短计数吗?

  2. 2

    病毒可以中断dll函数调用吗

  3. 3

    SIGALRM中断系统调用

  4. 4

    什么是中断的系统调用?

  5. 5

    软件中断VS系统调用

  6. 6

    我可以在Ruby中显示系统调用日志吗?

  7. 7

    您可以从OSX终端执行系统调用吗?

  8. 8

    我可以在android中使用Linux系统调用吗?

  9. 9

    我可以将nullptr用作Linux系统调用参数吗?

  10. 10

    一个库调用可以调用多个系统调用吗?

  11. 11

    为什么“新”系统调用比“中断”系统调用更快?

  12. 12

    RabbitMQ Java API:我想使用 basicGet() 进行 RPC 调用。可以做屏蔽吗?可以中断吗?

  13. 13

    x86程序集中断服务例程可以调用另一个中断吗?

  14. 14

    防止IOError:[Errno 4]中断系统调用

  15. 15

    bash:echo:写错误:系统调用中断

  16. 16

    捕获信号时中断系统调用

  17. 17

    C-正常中断msgrcv系统调用

  18. 18

    Arduino 中断函数可以调用另一个函数吗?

  19. 19

    我可以使用 openmp 或 pthreads 调用不同线程的相同系统调用吗

  20. 20

    可以暂停系统时间吗?

  21. 21

    您可以使用私有API来挂接iOS中的系统函数调用吗?

  22. 22

    我可以不使用fork来执行Shell或系统调用吗?

  23. 23

    我可以不使用fork来执行Shell或系统调用吗?

  24. 24

    MinGW可以毫不费力地复制大多数Unix系统调用吗?

  25. 25

    用户可以在终端中调用哪些中断

  26. 26

    用户可以在终端中调用哪些中断

  27. 27

    可以在标准C中处理中断吗?

  28. 28

    可以不“加入”中断的线程吗?

  29. 29

    可以中断Memtest86 +吗?

热门标签

归档