我正在使用 A13 处理器的 Linux(A13-OLinuXino-MICRO) 上用 c 编写一个简单的代码。如果这很重要,我正在使用 gcc 编译器。假设我有一个简单的循环,它只是从 1 数到 100,我希望在这个循环中有尽可能少的中断。我认为我能做的最好的事情就是禁用中断(如果可能的话甚至是定时器中断)并在循环后启用它。我的程序中有多个地方需要强制执行此操作。任何人都可以帮助我提供一个简单的 C 代码来保护循环免受中断......我可以在我的平台上编译和运行的代码吗?
编辑:内核线程可能是一个答案。我怎样才能以内核特权运行某些东西?我看到人们谈论 disable_local_interrupt() 但我不知道如何使用它。
编辑:这是我要解决的实际问题。我需要在无中断环境中运行我的应用程序。
编辑:是的,我确信 Linux 是我需要使用的,我知道中断对操作系统很重要,这就是为什么我不想永远禁用它们。当我运行它时,我只想在操作系统上强制执行几分之一秒的无中断。另外,没有我需要解决的主要问题,这就是我需要解决的“问题”,所以不要再问我为什么要这样做了。
最佳答案
用户空间不能禁用或启用中断。
关于c - 如何在 Linux 中的 C 程序中禁用中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41859005/