【计算机操作系统】-什么是系统调用呢?什么是用户态?什么是内核态?
发布日期:2021-06-29 15:36:29 浏览次数:2 分类:技术文章

本文共 471 字,大约阅读时间需要 1 分钟。

在介绍系统调用之前,先来了解一下用户态和内核态;

在介绍系统调用之前,先来了解一下用户态和内核态;
根据进程访问资源的特点,可以把进程在系统上的运行分为两个级别:

  • 用户态:用户态运行的进程可以直接读取用户程序的数据;
  • 内核态:可以理解为在内核态运行的进程或程序几乎可以访问计算机的任何资源,不受限制。

说了用户态和内核态之后,那么什么是系统调用呢?

我们运行的程序基本都是运行在用户态,如果我们调用操作系统提供的内核态的子功能咋办呢,这就需要系统调用了。

也就是说我们运行的用户程序中,凡是与系统态级别的资源有关的操作(如文件管理、进程控制、内存管理等),都必须通过系统调用方式向操作系统提出请求,并由操作系统代为完成。

这些系统调用功能大致可分为如下几类:

  • 设备管理。完成设备的请求或释放,以及设备启动等功能;
  • 文件管理。完成文件的读、写、创建以及删除等功能;
  • 进程控制。完成进程的创建、撤销、阻塞以及唤醒等功能;
  • 进程通信。完成进程之间的消息传递或信号传递等功能;
  • 内存管理。完成内存的分配、回收以及获取作业占用内存区大小以及地址等功能。

转载地址:https://codingchaozhang.blog.csdn.net/article/details/116722220 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:【计算机操作系统】死锁产生的必要条件是什么?死锁的解决策略是什么?
下一篇:【Java设计者模式】-Java实现订阅-发布者模式

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年04月03日 18时44分29秒