摘要:
理解inode inode是一个重要概念,是理解Unix/Linux文件系统和硬盘储存的基础。 我觉得,理解inode,不仅有助于提高系统操作水平,还有助于体会Unix设计哲学,即如何把底层的复杂性抽象成一个简单概念,从而大大简化用户接口。 下面就是我的inode学习笔记,尽量保持简单。 一、ino 阅读全文
摘要:
互联网协议入门(二) 上一篇文章分析了互联网的总体构思,从下至上,每一层协议的设计思想。 这是从设计者的角度看问题,今天我想切换到用户的角度,看看用户是如何从上至下,与这些协议互动的。 (接上文) 七、一个小结 先对前面的内容,做一个小结。 我们已经知道,网络通信就是交换数据包。电脑A向电脑B发送一 阅读全文
摘要:
互联网协议入门(一) 我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为"互联网协议"(Interne 阅读全文
摘要:
磁盘通常是计算机最慢的子系统,也是最容易出现性能瓶颈的地方,因为磁盘离 CPU 距离最远而且 CPU 访问磁盘要涉及到机械操作,比如转轴、寻轨等。访问硬盘和访问内存之间的速度差别是以数量级来计算的,就像1天和1分钟的差别一样。要监测 IO 性能,有必要了解一下基本原理和 Linux 是如何处理硬盘和 阅读全文
摘要:
网络的监测是所有 Linux 子系统里面最复杂的,有太多的因素在里面,比如:延迟、阻塞、冲突、丢包等,更糟的是与 Linux 主机相连的路由器、交换机、无线信号都会影响到整体网络并且很难判断是因为 Linux 网络子系统的问题还是别的设备的问题,增加了监测和判断的复杂度。 网络的监测是所有 Linu 阅读全文
摘要:
在操作系统里,虚拟内存被分成页,在 x86 系统上每个页大小是 4KB。Linux 内核读写虚拟内存是以 “页” 为单位操作的,把内存转移到硬盘交换空间(SWAP)和从交换空间读取到内存的时候都是按页来读写的。虚拟内存管理是 Linux 内核里面最复杂的部分。 在操作系统里,虚拟内存被分成页,在 x 阅读全文
摘要:
Linux系统和性能监控之CPU篇 性能优化就是找到系统处理中的瓶颈以及去除这些的过程。本文由sanotes.net站长tonnyom在2009年8月翻译自Linux System and Performance Monitoring系列文章。本文是系列的第一篇,讲述CPU方面的性能监控。 Linu 阅读全文
摘要:
进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。 1.计算机的核心是CPU,它承担了所有计算任务,它就像一个工厂,时刻在运行。 2. 假定工厂的电力有限,一次只能供给一个车间使用。也就是说,一个车间开工的时候,其他车间都必须停工。背后的含义就是,单个C 阅读全文