1.需求描述 Redis中的数据都保存在内存中.如果内存中一直添加数据,则可能会造成内存填满,内存溢出的现象.需要控制redis的内存大小. 2.LRU算法 内存管理的一种页面置换算法,对于在内存中但又不用的数据块(内存块)叫做LRU,操作系统会根据哪些数据属于LRU而将其移出内存而腾出空间来加载另 ...
分类:
其他好文 时间:
2019-09-26 00:29:22
阅读次数:
97
java虚拟机内存管理图如下图所示: 1.线程共享区,是所有的线程所共用的,线程共享区有一下几个组成: 1.方法区: 1.运行时常量池,已经被虚拟机加载的类信息(1.类的版本信息,2.字段,3.方法,4.接口等),常量,静态变量,即时编译器编译后的代码等数据。 2.垃圾回收器也会光顾这个区域,例如常 ...
分类:
其他好文 时间:
2019-09-25 15:58:44
阅读次数:
99
GIL(全局解释器锁) GIL锁即全局解释器锁,是 CPython 解释器的特性。它的作用是保证了同一时刻只有一个线程执行 Python 字节码。 它并不是 Python 的特性,它的存在是 CPython 的内存管理机制导致的。语言的内存管理机制一般有两种:1.引用计数 2.垃圾回收。CPytho ...
分类:
编程语言 时间:
2019-09-24 10:28:46
阅读次数:
81
我们已经知道在计算机的世界里只有二进制,只认识01,我们无法直接流畅的与计算机对话来进行一些工作。我们想要使用硬件资源就必须要使用操作系统来调配分配硬件资源。操作系统主要有如下功能:1、内存管理2、设备管理3、进程管理4、系统调用5、文件管理6、网络管理我们现在常用的操作系统主要有三类,一是现在使用人数最多的windows操作系统,包括从DOS开始经95/98/2000/xp/visit/win7
分类:
系统相关 时间:
2019-09-23 15:10:35
阅读次数:
110
java程序在运行时,需要在内存中的分配空间。为了提高运算效率,就对空间进行不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式 栈——存储局部变量,使用完毕,立即回收 堆——存储new出来的东西——实体/对象,每个对象在堆中都有一个地址值,每一个对象数据都有一个默认值,使用完毕后,会 ...
分类:
编程语言 时间:
2019-09-21 17:16:16
阅读次数:
89
PHP5的内存管理 对象传递 PHP5使用了Zend引擎II,对象被储存于独立的结构Object Store中,而不像其它一般变量那样储存于Zval中(在PHP4中对象和一般变量一样存储于Zval)。在Zval中仅存储对象的指针而不是内容(value)。当我们复制一个对象或者将一个对象当作参数传递给 ...
分类:
Web程序 时间:
2019-09-21 15:33:41
阅读次数:
118
objc_object: 我们平时所使用的数据结构都是id类型的,对应到runtime中的类型是objc_object,其中包含isa_t、关于isa操作相关的方法、弱引用相关的方法、关联对象相关的方法、内存管理相关的方法 objc_class:我们在OC中使用的Class在runtime中对应ob ...
分类:
其他好文 时间:
2019-09-20 18:53:34
阅读次数:
86
tmpfs tmpfs是一种虚拟内存文件系统, 它的存储空间在VM里面,现在大多数操作系统都采用了虚拟内存管理机制, VM(virtual memory) 是由linux内核里面的vm子系统管理. VM的大小由RM(Real Memory)和swap组成, RM就是物理内存, swap是通过硬盘虚拟 ...
分类:
系统相关 时间:
2019-09-18 12:52:42
阅读次数:
110
默认添加的用户会自动加入和用户名一样的组中su 切换用户查看当前登陆的用户: whoami id`查看当前用户属于哪个组:groupsgroupadd 组名 添加组groupdel 组名 删除组grep test /etc/group 在group文件里面寻找testadm(组名):x(密码):4( ...
分类:
系统相关 时间:
2019-09-15 23:59:51
阅读次数:
185
C++的内存分配方式 c++内存分配分为堆区,栈区,自由存储区(代码区),全局区(静态区),常量区5部分 堆:堆是操作系统中的术语,是操作系统所维护的一块特殊内存,用于程序的内存动态分配,C语言使用malloc从堆上分配内存,使用free释放已分配的对应内存。 栈:在执行函数时,函数内局部变量的存储 ...
分类:
编程语言 时间:
2019-09-14 15:56:57
阅读次数:
76