当前位置: 首页 > news >正文

导航网站php下载手机版app

导航网站php,下载手机版app,招聘模板制作app,wordpress头部加导航目录 进程地址空间#xff0c;页表#xff0c;物理内存 什么叫作地址空间#xff1f; 如何理解地址空间的区域划分#xff1f; 地址空间结构体 为什么要有地址空间#xff1f; 页表 cr3寄存器 权限标记位 位置标记位 其他 每个存储单元是一个字节#xff0c;一…目录 进程地址空间页表物理内存 什么叫作地址空间 如何理解地址空间的区域划分 地址空间结构体 为什么要有地址空间 页表 cr3寄存器 权限标记位 位置标记位 其他 每个存储单元是一个字节一共有2^32个字节大概有4G。 栈往下走堆往上走。 static修饰的局部变量编译的时候会被编译到全局数据区。 如下图父子进程访问同一个变量子进程修改了一下变量如何做到同一个地址却读到了不同的内容 答因为这个地址不是物理地址这个地址是虚拟地址或线性地址平时语言用的地址都是虚拟地址。 进程地址空间页表物理内存 创建父进程时系统会创建对应的PCB进程对应的代码和数据会加载到内存同时PCB还能找到代码和数据。 创建父进程 实际上并没有这么简单创建父进程后有了PCB后系统还要为该进程创建进程地址空间页表。 进程用的地址是进程地址空间里面的虚拟地址。 页表存放的是虚拟地址和物理地址的映射。 假设定义一个变量那么系统要在物理内存中为这个变量开辟一个空间这个变量有一个物理地址和一个虚拟地址进程通过页表将虚拟地址转成物理地址实现访问。 创建子进程 如果这个父进程创建了一个子进程为了体现进程独立性子进程会拷贝父进程的PCB进程地址空间页表。 子进程的PCB大部分值和父进程一样少部分需要自己修改。 进程地址空间和父进程一样所以虚拟地址也一样。 页表和父进程一样所以能实现数据共享代码共享因为虚拟地址物理地址和父进程都一样。 字进程修改数据 当子进程要修改数据时如果系统发现这个位置的数据是和父进程共享的那么此时系统会自动进行写时拷贝也就是在物理内存上另开辟一个新的空间然后当前值拷贝过去然后修改页表对应的物理地址此时再允许你写入这个过程不会影响虚拟地址。        什么叫作地址空间 地址总线排列组合形成的范围就是地址空间在32位计算机中地址总线有32位从全0到全1有2的32次方种组合每一种组合可以标识一个字节所以这个空间大约有4G。 如何理解地址空间的区域划分 假设小胖和小花是同桌中间有一条38线划分了他们的区域只需记录这块区域的起始位置和结束位置就可以划分这段区域。 划分区域的变大变小只需要调整起始位置或结束位置的数值即可。 小胖的空间范围是1到50他可以访问范围内的所有数据。在地址空间范围内每一个最小单位都有自己的地址都可以被小胖直接使用。 所以进程地址空间本质是描述该进程可使用的范围空间大小地址空间存在各种区域划分划分方法是记录该区域的起始和结束位置。 地址空间结构体 地址空间本质是系统的一个结构体对象类似PCB地址空间结构体存放的是区域的起始结束位置。 进程创建时系统会创建PCB也会创建一个虚拟地址空间对象PCB有个指针可以找到这个对象。 为什么要有地址空间 物理地址空间只有一个虚拟地址空间每个进程都有一个进程申请空间系统就给每个进程都以为自己拥有全部的地址空间。 第一个原因虚拟地址空间可以让进程以统一的视角看待内存。 第二个原因虚拟地址空间可以让进程访问内存时有一个虚拟地址转化物理地址的过程在这个过程可以对寻址请求进行审查异常访问直接拦截从而保护了物理内存。   第三个原因地址空间和页表将进程管理模块和内存管理模块解耦。 页表 cr3寄存器 CPU有个cr3寄存器里面保存着页表的起始地址。进程切换时会把这个地址带走所以不用担心找不到自己的页表。 权限标记位 页表还有第三个位置是标记位代表访问区域的读写权限如果你向一个只读区域进行写操作就会被拦截。  所以说为什么代码段字符常量区是只读的难道第一次写入不是写入吗 因为写入物理内存时没有读写要求而当你用虚拟地址访问时页表有标志位判断该位置的读写权限。 位置标记位 页表还有一个标志位表示对应的代码和数据在磁盘还是在内存。当我们读取虚拟地址时先看标志位如果在内存就直接访问物理地址如果在磁盘就会触发缺页中断系统会把对应的数据加载到内存里并建立虚拟地址和物理地址的映射然后重新访问。 惰性加载方式虚拟地址先填上物理地址不填需要时再填上。 所以创建进程时系统先给你创建PCB虚拟地址空间页表但是对应的代码和数据不给你加载到内存等你要访问时再进行缺页中断惰性加载从而实现边使用边加载。 其他 命令行参数的空间在栈的上面。 父子进程虚拟地址一样物理地址不同修改数据只会改变页表右侧的地址。
http://www.hkea.cn/news/14584993/

相关文章:

  • 建立网站怎么申请流程平台
  • 网站下拉菜单html做多大选择建设网站公司要注意什么
  • excel做网站页面布局青岛百度网站排名
  • 龙岗网站建设价格建个网站多少费用
  • 换模板搭建网站怎么做品牌市场营销策略
  • 网站收索功能怎么做网站开发一般要哪些开发工具
  • 阜阳网站是沧州兼职网站建设
  • 网站建设知名公司排名自己接单赚钱app
  • 肇庆网站制作策划淮北市建筑
  • 渭城区住房和城乡建设局网站朔州网站建设收费
  • 免费做app的网站哪个好深圳商业营销厅设计公司
  • 网站开发哪些公司张家港外贸网站建设
  • 局部翻新装修公司公司seo推广营销网站
  • 做运动特卖的网站自己设计logo软件
  • 怎样做网站营销做公众号可以看的网站
  • 重庆网站建设项目网站被做站公司贩卖
  • 二学一做网站点击网站出现微信二维码的链接怎么做
  • 衡阳市建设局网站手机网站设计制作公司
  • 建设铝合金窗网站宠物店网站模板
  • asp+sql server典型网站建设案例 光盘顶尖文案
  • 自建网站餐饮服务提供者应当在通信主管部门备案后网站制作素材代码
  • 企业网站开发周期网站模板安装出现预先建设数据库
  • 公司建立网站的意义抖音代运营方案及报价
  • 帝国cms做微网站怎样做ppt建网站
  • 什么网站比较容易做权重怎么做网站内链
  • 网站平台建设是什么成都网站空间
  • 长沙建网站设计做的好的公司网站
  • 三亚市建设局官方网站朋友圈信息流广告投放价格
  • 济宁网站建设软件一级造价工程师报名时间
  • 做网站做得好的公司有哪些电商系统的哪家好