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

沈阳做网站优化的公司seo搜索引擎优化课程总结

沈阳做网站优化的公司,seo搜索引擎优化课程总结,搭建一个平台,洛阳网站建设睿翼网络入驻洛阳原理概述 【linux】详解——库-CSDN博客 共享库被加载后,系统会为该共享库创建一个结构,这个结构体中的字段描述了库的各种属性。在内存中可能会加载很多库,每一个库都用一个结构体描述。把这些结构体用一些数据结构管理起来,系…

原理概述

【linux】详解——库-CSDN博客

共享库被加载后,系统会为该共享库创建一个结构,这个结构体中的字段描述了库的各种属性。在内存中可能会加载很多库,每一个库都用一个结构体描述。把这些结构体用一些数据结构管理起来,系统对库的管理就转化成了对数据的管理

系统对加载到内存的共享库的信息是很清楚的

进程地址空间示意图

【Linux】进程地址空间-CSDN博客

每个进程都会有自己的地址空间,地址空间中的共享区用来映射共享库。

CPU在代码区执行数据时需要用到库中的方法会根据编译时就给定的地址跳转到共享区,共享区的虚拟地址通过页表的映射找到物理内存中相应的数据,然后加载到CPU运算。

如果虚拟地址在页表中没有与对应的物理地址建立映射关系就会发生缺页中断,系统会把磁盘中的对应的数据加载到内存,再让虚拟地址和物理地址建立映射关系,然后这部分数据被CPU调度执行。

多个进程的页表可能会映射同一个库,即共享库可以被多个进程使用

当一个进程要对库中定义的全局变量做写入时,系统会检查检查该全局变量的引用计数,若库是被多个进程共享的,就会发生写时拷贝。一个进程对共享库的任何操作都不会影响其他进程。

线性地址虚拟地址逻辑地址进程地址空间,其实是一个概念。采用的是全0到全1的编址,用线性地址来描述这样的编址方式是一种很形象的叫法。

虚拟地址和进程地址空间是进程层面的叫法,而逻辑地址是可执行程序中的地址分配方式。

编译器给代码的编址方式是虚拟地址,CPU执行拿到的地址也是虚拟地址。在CPU中,内置了指令集,能让CPU完成一些简单的动作。

比如函数跳转,拿着该函数的地址跳转到相应的地址空间,把相应的地址进行页表映射,拿到物理内存中相应的数据加载到CPU中调度执行。

也就是说从编译器为代码分配地址到CPU调度执行的地址都是虚拟地址,如果想拿到具体的数据只需通过虚拟地址在页表中找到对应的物理地址从而拿到相应的数据。

如果虚拟地址并没有在页表中与物理地址建立映射关系,即相应的数据并没有被加载到内存中,就会发生缺页中断,数据会从磁盘加载到内存,然后对应的虚拟地址与物理地址建立映射关系。

动态库在编译时会带上-fPIC选项,该选项表示与位置无关码

在编译库代码时,不会按逻辑地址的方式分配。

而是采用偏移量的方式,这样任意位置的代码数据可以映射到共享区中的任意位置,只需要知道库的开始位置被加载到哪里,只需用开始位置的地址加偏移量即可拿到该指令的虚拟地址,然后就是与页表映射的一系列操作了。

http://www.ritt.cn/news/25023.html

相关文章:

  • 超低价的郑州网站建设什么是核心关键词
  • wordpress生成不了sitemapseowhy教研室
  • 免费商城网站申请seo竞价排名
  • 河南省建设厅网站103百度推广总部客服投诉电话
  • 网站开发和java能打开各种网站的搜索引擎
  • 中国家具网快速排名优化公司
  • 城乡建设环保部网站今日头条新闻最新事件
  • 买医疗产品的网站建设怎么申请网址
  • 台州电子商务网站开发广州今天刚刚发生的重大新闻
  • 婴儿衣服做的网站好seo视频教程汇总
  • 手机网站建设制作教程视频百度图片搜索图片识别
  • 微信小程序文档seo站外优化最主要的是什么
  • 浙江商会网站建设策划方案公众号软文素材
  • 汕尾网站建设网络推广有哪些常见的推广方法
  • 利用花生壳做网站利搜网站排名软件
  • 浙江省住房建设厅网站网络策划是做什么的
  • 莆田有哪几家做网站设计的搜索引擎优化的英文缩写
  • 深圳品牌策划设计方案什么是淘宝seo
  • 微山网站建设公司百度正式员工工资待遇
  • 建设联结是不是正规网站seo运营是做什么的
  • 网店推广要多少钱武汉seo管理
  • 有趣网址之家 收藏全球最有趣的网站关键词搜索量查询
  • 静态网站 后台目前疫情最新情况
  • 房地产公司如何网站建设优化搜狗排名
  • 济南 网站建设公司 医疗google首页
  • 网站被挂黑链网站建站方式有哪些
  • wordpress手机端网站模板下载泰安做网站公司
  • 世界十大绝美现代建筑seo案例分析
  • 亚马逊网站如何做商家排名全网推广方案
  • 网站建设特效大全真正免费的建站