- 博客(6)
- 资源 (4)
- 收藏
- 关注
原创 计算机底层知识拾遗(五)理解块IO层
上一篇讲了文件系统计算机底层知识拾遗(四)理解文件系统,说了文件按照inode-block的结构存储在磁盘上。这篇说说操作系统是如何来读取磁盘上的块的Linux把设备分为三种1. 块设备,用来永久存储文件信息的,支持顺序访问和随机访问(按块号访问),比如磁盘,光盘等2. 字符设备,只能顺序访问,比如键盘3. 网络设备,只能顺序访问,比如网卡,蓝牙设备我们常说的一
2015-01-29 14:15:15 9482
原创 计算机底层知识拾遗(四)理解文件系统
操作系统的很多核心组件都是相互关联的,比如虚拟内存管理,物理内存管理,文件系统,缓存系统,IO,设备管理等等,都要放在一起来看才能从整体上理解各个模块到底是如何交互和工作的。这个系列的目的也就是从整体上来理解计算机底层硬件和操作系统的一些重要的组件是如何工作的,从而来指导应用层的开发。这篇讲讲文件系统的重要概念,为后面的IO系统做铺垫。文件系统主要有三类1. 位于磁盘的文件系统,在
2015-01-29 13:25:38 8204
原创 计算机底层知识拾遗(三)理解磁盘的机制
磁盘是一种重要的存储器,位于主存结构的下方,是永久存储的介质。在计算机底层知识拾遗(一)理解虚拟内存机制 这篇中说了虚拟内存是面向磁盘的,理解磁盘的工作原理对理解计算机的很多概念有很大的帮助。尤其是在数据库和分布式存储领域,要经常和磁盘打交道。磁盘这块主要有几个部分的概念:1. 磁盘的基本结构和工作原理2. 如何在虚拟内存机制下与内存高效地交换数据3. 磁盘如何保证数据存储
2015-01-22 18:45:39 7051
原创 Java中如何获得文件的inode信息
熟悉Linux操作系统的同学应该知道Linux文件系统采用了inode - block的结构来表示和存储文件,inode包含了文件的元数据信息,block存储实际的文件内容。Linux把一切的IO都抽象成文件,那么目录和普通文件一样,也都是文件。每个文件都有一个唯一的inode号。可以用stat命令来查看一个文件的inode信息,比如下面这个文件 stat log.txt可
2015-01-21 11:56:00 8689 1
原创 计算机底层知识拾遗(二)深入理解进程和线程
关于进程和线程,大家总是说的一句话是“进程是操作系统分配资源的最小单元,线程是操作系统调度的最小单元”。这句话理论上没问题,我们来看看什么是所谓的“资源”呢。什么是计算机资源经典的冯诺依曼结构把计算机系统抽象成 CPU + 存储器 + IO,那么计算机资源无非就两种:1. 计算资源2. 存储资源CPU是计算单元,单纯从CPU的角度来说它是一个黑盒,它只对
2015-01-16 11:16:43 9794 3
原创 计算机底层知识拾遗(一)理解虚拟内存机制
这个系列会总结计算机,网络相关的一些重要的底层原理。很多底层原理大家上学的时候都学过,但是在学校的时候大部分的同学都是为了应付考试而学习,过几天全忘了。随着工作的时间越久,越体会到这些基础知识的重要性。做技术和练武功一样,当你到了一定的阶段,也会遇到一个瓶颈,突破了你的眼界就会大不同,突破不了,只能困在原地无法成长。我自己深有体会,这些基础知识,底层原理是助你打破瓶颈的灵丹妙药。当理解了一些底层原
2015-01-12 16:33:34 18846 5
聊聊锁的那些事
2015-09-22
深入理解Java内存模型
2015-09-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人