虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续的可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。目前,大多数操作系统都使用了虚拟内存,如Windows家族的“虚拟内存”;Linux的“交 ...
分类:
其他好文 时间:
2020-07-01 15:50:36
阅读次数:
57
.Net Core CLR 的GC分为两个部分,一个是GC的内存分配,另外一个是GC的垃圾回收。这里我们先讲一下垃圾回收。 一.垃圾回收的触发条件1.在C#代码中调用 GC.Collection();2.物理内存不足的情况下3.分配量超过分配阈值4.找不到可分配的内存空间在满足了以上四个条件中的任何 ...
分类:
Web程序 时间:
2020-06-27 09:31:35
阅读次数:
75
https://www.cnblogs.com/biglucky/p/4305131.html 固定内存pinned memory,或者不可分页内存,它的一个重要特点是操作系统将不会对这块内存分页并交换到磁盘上,从而保证了内存始终驻留在物理内存中.也正因为如此,操作系统能够安全地使某个应用程序访问该 ...
分类:
其他好文 时间:
2020-06-26 18:41:57
阅读次数:
39
本文介绍linux内存机制、虚拟内存swap、buffer/cache释放等原理及实操。 一、什么是linux的内存机制? 二、linux什么时候开始使用虚拟内存(swap)? 三、怎么释放内存? 四、怎么释放swap? 一、什么是linux的内存机制? 我们知道,直接从物理内存读写数据要比从硬盘读 ...
分类:
系统相关 时间:
2020-06-24 00:46:08
阅读次数:
81
一. 页式内存管理介绍 80386能够将内存分为不同属性的段,并通过段描述符、段表以及段选择子等机制,通过段基址和段内偏移量计算出线性地址进行访问,这一内存管理方式被称为段式内存管理。 这里要介绍的是另一种内存管理的方式:80386在开启了分页机制后,便能够将物理内存划分为一个个大小相同且连续的物理 ...
分类:
其他好文 时间:
2020-06-19 01:15:16
阅读次数:
86
MySQL运行环境中,当发现系统已经用到了swap,该怎么处理? 一般来说,发生swap的原因是系统认为内存不够了。 那么,当物理内存真的不够了,或者著名的NUMA都是引起swap的可能原因。通常的应对方法有几种: 1、通过BIOS、系统内核参数关闭NUMA,或者在mysqld启动时,利用numac ...
分类:
数据库 时间:
2020-06-17 16:57:51
阅读次数:
59
1.平均事务响应时间(Average Transation Response Time ) 很好:<3s 较好:3-5s 一般:5-8s 不能接受:>8s 2.每秒点击率(Hits per Second) 随着并发用户数增多(向服务器施压),每秒点击率曲线总体呈波动上升状态,然后渐渐趋于平缓,排除网 ...
分类:
其他好文 时间:
2020-06-16 20:11:51
阅读次数:
77
1.现象 当我们使用free命令查看内存的时候,发现可用物理内存很少,但是通过进程查看没有进程占用大内存。 [root@nexus-76150 ~]# free -h total used free shared buffers cached Mem: 15G 15G 193M 364K 1.0G ...
分类:
系统相关 时间:
2020-06-15 13:58:25
阅读次数:
142
一、实验目标 以fork和execve系统调用为例分析中断上下文的切换 分析execve系统调用中断上下文的特殊之处 分析fork子进程启动执行时进程上下文的特殊之处 以系统调用作为特殊的中断,结合中断上下文切换和进程上下文切换分析Linux系统的一般执行过程 二、fork系统调用 fork() 系 ...
分类:
系统相关 时间:
2020-06-15 12:29:08
阅读次数:
72
一次开发找到了我,说前端访问500,第一感觉就是访问后端的数据库挂了,且报错没有足够的内存,报错如下,实际看了下数据库是活着的,物理内存充足,应该是分配oracle的SGA内存不足了。 由于经验不足,我的第一感觉,内存不足了,要扩容了,于是各种请教查询文档,在测试服务器上模拟出,如何扩容?流程如下: ...
分类:
数据库 时间:
2020-06-15 12:09:47
阅读次数:
73