zoukankan      html  css  js  c++  java
  • 理解内存

    1、操作系统对硬件封装,对外暴露API,编程语言对操作系统封装,对外暴露API,程序员利用编程语言的API进行编程。

    2、硬盘利用磁性保存数据,内存是晶体管,用电流的有无状态表示数据。因此断电后,硬盘的数据还在,内存的数据消失了。

    3、访问硬盘使用磁头读写数据,访问内存使用数据总线。

    4、每个进程都会占用一定的内存,对于32位操作系统,进程占用的内存必须小于 4G-操作系统常驻内存。

    5、系统中的进程很多,每个都占用一定的内存,会导致内存不够用,就会出现roll-out,roll-in。内存不够用的情况下,去执行一个进程,先把其他暂时不用的进程内存roll-out,然后把该进程的内存roll-in。在roll-out和roll-in的情况下,必定导致进程内存地址发生了变化,那为什么程序中的指针还能指向正确的地址呢?

      这是因为,程序中的指针实际上是,逻辑地址,并不是真实的物理地址。可以简单认为,逻辑地址就是相对于程序内存的相对地址。

    6、32位操作系统表示处理器一次可以处理32位的数据,64位操作系统表示处理器一次可以处理64位的数据。

  • 相关阅读:
    MyBatis查询没有数据返回值为list还是null--------采坑
    Java弱引用WeakReference详细讲解
    idea debug调试详细教程
    [Docker]Dockerfile指令
    [Docker]Dockerfile定制容器
    [Docker]tomcat 404
    [Docker]容器操作
    [Docker]镜像操作
    [Docker]docker-ce安装
    [CentOS7]安装界面直接修改eth0
  • 原文地址:https://www.cnblogs.com/nzbbody/p/3382952.html
Copyright © 2011-2022 走看看