首页 > 系统相关 >###什么是Linux内核###什么是MMU

###什么是Linux内核###什么是MMU

时间:2024-05-07 21:23:15浏览次数:14  
标签:MMU 内存 Linux 进程 CPU ### 内核

什么是Linux内核

Linux 内核简介

Linux® 内核是 Linux 操作系统(OS)的主要组件,也是计算机硬件与其进程之间的核心接口。它负责两者之间的通信,还要尽可能高效地管理资源。

之所以称为内核,是因为在操作系统中就像果实硬壳中的种子一样,控制着硬件(无论是电话、笔记本电脑、服务器,还是任何其他类型的计算机)的所有主要功能。

内核在操作系统中的位置

为了更具象地理解内核,不妨将 Linux计算机想象成有三层结构

  1. 硬件:物理机(这是系统的底层结构或基础)是由内存(RAM)、处理器(或 CPU)以及输入/输出(I/O)设备(例如存储、网络和图形组成的。其中,CPU 负责执行计算和内存的读写操作。
  2. Linux 内核:操作系统的核心。(没错,内核正处于核心的位置)它是驻留在内存中的软件,用于告诉 CPU 要执行哪些操作。
  3. 用户进程:这些是内核所管理的运行程序。用户进程共同构成了用户空间。用户进程有时也简称为进程。内核还允许这些进程和服务器彼此进行通信(称为进程间通信或 IPC)。

系统执行的代码通过以下两种模式之一在 CPU 上运行:内核模式或用户模式。在内核模式下运行的代码可以不受限制地访问硬件,而用户模式则会限制 SCI 对 CPU 和内存的访问。内存也存在类似的分隔情况(内核空间和用户空间)。这两个小细节构成了一些复杂操作的基础,例如安全防护构建容器虚拟机的权限分隔。

这也意味着:如果进程在用户模式下失败,则损失有限,无伤大雅,可以由内核进行修复。另一方面,由于内核进程要访问内存和处理器,因此内核进程的崩溃可能会引起整个系统的崩溃。由于用户进程之间会有适当的保护措施和权限要求,因此一个进程的崩溃通常不会引起太多问题。
此外,由于 Linux 内核可以在实时修补期间持续工作,因此在应用补丁进行安全修复时不会出现停机。

什么是MMU

MMU全称是Memory Management Unit,中文名为内存管理单元,有时也称作分页内存管理单元(paged memory management unit,缩写为PMMU)。它是一种负责处理中央处理器(CPU)的内存访问请求的计算机硬件。它的功能包括虚拟地址到物理地址的转换(即虚拟内存管理)、内存保护、中央处理器高速缓存的控制等。

咱来一道软考题巩固一下:
image
image
可以通过这个分页变化来判断我们修改的应用的活跃度。

MMU有什么作用

地址转换:MMU(内存管理单元)将程序的虚拟地址转换成真实的物理地址,确保CPU准确访问内存。

内存保护:MMU通过权限和保护机制防止程序越界访问,确保系统数据安全。

虚拟内存管理:MMU支持虚拟内存,通过硬盘等辅助存储设备扩展内存空间,提升系统性能和灵活性。

内存映射:MMU将外设地址映射到CPU地址空间,简化CPU与外设的数据交换。

性能提升:MMU的地址转换和虚拟内存管理减少了对RAM的依赖,降低内存碎片和交换频率,提升系统整体性能。
image

标签:MMU,内存,Linux,进程,CPU,###,内核
From: https://www.cnblogs.com/zcx0326/p/18178415

相关文章

  • 2024ICPC武汉邀请赛-G.Pack-数论分块、整除运算相关的不等式
    link:https://codeforces.com/gym/105143Groupcontests:https://codeforces.com/group/DWEH34LQgT/contest/521901题意:有\(n\)件\(A\)物品,\(m\)件\(B\)物品,两种物品价值分别是\(a,b\),若干件\(A\)和若干件\(B\)可以打包成一个商品,打包尽可能多的商品的情况下让剩余的......
  • CF1767C
    我们先讨论,对序列\(A=a_{ij}a_{i+1j}...a_{j-1j}a_{jj}\)来说什么是合法情况:不难发现当\(i==j\)时,\(a_{ij}=0\)与\(a_{ij}=1\)情况相同,而\(a_{ij}=2\)的情况不存在,此时\(a_{ij}=2\)就是不合法的情况。再来想象下这样一种情况:\(a_{kj}=0(k<j)\)这里有两个问题:k......
  • 最近眼高手低的现象非常严重
    最近眼高手低的现象非常严重,一个题总是“我口胡出来了”或者“我觉得这个题很巧妙”,然后就止步于此了,这是不好的,不正常的状态,23年或者22年有几段时间我很有卷题热情,但是现在没有了,不想写代码。总是不去落实,不愿意花时间,不愿意耗精力,于是就失败了,就被单调队列了被后来居上了,被各种......
  • 知识扩展--FAT32 与 NTFS 的区别
    FAT32与NTFS的区别什么是FAT32?概述:FAT32是Windows系统硬盘分区格式的一种。这种格式采用32位的文件分配表(FileAllocationtable),使其对磁盘的管理能力大大增强,突破了FAT16对每一个分区的容量只有2GB的限制。由于现在的硬盘生产成本下降,其容量越来越大,运用FAT32的分区格式......
  • CF704B Ant Man
    CF704BAntMan插入型dp分析排列的权值,如果排列确定,那么每个位置都有自己的贡献,并且无关其他位置的贡献。考虑dp。从小到大将\(p_i\)插入序列中,此时序列会分成若干段,可设\(f_{i,j}\)插入了\(1\cdotsi\),序列分成\(j\)段的权值和。转移通常有四种。插入到一段的左边,......
  • 页面嵌套,界面套娃,除了用iframe,还有其他方式吗?
    ​ UIOTOS可以了解下,uiotos.net,通过连线来代替脚本逻辑开发,复杂的交互界面,通过页面嵌套轻松解决,是个很新颖的思路,前端零代码!蓝图连线尤其是独创的页面嵌套和属性继承技术,好家伙相当于把vue的组件化、增量式面向对象开发,直接搬到前端拖拽工具上,无代码编程了。总的来说,这上面的......
  • SwiftUI ZStack、HStack、VStack 布局
    代码////ContentView.swift//SwiftUIStacks////CreatedbyCHENHaoon2024/5/6.//importSwiftUIstructContentView:View{varbody:someView{VStack(spacing:15){HeaderView()HStack(spacing:15){......
  • MMU内存管理单元
      内存管理单元(MemoryManagementUnit,MMU)是计算机中的一个重要组件,负责处理CPU对内存的访问请求。MMU主要有以下几个功能:地址转换:MMU负责将逻辑地址(由CPU生成的地址)转换为物理地址(实际存储在内存中的地址)。这种地址转换是通过页表或段表等数据结构来实现的。内存保护:MM......
  • 基本的Dos命令
    打开CMD的方式1.开始+系统+命令提示符Windows建中找到Windows系统中的命令提示符2.Win建+R输入CMD打开控制台(推荐使用)3.在任意文件夹下面,按住shift建+鼠标右键点击,在此打开执行命令窗口4.资源管理器的地址栏前面加上cmd路径(cmd后有空格)管理员身份运行:选择以管理员方......
  • python——入门
    操作系统操作系统就是一个特殊的软件作用有两个,第一个:直接操作硬件;第二个:把操作硬件的代码封装成一个又一个的系统调用python的特点python是完全面向对象的语言函数,模块,数字,字符串都是对象,在python中一切皆对象完全支持继承,重载,多重继承支持重载运算符,也支持泛型设计......