E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
虚拟地址
C++基础--- new/delete的使用
文章目录内存管理new/deletenew/delete/malloc/free区别内存管理在C++中,一个可执行程序的
虚拟地址
空间可分为,内核、栈、共享库的内存映射区域、堆、数据区和代码段,具体分布额如下图所示
编程小程
·
2023-09-18 14:51
C++
c++
开发语言
c语言
分段与分页的区别&换页技术产生的原因
一、分段技术使得程序以及数据在底层物理器件上的存储对程序员透明化,即在编程中使用的地址都是
虚拟地址
,从
虚拟地址
映射到物理地址的过程由操作系统自动完成,程序员不知道也不用知道其具体物理地址在哪二、运用分段技术后
划水哥~
·
2023-09-18 02:27
专业课
经验分享
【探索Linux】—— 强大的命令行工具 P.8(进程地址空间)
阅读导航前言一、内存空间分布二、什么是进程地址空间1.概念2.进程地址空间的组成三、进程地址空间的设计原理1.基本原理2.
虚拟地址
空间·概念·大小和范围·作用·
虚拟地址
空间的优点3.页表四、为什么要有地址空间五
Yawesh_best
·
2023-09-17 23:51
Linux
linux
运维
服务器
后端
Linux操作系统(四):内存管理组件
学习将进程的
虚拟地址
不讲魔法讲道理
·
2023-09-17 01:25
Linux操作系统学习及实践
linux
服务器
Linux内核源码分析 (B.x)Linux页表的映射
Linux内核源码分析(B.x)Linux页表的映射文章目录Linux内核源码分析(B.x)Linux页表的映射一、ARM32页表1、页表术语2、
虚拟地址
到物理地址转换3、一级页表项4、二级页表项二、ARM64
Elec Liu
·
2023-09-17 01:43
Linux内核源码分析
linux
运维
服务器
iOS 启动优化原理
1、虚拟内存&ASLR在早期计算机中数据是直接通过物理地址访问的,这就造成了下面两个问题1、内存不够用2、数据安全问题内存不够--->虚拟内存虚拟内存就是通过创建一张物理地址和
虚拟地址
的映射表来管理内存
木扬音
·
2023-09-16 21:34
linux 堆探索
堆的
虚拟地址
是连续的,是brk来分配,brk是一个指针指向堆顶的指针,并且是可以复用的,但是只有在堆顶空闲128k时,才收缩,也就是说,为了减少page_fault,可重用,开销小的特点。
boring_111
·
2023-09-16 16:49
linux内核
jvm
算法
C++new与delete的使用
C++new与delete可执行程序的
虚拟地址
空间1.new的运算符用法(关键字)2.new的函数用法3.定位new4.new创建对象5.delete6.对于内置类型new/delete/malloc/
Mi ronin
·
2023-09-15 22:23
C++
c++
开发语言
深入Linux内核架构笔记(缺页异常)
如果进程访问的
虚拟地址
空间部分尚未与页帧关联,处理器自动地引发一个缺页异常,内核必须处理此异常。这是内存管理中最重要、最复杂的方面之一,因为必须考虑到无数的细节。例如,内核必须确定以下情况。
唐伯虎点蚊香dw
·
2023-09-15 22:07
Java从开发到设计
linux
linux
架构
运维
分析:标志项的作用、cache行的总位数、三种映射的地址结构
虚拟地址
传入CPU内部的内存管理单元MMU,MMU将其转化为物理地址传入MAR,MAR会优先访问cache,而知道映射的地址结构才能知道如何访问cache,因为不同的映射结构该物理地址能放入的cache
晴落
·
2023-09-15 16:05
计算机组成原理
cache地址
【Linux】多线程【上】
1-1-1、如何看待页表1-1-2、回顾进程地址空间1-1-3、页表怎么进行
虚拟地址
到物理地址的映射的?
ks不知火
·
2023-09-15 14:20
linux
运维
【JavaEE】多线程(一)
多线程(一)文章目录多线程(一)进程操作系统进程PCB属性进程的状态进程的优先级进程的上下文CPU寄存器进程的记账信息
虚拟地址
空间线程线程与进程的区别Java进行多线程编程在了解多线程之前,我们先聊聊进程进程而了解进程前
日夜无休时
·
2023-09-15 10:38
JavaEE
java-ee
java
Linux——进程间通信——管道与共享内存
Notes:进程之间是无法直接通信的,因为每一个进程都有自己独立的
虚拟地址
空间,所以进程具有独立性,无法直接通信。进程间通信方式种类:管道、共享内存
一棵灬胡杨树
·
2023-09-14 13:15
Linux
linux
[Linux]进程间通信,管道,共享内存
实际上,两个进程之间是无法直接进行通信的,操作系统为每个进程分配了
虚拟地址
空间,通过页表映射来访问它的物理地址空间,但是这种映射信息,其它的进程无法获取,所以实际上两个进程间是无法直接进行通信的。
头晕神教的神秘人
·
2023-09-14 13:43
Linux
linux
进程间通信
Linux——进程间通信(管道、共享内存、消息队列、信号量)
信号量1、同步(临界资源访问的合理性)2、互斥(同一时间只有一个进程能够访问资源,保证临界资源的安全性)五、相关操作指令进程间通信就是两个进程间的数据交换因为进程间具有独立性,每个进程访问的都是自己的
虚拟地址
@余笙!
·
2023-09-14 13:10
Linux
Linux 多线程 ( 多线程概念 )
透过进程
虚拟地址
空间,可以看到进程的大部分资源,将进程资
清欢Allen
·
2023-09-13 21:40
Linux操作系统
linux
运维
服务器
深入理解Linux内核内存映射(mmap)机制原理
vm_area_struct是在mmap的时候创建的,vm_area_strcut代表了一段连续的
虚拟地址
,这些
虚拟地址
相应地映射到一个后备文件或者一个匿名文件的虚拟页。
简说Linux内核
·
2023-09-13 21:03
linux
运维
服务器
Linux内核
嵌入式开发
256-Linux虚拟内存映射和fork的写时拷贝
进程这一抽象能够为每个进程提供自己私有的
虚拟地址
空间,可以免受其他进程的错误读写。不过,许多进程有同样的只读代码区域。例如,每个运行Linuxshell程序bash的进程都有相同的代码区域。
林林林ZEYU
·
2023-09-13 21:33
操作系统和计算机网络
linux
操作系统
【linux】进程地址空间
进程地址空间1.什么是地址空间2.感性理解
虚拟地址
空间3.理性认识
虚拟地址
空间4.为什么存在地址空间4.1原因14.2原因24.3原因31.什么是地址空间请问C/C++地址空间是内存吗?
LuckyRich1
·
2023-09-13 19:34
Linux
linux
运维
服务器
【汇编】微处理器
2、微处理器结构2.1寄存器2.2寄存器&汇编助记符2.3寄存器组成结构3、地址空间3.1存储空间3.1.1虚拟空间(编程空间)3.1.2线性空间3.2I/O空间4、工作模式4.1实地址模式4.2保护
虚拟地址
模式
Bebop Primer
·
2023-09-13 19:21
汇编
汇编
聊一聊进程、线程和协程以及线程的那些“锁“事
是系统进行资源分配和调度的基本单位通俗的讲:进程可以理解为我们在电脑上正在运行的一个个应用,例如:QQ,微信,LOL打开一个浏览器急速一个进程,打开两个浏览器就是两个进程,进程和进程之间具有独立性,它们具有各自的
虚拟地址
空间和文件描述符线程
老A技术联盟
·
2023-09-12 13:34
golang
linux技术
java
分布式
开发语言
【Linux】进程地址空间
下面我们来谈谈进程的地址空间:目录一、引入二、
虚拟地址
三、
虚拟地址
在操作系统下的管理四、关于引入中的问题深入分析五、
虚拟地址
的作用一、引入我们做一个之前做过的小实验:#include#include#includeintg_val
1e-12
·
2023-09-12 10:26
Linux
linux
运维
服务器
linux内核源码分析之虚拟内存
目录
虚拟地址
空间划分(用户空间)32位系统
虚拟地址
空间分配64位系统
虚拟地址
空间分配内存管理内核布局
虚拟地址
空间虚拟内存区域在内核中组织内存访问权限调用malloc申请内存,
虚拟地址
空间布局(内核)直接映射区
为了维护世界和平_
·
2023-09-11 23:22
linux内核分析
linux
内核
mmap用于本地进程间通信
mmap是内存映射的实现,就是把进程的
虚拟地址
空间映射到真实的物理内存中,从而,对映射地址的读写相当于对真实物理内存的读写,操作系统负责将写入的内容刷新到磁盘,或者从磁盘加载到内存中(这里是指文件映射,
·
2023-09-11 20:32
在32位Windows中,DLL是如何导出的?
DLL中的常驻名(residentname)和非常驻名(non-residentname)之间没有区别,导出函数的名称仅存储在DLL文件中,并带有指向导出表中存储的名称的指针(即相对
虚拟地址
)。
拓扑梅尔-漫漫开发路
·
2023-09-11 15:56
OldNewThing
windows
软件开发
系统设计
探索 Java 线程的创建
而进程则具有独立的
虚拟地址
空间,每个进程都有自己独立的代码和数据空间,程序之
·
2023-09-11 11:16
java后端
一文说清mmap内存映射底层原理(以LCD中的Framebuffer为例)
一文说清mmap内存映射底层原理【目录】一、宏观解释内存映射二、进程
虚拟地址
空间三、虚拟内存区域描述符四、内存映射的实现五、mmap在Framebuffer中的应用前几天的一场面试中,面试官问:为什么可以通过
晨少爱学习
·
2023-09-11 11:20
linux
驱动
mmap
内存映射
页表
Framebuffer
虚拟内存
标准C库IO函数和Linux系统IO函数
但是linux没有缓冲区主要通过file*fp指针操作文件,文件描述符是定位文件用的,是对文件的数据进行操作,缓冲区提高效率file结构体组成写/读的起始指针起始位置结束位置……fileno是文件描述符
虚拟地址
空间
虚拟地址
空间不存在程序就是代码只占用磁盘空
狗狗狗乖乖
·
2023-09-10 22:46
Linux编程入门
linux
运维
服务器
图解Linux是如何进行函数调用的?
开篇依旧先提出几个问题:进程
虚拟地址
空间是如何分布的?函数调用的栈帧结构是什么样子?函数调用涉及到的寄存器都起了什么作用?函数参数是如何传递的?传递顺序如何?函数的返回值是如何传递的?
this_is_for_u
·
2023-09-10 20:56
大页内存(HugePages)原理
3.原理大页内存的原理涉及到操作系统的
虚拟地址
到物理地址的转换过程。
duhf_think
·
2023-09-10 10:38
Linux相关
linux
framework学习笔记10. 应用查找AMS
一.笔记5~笔记9内容:
虚拟地址
与物理地址;IPC通信方式:管道,套接字,内存共享,信号,binder驱动;binder驱动:binder_open(),binder_mmap(),binder_ioctl
加个标志位
·
2023-09-10 00:12
Linux下的系统编程——共享存储映射(十)
前言:mmap是一种内存映射文件的方法,即将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程
虚拟地址
空间中一段
虚拟地址
的一一对映关系。
我想学LINUX
·
2023-09-09 09:27
linux
mmap函数
存储映射I/O
文件间进程通信
创建共享内存
mmap通信
映射区
1.1
虚拟地址
和物理地址
一:基本概念了解1.地址空间我们最开始接触地址的时候,应该是在我们学习数组的时候。地址空间其实是一个比较抽象的概念,我们可以把它想象成一个长的数组,每个数组元素占一个字节。那么这个数组的长度就由地址空间长度来决定。例如:我们32位的系统的地址空间就是我们的2^32字节(4GB),而64位的地址空间大小就是2^64个字节。这也就解释了在我们32位的操作系统,为什么最大只能支持4GB的有效内存。2.虚
小鼻子球球小昏昏
·
2023-09-08 23:18
【操作系统】聊聊Linux内存工作机制
进程如果要访问内存需要通过独立的
虚拟地址
空间。
虚拟地址
空间其实包含两部分。一部分是内核空间,另一部分就是用户空间。进程有用户态和内核态,用户态下只能访问用户空间,只有切换到内核态时才可以访问内核空间。
qxlxi
·
2023-09-08 16:40
#
操作系统
#
Linux
linux
运维
服务器
【IMX6ULL驱动开发学习】24.关于mmap为什么能直接操作LCD显示
在这里做一下补充mmap为什么能直接操作LCD显示首先在内核空间申请一段或多段内存作为显存,即Framebuffer然后使用mmap把这段内存的物理地址映射到应用程序的地址空间相当于应用中也有一块内存,这两块内存的
虚拟地址
不一样
晨少爱学习
·
2023-09-08 10:20
IMX6ULL
驱动开发
mmap
Windows内核-读写驱动
读写内存的几种方式包括:附加进程读写:通过进程挂靠读写内存MDL映射读写:通过目标
虚拟地址
计算出物理地址,然后根据物理地址映射出一个新的
虚拟地址
,然后对这个新的
虚拟地址
就行读写操作内核APC读写:用内核
游戏逆向
·
2023-09-08 03:52
进程间通信之System V 共享内存
文章目录一、共享内存进程具有独立性,因此进程间通信的前提是两个进程能看到同一份资源一、共享内存在内存中申请一块空间,并将起始地址分别映射到两个进程的
虚拟地址
空间上,便可以让两个进程看到同一份资源操作系统为了管理共享内存
[Pokemon]大猫猫
·
2023-09-07 21:03
Linux
linux
腾讯开源存储框架MMKV
关于mmap内存映射mmap是一种内存映射文件的方法,即将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程
虚拟地址
空间中一段
虚拟地址
的一一对映关系。
cname_1
·
2023-09-07 15:59
CPU及并发
次运算(即29亿次)几个命令us:用户使用的cpusy:系统(内核)使用的cpuid:idle,即空闲cpuwa:等待I/O的cpust:开虚拟机后会有的一个指标,即虚拟机的cpu使用率一个进程拥有一整套
虚拟地址
空间
techdashen
·
2023-09-07 07:31
后端
CPU及并发
次运算(即29亿次)几个命令us:用户使用的cpusy:系统(内核)使用的cpuid:idle,即空闲cpuwa:等待I/O的cpust:开虚拟机后会有的一个指标,即虚拟机的cpu使用率一个进程拥有一整套
虚拟地址
空间
·
2023-09-06 22:45
后端
Linux内核源码分析 (B.2)
虚拟地址
空间布局架构
Linux内核源码分析(B.2)
虚拟地址
空间布局架构文章目录Linux内核源码分析(B.2)
虚拟地址
空间布局架构一、Linux内核整体架构及子系统二、Linux内核内存管理架构一、Linux内核整体架构及子系统
Elec Liu
·
2023-09-06 22:32
Linux内核源码分析
linux
架构
运维
【Linux】
虚拟地址
空间理解
虚拟地址
空间
虚拟地址
是操作系统管理内存的一种方式。**方便不同进程使用的
虚拟地址
彼此隔离。方便物理内存中不相邻的内存在
虚拟地址
上视为连续的来使用。
虚拟地址
和物理地址的映射是通过MMU页表进行的。
哥不想学算法
·
2023-09-06 16:10
c++
linux
【操作系统】聊聊常见的内存管理方式
虚拟内存在保护模式下,为了不将内存的真是物理地址暴露给软件程序,因此需要提供一套
虚拟地址
。即通过进程操作虚拟内存->物理内存。操作系统会提供一种机制,将不同进程的
虚拟地址
和不同内存的物理地址映射起
qxlxi
·
2023-09-06 03:30
#
操作系统
java
网络
linux
Linux 内存管理 详解(虚拟内存、物理内存,进程地址空间)
Linux-操作系统内存管理存储系统存储器的层次结构Linux的内存管理物理内存物理内存管理虚拟内存
虚拟地址
空间(写时拷贝)和物理地址映射关系页表虚拟内存优缺点「在4GB物理内存的机器上,申请8G内存会怎么样
-YIN
·
2023-09-06 03:28
OS
linux
centos
c语言
vim
OS 内存换入&&换出
当通过逻辑地址得到
虚拟地址
,但是发现
虚拟地址
没有对应的页框号时,就要中断,然后从磁盘中找把这一页读进来,再把页表中的影射做好,再接着原来的程序。
狗狗狗乖乖
·
2023-09-06 02:23
操作系统
操作系统
【Linux】地址空间概念
一.什么是地址空间
虚拟地址
与物理地址之间的关系二.地址空间是如何设计的1.回答一个变量两个值2.扩展继续深入理解三.为什么要有地址空间原因:1.使操作系统对访问或者映射的合法性检查,杀掉非法进程,从而保护数据安全
花果山~~程序猿
·
2023-09-05 23:33
Linux
linux
c++
算法
运维
服务器
【ZYNQ】Linux驱动之梦开始的地方
软件版本:Vivado2021.1操作系统:WIN1064bit、Ubuntu18.04硬件平台:ZYNQUltraScale文章目录1.1系统框图1.2介绍1.2.1寄存器查询手册1.2.2物理地址与
虚拟地址
菜虚鲲001
·
2023-09-05 15:29
linux
fpga
ZYNQ
ARMv8 TTBRx寄存器
EL12.2TTBR0_EL22.3TTBR0_EL33TTBR13.1TTBR1_EL13.2TTBR1_EL24访问TTBRx寄存器4.1TTBR0_ELx4.2TTBR1_ELx5TTBRx保留的是物理地址还是
虚拟地址
田园诗人之园
·
2023-09-05 07:50
arm64
ARMv8
TTBRx寄存器
TTBR寄存器
Linux内核源码分析 (7)内核内存布局和堆管理
一、Linux内核内存布局64位Linux一般使用48位来表示
虚拟地址
空间,45位表示物理地址。通过命令:cat/proc/cpuinfo。
Elec Liu
·
2023-09-05 04:13
Linux内核源码分析
linux
运维
服务器
malloc 的实现原理
Linux的虚拟内存管理有几个关键概念:1.每个进程都有独立的
虚拟地址
空间,进程访问的
虚拟地址
并不是真正的物理地址;2.
虚拟地址
可通过每个进程上的页表(在每个进程的内核
虚拟地址
空间)与物理地址进行映射,
YZF_Kevin
·
2023-09-04 05:49
知识积累
malloc原理
free原理
malloc详解
malloc源码
上一页
6
7
8
9
10
11
12
13
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他