操作系统--虚拟内存--物理内存

发布时间:2024年01月11日

虚拟内存地址:

出现的原因:单片机时代,cpu直接操作物理内存,每次只能有一个进程操作,如果多个

image-20240110110300473

在 4GB 物理内存的机器上,申请 8G 内存会怎么样?

1、明确是32位机器,还是64位机器

  • 32位:32位机器的虚拟内存地址的分配是1G的内核空间,3G的用户空间,4G>3G,分配就直接失败

  • 64位:64位机器的虚拟内存地址的分配是128T的内核空间,128T的用户空间,还有未定义的内存空间,

    128T>4G,可以分配成功

2、申请完8G的内存后会不会被使用?

因为只分配虚拟内存但并未对虚拟内存进行读写,操作系统是不会去分配物理内存的

3、明确有没有swap机制:

使用cat /proc/sys/vm/overcommit_memory 来查看swap的参数:

swap有3种:

默认值为0:代表过于名目张胆的申请过大的内存,会被操作系统直接拒绝

默认为1:代表对内存来着不拒(要想不被拒绝,我们默认为1)

默认为2:也是禁止过大

文章来源:https://blog.csdn.net/qq_44231964/article/details/135522575
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。