运维必读:Linux 的内存分页管理 https://cloud.tencent.com/developer/article/1356431 内存是计算机的主存储器。内存为进程开辟出进程空间,让进程在其中保存数据。我将从内存的物理特性出发,深入到内存管理的细节,特别是了解虚拟内存和内存分页的概念。 ...
分类:
系统相关 时间:
2019-10-20 11:01:26
阅读次数:
88
概述: cache- 主存地址映射: 替换算法: ...
分类:
其他好文 时间:
2019-10-19 15:00:32
阅读次数:
64
实现的模拟多线程实现售票是每个学习多线程的初学者必须要学会掌握的知识点, 既然掌握的它, 我们自然要举一反三 So~, 无锁版出现了 What无锁? 假如两个线程同时修改一个变量的场景下 我们需要三个值, 预期值(线程副本变量中的值), 主存值(从主存变量中的值), 新值(我们要设置的值) 如果 预 ...
分类:
编程语言 时间:
2019-10-19 13:25:04
阅读次数:
98
在企业中,数据库高可用一直是企业的重中之重,中小企业很多都是使用mysql主主方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动。因此,如果是双主或者多主,就会增加mysql入口,增加高可用。不过多主需要考虑自增长ID问题,这个需要特别设置配置文件,比如双主,可以使用奇偶,总 ...
分类:
数据库 时间:
2019-10-17 11:50:59
阅读次数:
95
主存是计算机的一部分,程序和数据就存在那里。虽然术语“storage”越来越多地用来表示硬盘存储,一些计算机科学家(尤其是英国人)更偏向于使用单词store或者storage而不是memory来表示内存。没有了处理器读写信息所需的内存,世界上就没有存储程序的数字计算机了。 内存的基本单元是二进制数字 ...
分类:
其他好文 时间:
2019-10-16 19:26:54
阅读次数:
75
前言 首先我们在了解java内存模型之前先看一下计算机内存模型,理解了计算机内存模型的话后面在看JMM就会简单的多。 首先我们在了解java内存模型之前先看一下计算机内存模型,理解了计算机内存模型的话后面在看JMM就会简单的多。 计算机内存 计算机是由CPU、主存、磁盘等组成的(简单引出问题熬)我们 ...
分类:
编程语言 时间:
2019-10-13 20:29:50
阅读次数:
103
[toc] 一、存储器管理 1.1存储器的层次结构 1、多层结构的存储器系统 1)存储器的多层结构 通用计算机存储层次有三级:CPU寄存器,主存,辅存 主存包括:高速缓存、主存储器、磁盘缓存 辅存包括:固定磁盘、可移动存储介质 寄存器、高速缓存、主存储器和磁盘缓存属于操作系统存储管理的管辖范畴,断电 ...
分类:
其他好文 时间:
2019-10-13 15:31:21
阅读次数:
117
一些概念: 1.内存管理主要是管理缓存/主存/磁盘/磁带等存储介质锁形成的内存框架。 2.虚拟内存:即将物理内存(缓存和主存)扩充到外部存储介质(磁盘/光盘/磁带)上。这样内存的空间就大大的增加了。 3.中断的基本原理是:设备在完成自己的任务后向CPU发出中断,CPU判断优先级,然后确定是否响应。如 ...
分类:
其他好文 时间:
2019-10-10 15:45:57
阅读次数:
117
二、CPU多级缓存 2-1 CPU高级缓存-缓存一致性(MESI协议) 1.为什么需要CPU缓存? 答:CPU的频率太快了,快到主存赶不上,这样在处理器时钟周期内,CPU常常要等待主存,浪费了资源。所以缓存的出现,是为了缓解CPU和内存之间速度不匹配的问题。(结构:cpu->cache->memor ...
分类:
其他好文 时间:
2019-10-07 23:47:27
阅读次数:
170
理解volatile其实还是有点儿难度的,它与Java的内存模型有关,所以在理解volatile之前需要先了解有关Java内存模型的概念,目前只做初步的介绍。 一、操作系统语义 计算机在运行程序时,每条指令都是在CPU中执行的,在执行过程中势必会涉及到数据的读写。 我们知道程序运行的数据是存储在主存 ...
分类:
其他好文 时间:
2019-10-02 22:55:20
阅读次数:
86