文章分类 - 1-Linux
记录Linux学习的点点滴滴
摘要:HDD的数据读写机制 HDD用磁片信息表示数据,并将这些磁片数据记录在被称为盘片的磁盘上。HDD读写数据的单位是扇区,而非字节。在HDD的盘片上,沿半径方向与圆周方向划分出了多个扇区,并为每个扇区分配了序列号。 HDD通过名为磁头的部件读写磁盘上各个扇区的数据。磁头安装在磁头摆臂的部件上,该部件令磁
阅读全文
摘要:Linux在访问外部存储器中的数据时,通常不会直接访问,而是通过"文件系统"来进行访问。 如果不存在文件系统,每一个访问外部存储器的程序都需要自己管理外部存储器中的所有数据的相关信息。 文件系统以文件为单位管理所有对用户有实际意义的数据块,并为这些数据块加上名称、位置和大小等辅助信息。它还规范了数据
阅读全文
摘要:高速缓存 计算机的运作流程: 根据指令,将数据从内存读取到寄存器 基于寄存器上的数据进行运算 把运算结果写入内存 与在寄存器上执行运算所耗费的平均时间相比,访问内存会消耗更多的时间,产生更长的延迟。 对于计算机系统来说,无论流程2的处理速度有多快,流程1和流程3都会成为性能瓶颈。 高速缓存的存在,正
阅读全文
摘要:Linux通过内核中名为内存管理系统的功能来管理系统上搭载的所有内存。 内存相关的统计 通过free命令获取搭载的内存总量和已消耗的内存量。 所有的数值单位都是KB total字段:系统搭载的物理内存总量 free字段:表面上的可用内存量 buff/cache字段:缓冲区缓存与页面缓存占用的内存。当
阅读全文
摘要:多进程运行原理 Linux内核具有进程调度器的功能,它使得多个进程能够同时运行。 一个CPU同时只允许一个进程 在同时允许多个进程时,每个进程都会获得适当的时长,轮流在CPU上执行处理 Linux会将多核CPU上的每个核心都识别为一个CPU。在本书中,我们将系统识别出来的CPU,称为逻辑CPU。另外
阅读全文
摘要:创建进程 在Linux中创建进程通常有两个目的: 将同一个程序分成多个进程进行处理(例如,使用Web服务器接收多个请求) 创建另一个程序(例如,从bash启动一个新的程序) 为了达成这两个目的,Linux提供了fork()函数与execve()函数(其底层分别请求名为clone()与execve()
阅读全文
摘要:用户模式下的程序有的以库的形式存在,有的作为单独的进程运行。 系统调用 进程在执行创建、操控硬件等依赖于内核的处理时,必须通过系统调用向内核发起请求。 进程控制(创建和删除) 内存管理(分配和释放) 进程间通信 网络管理 文件操作系统 文件操作(访问设备) CPU的模式切换 系统调用需要通过执行特殊
阅读全文
摘要:计算机简介 硬件结构 计算机硬件的基本示意图: 在计算机硬件上执行的流程为: 通过输入设备或网络适配器,向计算机发起请求 读取内存中的命令,并在CPU上执行,把结果写入负责保持数据的内存区域中 将内存中的数据写入HDD(硬盘)或SSD(固态硬盘)等存储器,或者通过网络发送给其他计算机,或者通过输出设
阅读全文

浙公网安备 33010602011771号