• 2024-07-01内存管理-0-开篇
    一、什么是内存管理1.基础内存管理可以大致分为5块(1)物理内存管理node、zone、page、buddy-system、slab(2)虚拟内存管理虚拟内存分用户空间和内核空间,用户空间又分为很多段(代码段、数据段、栈、堆、mmap映射区、动态共享库等等);内核空间也是分为很多区域的,比如低端内存
  • 2024-06-20学习笔记:计算机内存管理
    虚拟内存    单片机是没有操作系统的,所以每次写完代码,都需要借助工具把程序烧录进去,这样程序才能跑起来。        单片机的CPU是直接操作内存的「物理地址」。        在这种情况下,要想在内存中同时运行两个程序是不可能的。如果第一个程序在20
  • 2024-05-26Linux线程:线程的概念及定义
    目录一、线程的概念1.1什么是线程 1.2Linux中线程和进程的关系1.3页表的结构及实现二、线程的创建及使用2.1pthread_t一、线程的概念1.1什么是线程1、在一个程序里的一个执行路线就叫做线程(thread)。更准确的定义是:线程是“一个进程内部的控制序列”。2、一切
  • 2024-05-07MMU内存管理
    MMU内存管理目录MMU内存管理1.MMU简述2.MMU的功能3.内存分段与分页3.1内存分段3.1.1分段的不足3.2内存分页3.2.1分页的优势3.2.2分页的映射3.2.3多级页表参考1.MMU简述MMU(MemoryManagementUnit,内存管理单元)是一种硬件模块,用于在CPU和内存之间实现虚拟内存管理。它的主要功能
  • 2024-05-07MMU相关介绍
    什么是MMUMMU即内存管理单元(MemoryManageUnit),是一个与软件密切相关的硬件部件,也是理解linux等操作系统内核机制的最困难的知识点之一。1)概述研究MMU无法绕过的一个东西就是分页内存管理机制,也就是研究——页表。页表内存放的就是虚拟地址到物理地址的转换关系,也就是虚拟地址
  • 2024-05-07知识扩展--- MMU 将虚拟地址转换为物理地址
    MMU(内存管理单元)如何将虚拟地址转换为物理地址什么是MMU?MMU是“MemoryManagementUnit”的缩写,中文名是内存管理单元。MMU是现代计算机操作系统中的一个重要组成部分,其主要功能是将虚拟地址转换为物理地址。通过MMU,可以实现虚拟内存管理、内存保护、内存共享等功能,从而提高系
  • 2024-05-07MMU(内存管理单元)
    内存管理单元(MMU)MMU的概念MMU是一种硬件设备,也称为内存管理单元,它位于计算机系统的中央处理器(CPU)和内存之间,负责处理中央处理器(CPU)的内存访问请求,将实现对虚拟地址到物理地址的转换(即虚拟内存管理)、内存保护、中央处理器高速缓存的控制,而在较为简单的计算机体系结构中,则负责总线
  • 2024-05-07MMU内存管理单元
    V1.02024年5月7日发布于博客园目录MMU概述MMU关闭时MMU打开时MMU页表段大页小页极小页为什么要有MMU?MMU的关键功能:MMU在C语言编程中的应用:MMU在ARM系统中参考资料MMU概述MMU即内存管理单元(英语:memorymanagementunit,缩写为MMU),有时称作分页内存管理单元(英语:pagedmemorym
  • 2024-05-07信息的表示和处理——信息存储
    本文参考B站up主九曲阑干的系列视频【【CSAPP-深入理解计算机系统】2-1.信息的存储(上)】https://www.bilibili.com/video/BV1tV411U7N3/?share_source=copy_web&vd_source=73f97624c2b3ff1eb41ea26fb86c72ee信息存储计算机一般使用字节作为最小的可寻址的内存单位通常情
  • 2024-04-25物理地址和虚拟地址的概念
    目录虚拟地址和物理地址的概念cpu如何访问内存:为什么要用地址映射:物理地址和虚拟地址的概念虚拟地址和物理地址的概念cpu如何访问内存:当CPU需要执行特定的指令或访问特定的数据时,它会将相应的地址放在地址总线上。地址总线上的地址信号传递到内存,指示内存中的特定存储位置。
  • 2024-04-06虚拟内存知识详解
    虚拟内存单片机的CPU是直接操作内存的「物理地址」在这种情况下,要想在内存中同时运行两个程序是不可能的操作系统是如何解决这个问题呢?关键的问题是这两个程序都引用了绝对物理地址,而这正是我们最需要避免的。可以把进程所使用的地址「隔离」开来,即让操作系统为每
  • 2024-03-30在Linux中,什么是虚拟内存?它是如何工作的?
    虚拟内存是一种内存管理技术,它允许操作系统使用硬盘空间来模拟额外的内存资源。虚拟内存的工作原理涉及以下几个关键概念:地址空间:每个进程拥有自己的虚拟地址空间,这个空间对于进程来说是一致的和私有的。虚拟地址空间的大小通常远大于物理内存的大小。分页机制:操作系统将物理
  • 2024-03-29每个程序员都应该了解的内存知识(三): 虚拟内存
    虚拟内存概念wiki解释它使得应用程序认为它拥有连续可用的内存(一个连续完整的地址空间),而实际上物理内存通常被分隔成多个内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。阅读链接虚拟内存篇(原文地址)详解内存映射(做的图非常好,一定要重点看一看)MM
  • 2024-03-29Lec3 Lec4: 虚拟内存和RISC-V寄存器
    虚拟内存使用虚拟内存主要为了实现隔离内存隔离,所有程序指令存放在一个物理内存上,如果一个指令的操作位刚好是另一个指令的地址,那么会造成指令的丢失为了解决这个问题使用地址空间地址空间为每一个指令程序分配自己的地址空间,每个指令程序只能在自己的地址空间上操作。我们需
  • 2024-03-23地址映射
    MMU的相关概念可参考:https://www.cnblogs.com/lethe1203/p/18064515Linux驱动开发在某些情况也会直接操作寄存器 MMU主要完成的功能:1、完成虚拟空间到物理空间的映射2、内存保护,设置存储器的访问权限,设置虚拟存储空间的缓冲特性对于32位的处理器来说,虚拟地址范围为:2^32=4
  • 2024-02-04虚拟化中的虚拟地址与物理地址的映射——EPT机制
    虚拟化中的虚拟地址与物理地址的映射——EPT机制​ 当secondaryprocessor-basedVM-executioncontrol字段“enableEPT”为1时,启用EPT(ExtendedPageTable,扩展页表)机制​ 开启EPT机制后VMM需要建立EPT页表结构,通过在EPTP(ExtendePageTablePointer)中
  • 2024-01-25xv6book阅读 chapter3
    页表是硬件提供进程间隔离的方法之一,并通过它来实现虚拟地址和物理地址之间的转换,通过页表可以决定进程能够访问物理内存的哪些部分,xv6提供了一些小技巧,比如在不同的地址空间中可以映射相同的trampolinepage,trampoline是用来辅助用户模式进入内核模式的,所以它可被共用。1分页硬
  • 2024-01-12异构计算关键技术之内存管理与DMA(一)
    异构计算关键技术之内存管理与DMA(一)诞生伊始,计算机处理能力就处于高速发展中。及至最近十年,随着大数据、区块链、AI等新技术的持续火爆,人们为提升计算处理速度更是发展了多种不同的技术思路。大数据受惠于分布式集群技术,区块链带来了专用处理器(Application-SpecificIC,ASIC)的春
  • 2024-01-12linux之页表详解(千字详解)
    linux之页表详解页表的详解在进程地址空间与物理内存之间,就是通过页表来进行映射关联的!==而页表的功能也不仅仅是简简单单的映射!如下图!==例如:是否命中,进程关于这个内存的读写权限,是用户的还是内核的!等等这样子我们就能理解char*str="helloworld";*str='H';这个
  • 2023-12-05性能测试必备基础知识(二)
    1.CPU使用率除了空闲时间外的其他时间占总CPU时间的百分比,就是CPU使用率,即1-空闲时间/CPU总时间。当计算CPU使用率时,我们通常使用/proc/stat文件中的数据。该文件提供了有关CPU的计数器信息,包括各种状态下的节拍数。通过cat  /proc/stat命令就可详细查看其信
  • 2023-11-262023-2024 20231404高伟光《计算机基础与程序设计》第九周学习总结
    作业信息作业内容我的班级我的班级作业要求第八周要求作业目标操作系统责任,内存与进程管理,分时系统,CPU调度,文件、文件系统,文件保护,磁盘调度作业正文此博客教材内容总结c语言程序设计第八章介绍了数组的一系列用法定义,介绍了经典的排序和查找算法,比
  • 2023-11-24对 .NET程序2G虚拟地址紧张崩溃 的最后一次反思
    一:背景1.讲故事最近接连遇到了几起2G虚拟地址紧张导致的程序崩溃,基本上90%都集中在医疗行业,真的很无语,他们用的都是一些上古的XP,Windows7x86,我也知道技术人很难也基本无法推动硬件系统和设备的升级,这里蕴含了巨大的人情世故。写这一篇的目的是想系统化的整理一下如何配
  • 2023-11-22Linux存储管理概述
    一、Linux存储管理是操作系统中负责管理和分配系统内存储资源的重要功能。它主要负责以下几个方面的工作:1. 物理存储资源的分配和回收:操作系统需要将物理存储资源分配给各个进程,同时负责进程内存的回收。2. 虚拟存储器的实现:虚拟存储器是操作系统中的一种抽象概念,它将磁盘空间映射
  • 2023-11-21程序地址空间详解(6千字长文)
    程序地址空间C/C++地址空间!在先认识程序地址空间前我们要先认识一下C/C++的地址空间!这就是C/C++的地址空间的结构!不过这个地址空间究竟是什么?——是内存吗?==答案是错误的!这个地址空间其实不是内存!==我们可以看一下intmain(){pid_tid=fork();if(id<0)
  • 2023-11-12一个操作系统的设计与实现——第8章 内存管理系统
    计算机上的任何程序,包括操作系统自己,都需要使用内存。因此,操作系统需要实现内存管理系统,以进行内存的分配和回收。在我们的操作系统中,内存管理系统由两部分组成:页分配器与页回收器。本章将实现这两个部分。8.1从虚拟地址到物理地址回顾CPU对内存地址的转换过程:使用段寄存器