技术栈
内存模型
思尔芯S2C
11 天前
fpga开发
·
内存模型
·
ddr4
·
ddr5
·
memory model
·
hbm3
·
prototyping
FPGA原型验证中的内存模型应用:基于DDR5的Linux系统启动与测试
在芯片设计的FPGA原型验证(FPGA Prototyping)阶段,设计师会先在FPGA上构建一个接近真实的芯片原型,用以进行早期软件调试和系统级验证。当前,随着DDR5/LPDDR5成为高性能SoC(尤其是集成CPU的高端芯片)的主流内存标准。然而,主流的FPGA硬件存在I/O电气标准不兼容,PHY接口规格不适配等障碍。更换SoC存储子系统又会导致SoC的benchmark失真,对性能测试结果影响较大。因此,一个能够兼容设计内存储控制器,并时序精准的内存模型,就显得十分有必要。通过“内存模型”(Mem
wotaifuzao
16 天前
stm32
·
嵌入式开发
·
内存模型
·
c语言指针
·
arm架构
·
中断机制
·
rtos内核
指针和中断不是魔法:用第一性原理看穿嵌入式底层(万字解析)
先来看一段代码。不要运行,用你的直觉回答输出是什么:如果你的第一反应是「b = 0xCAFE」或「b = 0xBEEF」,你的指针模型需要重建。
tongluowan007
20 天前
java
·
内存模型
·
内存屏障
Java 内存模型(JMM)- 内存屏障
内存屏障(Memory Barrier)是一种 CPU 或 JVM 级别的指令,用于禁止特定类型的指令重排序并强制内存可见性。Java 内存模型(JMM)定义了四种抽象的屏障类型,它们组合使用来实现 volatile、synchronized 等的语义。
tongluowan007
21 天前
java
·
内存模型
·
happens-before
Java 内存模型(JMM)- happens-before 与内存屏障
Java 内存模型(JMM)的 happens-before 规则与这些屏障有什么关系?下面先解释 happens-before 的抽象概念,再说明它如何通过内存屏障落地实现。
lee_curry
1 个月前
java
·
jvm
·
内存模型
jvm中的内存模型
第二章 jvm中的内存模型其中红色是线程共有的,灰色是线程私有用来存储指向下一条指令的地址,也即将要执行的指令代码。执行引擎的字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令。 它是一块很小的内存空间,几乎可以忽略不记。也是运行速度最快的存储区域。不会随着程序的运行需要更大的空间。 它是唯一一个在Java虚拟机规范中没有规定任何outothemoryError 情况的区域
Jia ming
4 个月前
armv8
·
内存模型
·
内存屏障
ARMv8内存模型与屏障指令详解
ARMv8架构处理器实现了弱一致性内存模型,在某些情况下,处理器在执行指令时不一定完全按照程序员编写的指令顺序来执行,处理器为了提高指令执行效率会乱序执行指令和预测指令。现代处理器为了提高系统吞吐率都会做如下优化:
蜂蜜黄油呀土豆
4 个月前
jvm
·
常量池
·
内存模型
·
堆栈
深入理解 Java 虚拟机内存模型
Java 虚拟机(JVM)是 Java 程序能够在不同操作系统上运行的基础,而 JVM 内存模型则是决定 Java 程序如何管理内存的核心。JVM 的内存结构是为了提供高效的资源管理、内存回收和线程安全设计的,其中的各个内存区域承担着不同的任务。
没有bug.的程序员
5 个月前
java
·
开发语言
·
并发编程
·
volatile
·
内存模型
·
jmm
·
happens-before
Java内存模型(JMM)深度解析:从 volatile 到 happens-before 的底层机制
📌 血泪教训:一个未加 volatile 的标志位,导致服务永久假死 某金融交易平台在 2023 年遭遇“幽灵故障”:
superman超哥
5 个月前
开发语言
·
后端
·
rust
·
编程语言
·
内存模型
·
堆内存与栈内存
·
所有权管理
Rust 堆内存与栈内存的所有权管理:精确控制的内存模型
堆内存和栈内存是程序运行时的两种基本内存区域,它们在分配方式、生命周期、访问性能上有本质区别。栈内存由编译器自动管理,分配和释放速度极快,但大小固定且生命周期受限于函数调用;堆内存由程序显式管理,大小灵活且生命周期自由,但分配成本高且容易出错。传统语言在堆内存管理上要么依赖程序员手动管理(C/C++),容易导致内存泄漏和悬垂指针;要么使用垃圾回收(Java/Go),引入运行时开销和不可预测的停顿。Rust 通过所有权系统在编译期管理堆内存,既避免了手动管理的错误,又消除了垃圾回收的开销。Box、Vec、S
CodeAmaz
6 个月前
jvm
·
内存模型
JVM内存模型详解
在中文语境里,“JVM 内存模型”有两种常见指代: 1)JVM 运行时数据区(HotSpot 里的堆、栈、元空间等),偏“内存结构”; 2)Java Memory Model(JMM)(可见性/有序性/原子性规则),偏“并发语义”。 这份文档把两者都讲清楚,并给出排障与调优落地方法。
BestOrNothing_2015
6 个月前
c++
·
多线程
·
并发编程
·
线程安全
·
内存模型
·
原子操作
·
数据竞争
C++ 并发四件套:并发编程 / 原子性 / 数据竞争 / 内存模型 (全解析)
目录一、并发编程:多个线程一起干活的世界1.1 并发编程的定义1.2 并发编程里我们要解决什么二、原子性:一个操作要么全做,要么不做
boonya
9 个月前
java
·
开发语言
·
内存模型
Java内存模型与线程私有共享区域与直接内存的理解
Java内存模型包括: 程序计数器、虚拟机栈、本地方法栈、堆、方法区(元空间)、直接内存。重点理解线程私有和共享区域。
没有bug.的程序员
10 个月前
java
·
jvm
·
运行时数据区
·
内存模型
·
对象生命周期
JVM 运行时数据区详解:内存模型与对象生命周期全景解析
真实案例:2021年某金融系统因方法区溢出导致:掌握内存的价值:特点:栈帧结构:特点:对象分配流程:配置参数:
你过来啊你
1 年前
java
·
内存模型
深度分析Java内存模型
Java 内存模型(Java Memory Model, JMM)是 Java 并发编程的核心基石,它定义了多线程环境下线程如何与主内存(Main Memory)以及线程的本地内存(工作内存,Working Memory)交互的规则。JMM 的核心目标是解决并发编程中的三大难题:可见性(Visibility)、原子性(Atomicity)和有序性(Ordering)。
千里马-horse
2 年前
opencl
·
内存模型
OpenCL内存模型
OpenCL将内存划分成主机内存和设备内存。主机内存可在主机上使用,其并不在OpenCL的定义范围内。使用对应的OpenCL API可以进行主机和设备的数据传输,或者通过共享虚拟内存接口进行内存共享。而设备内存,指定是能在执行内核中使用的内存空间。
谷公子的藏经阁
2 年前
cpu
·
risc-v
·
内存模型
·
memory model
·
ztso
RISC-V笔记——内存模型总结
Memory consistency model定义了使用Shared memory(共享内存)执行多线程(Multithread)程序所允许的行为规范。RISC-V使用的内存模型是RVWMO(RISC-V Weak Memory Ordering),RVWMO内存模型是根据全局内存顺序(global memory order)定义的,全局内存顺序是所有harts产生的内存操作的总顺序。通常,多线程程序有许多不同的可能执行,每个执行都有自己对应的全局内存顺序。
炫酷的伊莉娜
2 年前
c++
·
c++11
·
内存模型
C++11 开发中的 Atomic 原子操作
原子操作在多线程开发中经常用到,比如在计数器、序列产生器等地方,这类情况下数据有并发的危险,但是用锁去保护又显得有些浪费,所以原子类型操作十分的方便。
CyberSecurity_zhang
2 年前
mcu
·
armv8
·
内存模型
·
r52
·
memory model
Armv8-R内存模型详解
目录1.内存模型的必要性2.Armv8-R内存模型分类2.1 Normal memory2.2 Device Memory
职创未来官方
2 年前
c语言
·
开发语言
·
后端
·
物联网
·
算法
·
嵌入式
·
内存模型
大话C语言:第27篇 内存模型
现代计算机遵循冯诺依曼体系结果,存储分为:外部存储器:长期存放数据,掉电不丢失数据。例如,硬盘、flash、rom、u 盘、光盘、磁带。
williamdsy
2 年前
java
·
jvm
·
gc
·
内存模型
【退役之重学Java】JVM 内存模型和 GC 简述
堆空间的分区: youngS0 S1 EdgeoldS0 和 S1 交替使用,比如,S0 和 Edge 一起做完一次 GC,就把存活的对象复制到S1,并清空 S0 和 Edge,下一次GC 就用 S1 和 Edge 做,把存活下来的对象复制到 S0,并清空 S1 和 Edge 存活六次以上young GC 的对象放到 old 区