自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 【思维随笔】库需要具备什么样的特性才能在各个进程间实现真正共享?

问题:什么是真正的共享? 回答:一份代码放之四海皆可用;说人话就是一个SO的代码段被加载到内存中后,依赖该SO的进程只要把SO的代码对应的物理页映射到自己的虚拟地址空间中就可以直接访问使用了,也就是所有的进程都共享一份存放了SO代码的物理内存,而不是每个进程都有一份代码副本(太浪费物理内存) 问题:怎么情况下进程才需要单独拷贝一份SO的代码给自己用? 回答:SO在编译的时候,生成的指令代码中使用了绝对地址寻址模式,这种情况下符号只能放在这个绝对地址上才能被访问到(说人话举例子呢?),编译链接过程中我们

2022-10-01 02:36:37 114

原创 编译地址与加载地址与运行地址

来自虚拟化课2 建立了一个临时页表,因为xen加载的地址可能与编译时指定的地址是不一致的,这种情况下我们会建立一个页表,对他们进行偏移映射,达到虚拟地址与编译地址是一致的效果,这样我们就不用做一些relocation的动作了,紧接着就是将MMU使能与打开,到这里就结束了一些简单的初始化 链接脚本中指定的就是各个符号的编译链接地址(我们就简称为编译地址来方便理解吧) 镜像加载到内存某个地址上,这个地址就是这个镜像加载后的起始运行地址,如果这个加载的起始运行地址 与 镜像中的起始编译地址

2022-09-30 11:41:11 311

原创 好的开始,就是成功的一半

个人笔记

2022-07-28 20:17:03 76

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除