我想在不使用OS系统调用的情况下访问我的系统资源,如CPU。 有没有办法让这成为可能?
答案 0 :(得分:2)
直接在大多数现代操作系统(包括Linux和Windows)上访问硬件的唯一方法是通过内核代码。 Linux Device Drivers是在Linux上编写此类代码的绝佳起点,即使它有点过时了。
否则,操作系统提供各种I / O功能,并使用系统调用接口控制用户应用程序的资源分配。系统调用接口在所有操作系统的基本概念中无所不在,实际上在内核和用户代码之间存在某种分离。使用软件中断是在当前硬件上实现系统调用的标准方法。
您需要系统调用来分配最轻微的内存,甚至可以读取或写入单个字符。更不用说即使一个绝对没有的程序通常只需加载一些系统调用。
如果您使用DOS或exokernel设计,则可以更直接地访问硬件。
但为什么你还想这样做吗?直接使用现代硬件远非微不足道。