我正在实施一个程序,以便尽可能经常在用户空间中运行。所以我试图尽可能少地调用进入和离开内核空间的函数。例如,我使用了一些读/写但绕过内核的DMA API。
我不知道如何告诉函数是否需要输入内核空间。例如,我想调用getenv()
来获取主机设置的环境变量,但担心它可能会通过我的程序并进入内核空间。我无法从手册页中找到这种信息。以下是getenv()
的手册页。
答案 0 :(得分:4)
您是否通过strace运行程序?这将让您知道进入内核空间的系统调用的位置
答案 1 :(得分:0)
我认为大多数IO功能都会导致程序进入内核? 也许您应该检查您使用的系统API