Gitlib Gitlib
首页
  • 分类
  • 标签
  • 归档
  • Golang开发实践万字总结
  • MySQL核心知识汇总
  • Redis实践总结
  • MQ实践万字总结
  • Docker数据持久化总结
  • Docker网络模式深度解读
  • 常用游戏反外挂技术总结
  • 读书笔记
  • 心情杂货
  • 行业杂谈
  • 友情链接
关于我
GitHub (opens new window)

Ravior

以梦为马,莫负韶华
首页
  • 分类
  • 标签
  • 归档
  • Golang开发实践万字总结
  • MySQL核心知识汇总
  • Redis实践总结
  • MQ实践万字总结
  • Docker数据持久化总结
  • Docker网络模式深度解读
  • 常用游戏反外挂技术总结
  • 读书笔记
  • 心情杂货
  • 行业杂谈
  • 友情链接
关于我
GitHub (opens new window)
  • 操作系统

    • 学习笔记

      • 鸟哥的Linux私房菜学习笔记01-计算机概论
        • 鸟哥的Linux私房菜学习笔记02-磁盘分区
        • 鸟哥的Linux私房菜学习笔记03-日志文件
        • 寄存器
        • 汇编语言
        • 零拷贝
        • 内存管理单元MMU
        • 内存管理基础知识
        • 文件系统
        • 系统调用
        • 写时复制
        • 虚拟地址
        • 虚拟内存
        • 中断
        • CPU
        • DMA
        • mmap
        • Swap分区
      • Shell

      • Linux命令

      • RAID分类详解
      • Page Cache与Page回写
      • 磁盘IO与swap分区
    • 计算机网络

    • 数据结构和算法

    • MySQL

    • Redis

    • Nginx

    • MongoDB

    • 其他

    • 计算机基础
    • 操作系统
    • 学习笔记
    Ravior
    2011-02-14
    目录

    鸟哥的Linux私房菜学习笔记01-计算机概论

    # 计算机硬件的五大单元

    依据外观,计算机主要分为三部分:输入单元、中央处理器、输出单元

    输入单元: 键盘、鼠标等

    中央处理器(CPU): 算术逻辑、控制、记忆等单元

    输出单元:屏幕、打印机等

    整台主机的重点在于中央处理器(CPU),CPU为一个具备特定功能的芯片,里头含有微指令集。CPU的主要工作在于管理和运算,因此CPU内有可以细分为算术逻辑单元和控制单元,其中算术逻辑单元主要负责程序运算与逻辑判断,控制单元主要协调各组件与各单元间的工作。

    CPU读取的数据都是从内存读取来的,内存内的数据则是从输入单元传输进来的,而CPU处理完的避暑也必须先写回内存中,最后数据才从内存传输到输出单元。

    综上,计算机其实是由输入单元、输出单元、CPU内部的控制单元、算术逻辑单元与内存五大部分组成。

    计算机五大部分

    # CPU

    CPU内部已经包含一些小指令集,这些指令集目前有两种设计理念,分别为:精简指令集(RISC)与复杂指令集(CISC)。

    • 精简指令集(Reduced Instruction Set Computing, RISC): 指令集较为精简,每条指令执行时间短,指令的执行性能佳,但是要做复杂的事情,就要由多个指令来完成。常见的RISC指令集CPU主要为ARM系列,大量用于移动设备、导航系统、网络设备(交换机、路由器)等。

    • 复杂指令集(Complex Instruction Set Computing, CISC):指令集多而且复杂,每条指令执行时间较长,单每个指令可以处理的工作较为丰富。常见的CISC指令集CPU有AMD、Intel等x86架构的CPU。

    最早Intel发展出来的CPU代号8086,后面依此架构又开发出80286、80386等,因此这种架构的CPU成为x86架构。

    x86架构的CPU被大量用于个人计算机。

    主流x86开发商(AMD,Intel)的CPU架构并不兼容,所以两大主流CPU所需要的主板芯片组设计也不太相同。

    主板

    整个主板上最重要的就是芯片组,芯片组又分为两个桥接器来控制各组件的通行。

    北桥芯片: 负责连接速度较快的CPU、内存与显卡等组件; 南桥芯片: 负责连接速度较慢的周边接口,包括硬盘、USB、网卡等。

    北桥的总线称为系统总线,因为是内存传输的主要信道,所以速度较快;南桥的总线被称为的输入输出(I/O)总线,主要用于“联系“硬盘,USB、网卡等接口设备。

    AMD的芯片组架构有点不同,内存是直接和CPU通信而不通过北桥,这样理论上可以加速CPU与内存的传输速度。

    CPU每次能够处理的数据量称为字组大小,字组大小依据CPU的设计分为32位和64位。我们现在所称的计算机是32位或64位主要是依据CPU解析的字组大小而来的。

    # 存储器

    内存分为RAM和ROM两种。RAM具体即为主板上插入的内存条,ROM具体为主板上一个内存芯片,BIOS就是被写死在ROM上的一套程序。

    另外,因为内存和CPU的数据需要经过北桥传送,为了提高CPU运行性能,目前CPU内部都会集成第二层缓存(L2 Cache).

    # 显卡

    显卡主要也是通过北桥芯片与CPU、内存等同学,对于图形影像来说,显卡也是需要高速运算的一个组件,所以数据传输也是越快越好。

    # 硬盘

    硬盘主要由盘片、机械手臂、磁头和主轴马达所组成。实际运行时,主轴马达让盘片转动,然后机械手臂可伸展让读写头在盘片上进行读写操作,硬盘通过有多个盘片。

    盘片抽象化为一个多个同心圆绘制出的饼形, 每一个圆称为磁道(Track),磁道是由N多个扇区(Sector)组成,扇区是磁盘存储的最小单位。在所有盘片上的同一个磁道可以组成一个柱面(Cylinder), 柱面是分割磁盘的最小单位。

    硬盘

    根据接口不同,硬盘传输接口分两种:IDE接口和SATA接口。(IDE接口基本被淘汰)。

    IDE

    SATA 硬盘上含有一个缓冲存储器,这个内存主要是将硬盘内常用的数据缓存起来,加速读取性能。主流的硬盘可达16M左右的内存大小。

    # 文字编码

    常用的英文编码表为ASCII系统,这个编码系统中,每个符号(英文、数字或符号等)都会占用1B的记录,因此,总共会有2>8=256中变化。而中文的编码系统,目前最常用的big5(简体中文是gb2312)这个编码表,每个中文字会占用2B,理论上最多可以有2>16=65536,即最多可达6万多个中文字。

    为了兼容各种编码,国际组织ISO/IEC制定了Unicode编码系统,即UTF8码。

    #Linux
    上次更新: 2022/12/01, 11:09:34
    鸟哥的Linux私房菜学习笔记02-磁盘分区

    鸟哥的Linux私房菜学习笔记02-磁盘分区→

    最近更新
    01
    常用游戏反外挂技术总结
    11-27
    02
    Golang开发实践万字总结
    11-11
    03
    Redis万字总结
    10-30
    更多文章>
    Theme by Vdoing | Copyright © 2011-2022 Ravior | 粤ICP备17060229号-3 | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式