C查看分配给用户的内存及分配给系统的内存大小

#include <iostream>
#include <malloc.h>
#include <stdlib.h>
using namespace std;
int main()
{
		int count = 0;
	while(malloc(1204*1204))
		{
			count++;
		}
	cout<<count<<endl;
	cout<<(count/1024)<<"G"<<endl;
	return 0;
}

我的总内存是4G,实际上分配给用户的只有2G多点,还有接近2G的内存是分配给系统的。

时间: 2024-11-06 03:51:47

C查看分配给用户的内存及分配给系统的内存大小的相关文章

(转)Java 内存区域分配和垃圾回收(GC)机制

Java垃圾回收概况 Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之一,作为Java开发者,一般不需要专门编写内存回收和垃圾清理代 码,对内存泄露和溢出的问题,也不需要像C程序员那样战战兢兢.这是因为在Java虚拟机中,存在自动内存管理和垃圾清扫机制.概括地说,该机制对 JVM(Java Virtual Machine)中的内存进行标记,并确定哪些内存需要回收,根据一定的回收策略,自动的回收内存,永不停息(Nerver Stop

内存的分配方式

一.内存的分配方式 程序占用的内存分为五个区域: 1.静态区/全局区(static)存放静态变量.全局变量,内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间始终不变.2.栈区(stack)存放函数的参数值.局部变量的值等,由编译器自动分配释放.管理简单,空间使用效率高,但是生命周期很短暂,分配的内存容量有限.用来存储函数的参数和非静态局部变量.3.堆区(heap)也叫动态内存分配.程序在运行的时候new申请任意大小的内存,一般由程序员分配释放,如果程序员没有释放掉,程序会一直占用内

内存的分配与回收

实验三  内存的分配与回收 物联网工程                      赖燕菲                   201306104147 一.实验目的 为了合理地分配和使用这些存储空间,当用户提出申请主存储器空间时,存储管理必须根据申请者的要求,按一定的策略分析主存空间和使用情况,找出足够的空闲区域给申请者.当作业撤离归还主存资源时,则存储管理要收回占用的主存空间.主存的分配和回收的实现是与主存储器的管理方式有关的,通过本实验帮助我们理解在不同的存储管理方式下应怎样实现主存空间的分

添加删除用户、组,分配目录权限

一.用户.组部分 1.添加删除用户(并分配到组) useradd -g preferred -G supplement username -g 登陆首选组 -G 其他补充组 username 用户名 2.添加删除组 groupadd groupname groupmod -n newgroupname(切换到新的组名) groupdel groupname 3.查看用户的组情况 id user id root 4.改变用户的组 usermod -g privategroup -G supplem

内存连续分配管理方式

内存连续分配方式,是指为一个用户程序分配一个连续的内存空间.它主要包括单一连续分配.固定分区分配和动态分区分配. 单一连续分配 内存在此方式下分为系统区和用户区,系统区仅提供给操作系统使用,通常在低地址部分:用户区是为用户提供的.除系统区之外的内存空间.这种方式无需进行内存保护. 这种方式的优点是简单.无外部碎片,不需要额外的技术支持.缺点是只能用于单用户.单任务的操作系统中,有内部碎片,存储器的利用率极低. 固定分区分配 固定分区分配是最简单的一种多道程序存储管理方式,它将用户内存空间划分为若

用户管理与权限分配 5.20

1.方案与用户 方案是一些数据库对象(如:表.索引.视图.序列.过程.函数.触发器等)的集合,一个方案下的对象归一个用户所有.在Oracle中方案和用户基本是一个等同的概念,用户名即方案名. 当访问数据库对象时,需要注意如下一些事项: (1)  同一方案中不能存在同名对象,但是不同方案中数据库对象可以重名. (2)  用户可以直接访问自己方案中的数据对象,但如果要访问其他方案的数据对象,则必须具有对该对象的相应访问权限. (3)  当用户要访问其他方案的对象时,必须附加方案名作为前缀. 2.创建

ngxin源码学习(二):nginx内存池分配机制

main -> ngx_save_argv创造一个包含argc个地址空间的数组ngx_argv,然后为ngx_argv每个地址空间分配argv[i]大小的空间,并将argv[i]拷贝入ngx_argv[i]指向的地址空间 main -> ngx_process_options调用ngx_pnalloc,在内存池中找到一块ngx_prefix大小的空间 onginx内存池分配机制:内存池pool的数据结构中包含两个链表,一个是ngx_pool_t链表(存放一般block),一个是ngx_larg

Java 内存管理机制:04 Java 内存分配策略

Java 内存分配策略 Java 内存分配策略 优先在 Eden 区分配 大对象直接进入老年代 长期存活的对象将进入老年代 空间分配担保 新生代和老年代的 GC 操作 新生代 GC 操作:Minor GC 发生的非常频繁,速度较块. 老年代 GC 操作:Full GC / Major GC 经常伴随着至少一次的 Minor GC: 速度一般比 Minor GC 慢上 10 倍以上. 优先在 Eden 区分配 Eden 空间不够将会触发一次 Minor GC: 虚拟机参数: -Xmx:Java 堆

深入C语言内存区域分配(进程的各个段)详解(转)

原文地址:http://www.jb51.net/article/39696.htm 一般情况下,一个可执行二进制程序(更确切的说,在Linux操作系统下为一个进程单元,在UC/OSII中被称为任务)在存储(没有调入到内存运行)时拥有3个部分,分别是代码段(text).数据段(data)和BSS段.这3个部分一起组成了该可执行程序的文件 (1)代码段(text segment):存放CPU执行的机器指令.通常代码段是可共享的,这使得需要频繁被执行的程序只需要在内存中拥有一份拷贝即可.代码段也通常