前面和大家分享了我在CPU、内存、磁盘上的一点浅薄的思考。今天开始我们讨论Linux里最重要的一个模块-网络模块。还是按照惯例来,让我们从一段最简单的代码开始思考。为了简单起...
前面和大家分享了我在CPU、内存、磁盘上的一点浅薄的思考。今天开始我们讨论Linux里最重要的一个模块-网络模块。还是按照惯例来,让我们从一段最简单的代码开始思考。为了简单起...
在前文《磁盘开篇:扒开机械硬盘坚硬的外壳!》和《拆解固态硬盘结构》中,我们了解到了硬盘基本单位是扇区。在《磁盘分区也是隐含了技术技巧的》中我们也了解了磁盘分区是怎么回事,但刚...
@哦小小树 我发现好多同学问我推荐资料,内存物理结构上我还真没看倒啥好书,我整理这篇文章的过程是自己产生了一个问题,然后带着问题各种google的。不过有几本书非常不错,《深入理解计算机系统》《深入理解linux内核》
为什么内存地址是以字节为单位?为什么C语言中内存地址0x0001和内存地址0x0002之间差的是一个byte,而不是一个bit? 通过内存的物理结构我们可以看出,因为在内存中最小单位就是字节。所以操作系统...
不知道你有没有遇到过当一个文件夹下文件特别多,在下面执行ls命令的时候要等好长时间才能展现出来的问题?如果有,你有想过这是为什么吗,我们该如何解决?要想深入理解这个的问题产生...
在前文《新建一个空文件是否占用磁盘空间?占用多少》中我们了解到了一个空文件的磁盘开销。今天我们再思考另外一个问题,假如我们给文件里只写入1个字节,那么这个文件实际的磁盘占用也...
今天我们来思考一个简单的问题。在Linux下你用touch命令新建一个空文件, 操作完成后,是否要消耗掉我们的一些磁盘空间?需要的话,大概能消耗多少?嗯,是的,这个问题简单的...
我们使用的计算机的全称叫电子计算机,前面有电子两个字,这说的是整个计算机中的核心元器件基本上都是电子单元组成的。但机械硬盘却是一个特殊的例外,它更多是用机械技术做出来的一个产...
前面几篇文章,主要围绕的是机械硬盘来说的。目前ssd目前应用也越来越广了,值得我们花精力琢磨琢磨。SSD硬盘是地地道道电子技术下的产品,因为不像机械硬盘IO时依赖两个耗时的机...
在前文《磁盘开篇:扒开机械硬盘坚硬的外衣!》中,我们了解了机械硬盘的物理构造,是由磁盘面,磁道、扇区等更小的单位组成的,如下图: 分区是操作系统对磁盘进行管理的第一步,这也是...
刚看了一下,上一次我分享完内存篇的时候是2019年12月25号。没想到在我们酝酿和打磨磁盘篇的这段时间里,我们的生活发生了如此大的变化。人类一直觉得自己是地球上所有生物的主宰...
我们公司的基础架构部有个云Redis平台,其中Redis实例在申请的时候可以自由选择需要的内存的大小。然后就引发了我的一个思考,Redis单实例内存最大申请到多大比较合适?假...
现代的开发语言除了C++以外,大部分都对内存管理做好了封装,一般的开发者根本都接触不到内存的底层操作。更何况现在各种优秀的开源组件应用越来越多,例如mysql、redis等,...
前面我们讨论了内存的工作原理,也进行了一些性能相关的测试。那么今天开始我们来看几个在实践中的应用。首先我们先从PHP开始。 2015年,PHP7的发布可以说是在技术圈里引起了...
现在的服务器物理机CPU一般都是多个CPU,核数也是十几甚至几十核。内存几十GB甚至是上百G,也是由许多的内存条组成的。那么我这里思考一下,这么多的CPU和内存它们之间是怎么...