LDD学习笔记 -- 用户空间 & 内核空间

LDD学习笔记 -- 用户空间 & 内核空间

操作系统上下文中User spaceKernel space概念

  • 用户空间:Restricted Mode,用户级编程
  • 内核空间:Privileged Mode,内核级代码(linux kernel, subsystems, LKMs)
  • 通过系统调用实现两空间之间的交互,以促进对硬件和系统功能的安全、可控访问。

内核空间

指操作系统内存的一部分,内核(操作系统的核心)在此驻留并执行;
代码运行在内核空间,CPU不受限模式。内核代码可以不受限制的访问系统资源,包括内存、硬件外设、处理器指令、控制设置;
内核空间包含关键部分:Linux调度器、设备驱动、和操作系统各个子系统相关的代码;

用户空间

用户及应用程序执行的内存空间,在用户空间,CPU以受限模式运行;
空户空间代码不能直接访问硬件或关键系统资源,他们在一个受控的独立环境中运行;
用户空间应用包括日常软件,网页浏览器、文本编辑器、媒体播放器、任何与用户交互的程序;

用户空间和内核空间交互

用户空间应用通过系统调用访问内核管理的资源;
系统调用处理程序(System call handlers),内核空间的一部分,负责执行系统调用;
允许用户程序在保持系统安全性和完整性的前提下请求服务,使用内存,与硬件交互;

相关推荐

  1. LDD学习笔记 -- 用户空间 & 内核空间

    2024-01-03 10:50:03       65 阅读
  2. 驱动开发-用户空间内核空间数据传输

    2024-01-03 10:50:03       34 阅读
  3. 深入学习Linux内核 - 进程地址空间

    2024-01-03 10:50:03       32 阅读
  4. linux内核网络分析 用户空间工具 “每日读书”

    2024-01-03 10:50:03       42 阅读
  5. 【讯为Linux驱动开发】3.内核空间用户空间

    2024-01-03 10:50:03       26 阅读
  6. linux内核网络源码-用户空间内核的接口

    2024-01-03 10:50:03       44 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-03 10:50:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-03 10:50:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-03 10:50:03       82 阅读
  4. Python语言-面向对象

    2024-01-03 10:50:03       91 阅读

热门阅读

  1. 微信小程序 wx.request二次封装

    2024-01-03 10:50:03       65 阅读
  2. 卸载云服务器上的 MySQL 数据库

    2024-01-03 10:50:03       53 阅读
  3. C++ 拷贝构造函数

    2024-01-03 10:50:03       56 阅读
  4. User mkcert 生成本地证书的步骤

    2024-01-03 10:50:03       64 阅读
  5. k8s安装hostPath方式存储的PostgreSQL15

    2024-01-03 10:50:03       58 阅读
  6. 2023.12.30力扣每日一题——一周中的第几天

    2024-01-03 10:50:03       64 阅读
  7. 牙科废水处理设备详细介绍

    2024-01-03 10:50:03       61 阅读