12 2022 档案
摘要:前言 我们从前面的cache 高数缓存中知道了, CPU 的访问 cache 部分的过程 (也就是下图的青色部分的过程) , 这个章节我们将会学习访问快表和缺页部分的处理 . 下面这个分页的过程是逻辑地址到物理地址的过程. 再访问页表之前会先访问快表 . 可以看到我们首先利用逻辑地址找到对应的页表项
阅读全文
摘要:问题 在cache 中访问的内存地址为何会带有 cache 相关的信息 ,动机是什么? 前言 平时只知道cpu 到内存之间还有一层 cache , CPU 要去主存找一个数据 ,第一反应肯定是到先到 cache 中找 ,如果找不到再去主存中去找, 要是找到了,直接就返回了 . 上面的过程实际就是通过
阅读全文
摘要:文章图片来自参考文章,图片非原创概述事务隔离级别可解决的问题 下面的章节将会解释脏读,不可重复度和幻读。MySQL 默认的事务隔离级别是可重复读(repeatable – read ) 。隔离级别读未提交(read – uncommited) 我们从名称上级就可以了解这个过程,读未提交,未commi
阅读全文
摘要:共享库 共享库的动机是什么 ,我们从前面的静态链接的时候学习到了静态链接库 ,可以知道静态链接库的缺点如下 : 这里有个问题 ,就是每个进程都拥有虚拟空间地址 ,然后共享库又只会有一个 ,那么共享库如何做到给各个进程共享呢? 这个问题我们放在了其他这一个章节 动态链接和静态链接的一个区别 自定义一个
阅读全文
摘要:前言 链接这个操作分为两个部分 : 符号解析 重定位 简单点说就是找到符号(如何找呢??通过符号表找到) ,然后将正确的地址填上 文章先从符号到符号解 回顾链接过程 符号的类型及相关的段 链接符号的类型 包括三种类型 全局符号 ,里面还分强弱 外部定的全局符号 本模块的局部符号 可以看一下下面的例子
阅读全文
摘要:前言 elf 中很多东西都用类似于java中 hashtable的结构来存储 ,例如储存各个节的信息有节头表 ,存储字符串,有字符串表等等. 概述 ELF header + 各种 section + section header table + String table + symbol table
阅读全文
摘要:读 <<程序员的自我修改--链接,装载与库>> 和 <<深入理解java虚拟机>> 前阵子复习了一下 final , 然后发现 final 有一个知识点和 JMM 有关 ,然后又想起了 JVM 相关的知识有点模糊 ,然后我又想起了之前看过一部分的一本书 . <<程序员的自我修改>> 书 这两本书陷入
阅读全文