内存管理-

VIRT(虚拟内存)、RES(常驻内存)和SHR(共享内存)

VIRT(虚拟内存)

  • 进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据,以及mallocnew分配的堆空间和分配的栈空间等;
  • 假如进程新申请10MB的内存,但实际只使用了1MB,那么它会增长10MB,而不是实际的1MB使用量。
  • VIRT = SWAP(交换分区) + RES(常驻内存)

RES(常驻内存)

进程当前使用的内存大小,包括使用中的malloc、new分配的堆空间和分配的栈空间,但不包括swap out量;
包含其他进程的共享;
如果申请10MB的内存,实际使用1MB,它只增长1MB,与VIRT相反;
关于库占用内存的情况,它只统计加载的库文件所占内存大小。
RES = CODE+ DATA

SHR(共享内存)

  • 除了自身进程的共享内存,也包括其他进程的共享内存;
  • 虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小;
  • 计算某个进程所占的物理内存大小公式:RES – SHR
  • swap out后,它将会降下来。

1、操作系统的内存管理主要是做什么?

答:操作系统的内存管理主要负责内存的分配与回收malloc 函数:申请内存,free函数:释放内存),另外地址转换也就是将逻辑地址转换成相应的物理地址等功能也是操作系统内存管理做的事情。 

2、内存管理的目的

答:最主要的就是提高内存的利用率,所谓的提高内存利用率,就是尽可能的在内存中多存储进程,这就涉及到为进程分配内存空间了。分配的方式主要是有两种——连续分配和离散分配

3、分页系统地址映射

答:内存管理单元MMU)管理着地址空间和物理内存的转换,其中的页表(Page table)存储着页(程序地址空间)和页框(物理内存空间)的映射表。一个虚拟地址分成两个部分,一部分存储页面号,一部分存储偏移量。

4、内存管理机制

5、什么是分页?

6、什么是分段?

 

 7、分页和分段有什么区别?

————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/xdx_dili/article/details/134370620

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值