如何理解操作系统与安装(运行)在操作系统上的软件的关系

如果将操作系统理解为一个安装在电脑上管理cpu等硬件的大型软件,那么安装(运行)在操作系统上的软件,是在操作系统的帮助下直接更改硬件状态,还是更改大软件(操作系统)的状态之后,间接对硬件进行操作?

阅读 3.4k
2 个回答

我觉得是第二种。
跟硬件相关的操作,通常是操作系统内核才有权限进行的,应用程序不能直接操作硬件。

以读磁盘文件为例:

  1. 应用程序进程发起read系统调用。

  2. CPU进入内核态,执行相应的内核代码,进行读操作。

  3. 操作完成后,返回用户态,继续执行后面的代码。

个人浅见,如有错误请指正。

操作系统最早就是设计出来用于管理硬件的软件,它封装了很多接口。比如我们熟知的POSIX。这是操作系统的扩展机功能。
操作系统的另一个功能就是资源管理,对软硬件的资源分配。扯的有点远。
我也觉得是第二种。
跟硬件相关的操作,只有管态才可以执行。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题