Fork me on GitHub
侧边栏
上一页 1 ··· 108 109 110 111 112 113 114 115 116 ··· 135 下一页
摘要: 1 页式管理 1.1 分段机制存在的问题 分段,是指将程序所需要的内存空间大小的虚拟空间,通过映射机制映射到某个物理地址空间(映射的操作由硬件完成)。分段映射机制解决了之前操作系统存在的两个问题: 1. 地址空间没有隔离 2. 程序运行的地址不确定 不过分段方法存在一个严重的问题:内存的使用效率低。 阅读全文
posted @ 2018-11-28 17:54 yooooooo 阅读(1347) 评论(0) 推荐(0)
摘要: 到目前为止,我们只考虑了实时系统上的调度。事实上, Linux可以做得更好些。除了支持多个CPU之外,内核也提供其他几种与调度相关的增强功能,在以后几节里会论述。但请注意,这些增强功能大大增加了调度器的复杂性,因此我主要考虑简化的情形,目的在于说明实质性的原理,而不考虑所有的边界情形和调度中出现的奇 阅读全文
posted @ 2018-11-28 14:34 yooooooo 阅读(716) 评论(0) 推荐(0)
摘要: 1 分页机制 在虚拟内存中,页表是个映射表的概念, 即从进程能理解的线性地址(linear address)映射到存储器上的物理地址(phisical address). 很显然,这个页表是需要常驻内存的东西, 以应对频繁的查询映射需要(实际上,现代支持VM的处理器都有一个叫TLB的硬件级页表缓存部 阅读全文
posted @ 2018-11-25 12:14 yooooooo 阅读(2292) 评论(0) 推荐(0)
摘要: 1. 内核空间和用户空间 过去,CPU的地址总线只有32位, 32的地址总线无论是从逻辑上还是从物理上都只能描述4G的地址空间(232=4Gbit),在物理上理论上最多拥有4G内存(除了IO地址空间,实际内存容量小于4G),逻辑空间也只能描述4G的线性地址空间。 为了合理的利用逻辑4G空间,Linu 阅读全文
posted @ 2018-11-25 00:16 yooooooo 阅读(2399) 评论(0) 推荐(2)
摘要: 1 Linux如何描述物理内存 Linux把物理内存划分为三个层次来管理 层次| 描述 | 存储节点(Node) | CPU被划分为多个节点(node), 内存则被分簇, 每个CPU对应一个本地物理内存, 即一个CPU node对应一个内存簇bank,即每个内存簇被认为是一个节点 管理区(Zone) 阅读全文
posted @ 2018-11-24 21:53 yooooooo 阅读(3328) 评论(0) 推荐(1)
摘要: 1 内存管理域zone 为了支持NUMA模型,也即CPU对不同内存单元的访问时间可能不同,此时系统的物理内存被划分为几个节点(node), 一个node对应一个内存簇bank,即每个内存簇被认为是一个节点 首先, 内存被划分为结点. 每个节点关联到系统中的一个处理器, 内核中表示为 的实例. 系统中 阅读全文
posted @ 2018-11-23 11:58 yooooooo 阅读(7652) 评论(0) 推荐(2)
摘要: 1 内存节点node 1.1 为什么要用node来描述内存 这点前面是说的很明白了, NUMA结构下, 每个处理器CPU与一个本地内存直接相连, 而不同处理器之前则通过总线进行进一步的连接, 因此相对于任何一个CPU访问本地内存的速度比访问远程内存的速度要快 Linux适用于各种不同的体系结构, 而 阅读全文
posted @ 2018-11-21 00:45 yooooooo 阅读(2220) 评论(0) 推荐(4)
摘要: 在内核中代码调用过程难以跟踪,上下文关系复杂,确实让人头痛 调用dump_stack()就会打印当前cpu的堆栈的调用函数了。 如此,一目了然的就能看到当前上下文环境,调用关系了 假设: 遇到uvc_probe_video这么一个函数,不知道它最终是被谁调用到的,根据linux设备模型,初步推测,p 阅读全文
posted @ 2018-11-20 12:05 yooooooo 阅读(717) 评论(0) 推荐(0)
摘要: 1 前景回顾 1.1 UMA和NUMA两种模型 共享存储型多处理机有两种模型 均匀存储器存取(Uniform Memory Access,简称UMA)模型 将可用内存以连续方式组织起来, 非均匀存储器存取(Nonuniform Memory Access,简称NUMA)模型 1.2 UMA模型 传统 阅读全文
posted @ 2018-11-19 23:53 yooooooo 阅读(2462) 评论(0) 推荐(7)
摘要: Android的休眠唤醒主要基于wake_lock机制,只要系统中存在任一有效的wake_lock,系统就不能进入深度休眠,但可以进行设备的浅度休眠操作。wake_lock一般在关闭lcd、tp但系统仍然需要正常运行的情况下使用,比如听歌、传输很大的文件等。本文主要分析driver层wake_loc 阅读全文
posted @ 2018-11-19 09:33 yooooooo 阅读(1341) 评论(0) 推荐(0)
上一页 1 ··· 108 109 110 111 112 113 114 115 116 ··· 135 下一页