随笔分类 - 计算机基础
零拷贝
摘要:零拷贝 Refs 用户缓冲区与内核缓冲区 sendfile DMA,映射,零拷贝, JavaNIO 传统IO cpu先从磁盘读取数据到内核缓冲区,然后拷贝到用户缓冲区。表现在代码中就是读取的时候先new一个buffer数组,然后读取进去。 如图,其中上下文切换和CPU拷贝是零拷贝主要优化的点。 一共
B,B+, 红黑树
摘要:B, B+, 红黑树记录 都是用于加快查找的平衡树,应用场合和性质有所不同,需要理解使用他们的原因,以及他们各种奇怪的自平衡的方式。 B树 B,B+树主要用于数据库、文件系统索引。具体如何是实现? 主要长这样,一个节点存储的有多个数据和子节点索引。 b树对于每个节点中的数据和子节点索引的数量有如下限
操作系统内核漫游
摘要:操作系统内核漫游(前传) 此文记录操作系统自底向上如何运行。因为学校的教学中大多数直接开始教操作系统中的很多算法(至少我是如此),导致我学完之后依然不知道他在整个计算机中的身份地位,也并不清楚他如何与计组以及汇编、C语言之间的关联。此笔记算是学习学校所谓的操作系统的感性的前置(前传)知识吧。感性是因
数值系统
摘要:
数值系统 知其然而知其所以然。 二进制整数表示方式 原、反、补码及其缺点和补码好处 原码 二进制的第一位表示符号位,剩下的位表示绝对值,例如: 2 > 0010 -2 > 1010 问题:做加法的时候需要额外判断两个数的正负,且存在+0和-0。 原码做计算要考虑额外考虑符号正负。 反码 反码解决了额
