计算机系统架构

1. 计算机系统架构
2. 关于虚拟机
3. 基础知识
4. 文件和目录管理
5. 文件压缩和解压缩
6. 查看和处理文件内容
7. 文本编辑器VIM
8. Linux安装软件
9. 用户和权限管理
10. PC网络管理
11. 系统状态管理
12. kali部分用法

〇、前言

(一)计算机组成

  1. 计算机应用程序
  2. 操作系统、编译原理、计算机网络
  3. 计算机体系结构
  4. CPU/GPU、内存/硬盘、显示器/键盘

(二)发展历史

1. 图灵理论

计算的本质是一种机械运动,但它需要信息(指令)控制

2. 香农

《继电器与开关电路的符号分析》
将电路开关和布尔代结合起来

3. 冯·诺依曼体系结构

一般的计算机的组成:控制器,运算器,存储器,输入设备和输出设备

3. 发展历程
  • 1946 电子管计算机
  • 1956 晶体管计算机
  • 1964 集成电路计算机
  • 1972 超大规模继承电路计算机

一、计算机发展历史

二、计算机硬件

(一)CPU 中央处理器

解释指令 处理数据

1. 组成
  • 控制单元(Control Unit):发送控制指令,完成数据处理整个过程中的调配工作
  • 算术逻辑单元 ALU(Arithmetic Logic Unit):完成各个指令以便得到程序最终想要的结果
  • 存储单元:发原则储存原属数据以及运算结果
    (大规模 高精度)

芯片有很多种类
GPU 图形处理单元 (适合大量吞吐的 重复性强的工作)
NPU 神经网络处理单元
FGCA 现场可编程门

2. 参数
  • 核心数:物理核心数(插槽)
  • 线程: 超线程技术、逻辑处理器
  • 频率: 工作频率,1s 产生的脉冲信号
  • 32 位和 64 位: CPU 一次能处理的位数
3. CPU 指令集和架构
  • 指令是用来控制硬件的,经过编译后:01101 的电信号

  • 复杂指令集(Complex Instruction Set Computer): 每个指令做复杂动作,完成操作需要较少的指令【庞大】/Intel X86/ PC 端较多

  • 精简指令集(Reduced ISC): 每个指令做简单动作,完成操作需要很多指令【灵活】/ARM、RISC-V、MIPS/ 移动端较多

(二)内存

用来临时存储 CPU 的运算的数据
CPU 不可以操作硬盘 需要写入内存再由 CPU 操作(CPU 造价高 存储空间宝贵)

1. 虚拟内存

可以让程序认为地址是连续、安全的

2. 区分

RAM 运行内存(电脑的)
ROM 存储空间(手机的)(容量)

3. 工作频率

SDRAM 100 133 166 200
DDR 200 2666 333 400
DDR2 400 -1066
DDR3 800-2133
DDR4 2133-3200
DDR5 4800 5200 5600…

(三)硬盘(外部存储器)

1. MHDD 机械盘

/3.5 寸机械盘,2.5 寸机械盘/
(Mechanical Hard Disk Drive,HDD)机械盘是一种使用旋转磁盘和移动读写磁头的存储设备。它由一或多个可旋转的磁盘组成,在磁盘上有磁道和扇区存储数据。当读取或写入数据时,机械盘需要将读写磁头定位到正确的磁道上。机械盘具有较大的存储容量和相对较低的成本,常用于存储大量数据,如文档、照片、视频等。
机械盘的优点包括较大的存储容量、较低的成本和广泛的兼容性。然而,由于机械盘需要机械部件的运动,其读写速度较慢,平均寻址时间和访问延迟较高。

2. SSD 固态盘

/2.5 寸 SATA 固态盘,M.2 固态盘/
(Solid State Drive,SSD)固态盘是一种使用闪存存储芯片实现数据存储的设备。它没有机械部件,数据存储在闪存芯片中,通过电子方式进行读取和写入。相比于机械盘,固态盘具有更快的读写速度、更低的访问延迟和更高的可靠性。
固态盘的优点包括快速的数据访问速度、较低的能耗、抗震抗摔等特性。它适用于需要高性能和快速响应的场景,如操作系统安装盘、游戏载入盘等。
然而,固态盘的存储容量相对较小,价格也较高。因此,在实际应用中,常常将固态盘用作操作系统和常用应用程序的安装盘,而将机械盘用作数据存储盘,以兼顾性能与存储容量的平衡。

3. 本质区别

机械硬盘:是通过磁场的磁化去磁实现写入读取等操作
固态硬盘:利用闪存颗粒,压缩了体积,提高了速度

(四)输入输出设备

输入: 键鼠,麦克风,摄像头,扫描仪,手柄
输出:显示器,扬声器

(五)特殊

1. GPU

显卡:GPU(Graphics Processing Unit),通常称为显卡或图形处理器,是一种用于处理图形和影像计算的专用硬件设备。

GPU 最初是为了加速计算机图形渲染而设计的,主要用于游戏、电影制作、计算机辅助设计等需要大量图形处理的领域。与传统的中央处理器(CPU)相比,GPU 具有高并行计算能力,能够同时处理大量数据和执行多个任务。
GPU 的主要特点包括:

  1. 并行计算能力:GPU 拥有大量的处理单元和并行计算结构,可以同时处理多个数据和任务,加快计算速度。
  2. 图形渲染能力:GPU 有专门的图形渲染管道和纹理单元,能够高效地进行图形渲染和图像处理,提供更好的视觉效果。
  3. CUDA 和 OpenCL 支持:NVIDIA 的 CUDA 和 Khronos Group 的 OpenCL 是流行的 GPU 编程框架,可以利用 GPU 的并行计算能力进行通用计算。
  4. 图形内存:GPU 通常具有独立的图形内存,用于存储图像、纹理和其他图形数据,提供高速访问和处理。
  5. 显存带宽:GPU 的显存带宽决定了它能够传输和处理图像数据的速度,较高的带宽可以提高图形渲染和计算性能。
2. 声卡

不是单纯输入或输出,音频接口卡或声音适配器,是计算机中用于处理音频输入和输出的硬件设备。它可以将数字音频信号转换为模拟音频信号,并将音频信号发送到扬声器、耳机或其他音频设备上。

(六)程序运行原理

1. 二进制

二进制(Binary)是一种计数系统,只包含两个数字 0 和 1。这是一种非常重要的数制,尤其在计算机领域被广泛应用。
在二进制系统中,每个数字位代表一个权值。二进制在计算机中扮演着重要的角色,因为计算机内部的所有信息都以二进制形式存储和处理。使用二进制编码,计算机可以进行逻辑运算、数据存储和传输等操作。同时,二进制还可以通过编码方式表示其他形式的数据,如文字、图像和声音等。
(前苏联有三进制.的)

2. 编程语言
  1. 第一代 机器语言
    最底层的二进制代码语言
    01011
    操作复杂,直接和硬件交互,速度快
  2. 第二代 汇编语言
    用英文字母或符号串来代替操作
    LOAD A
    ADD B
    STORE C
    需要编译器翻译后给机器
  3. 第三代 高级汇编语言
    贴近自然语言,不直接操作硬件,可移植
    高级语言编码简单,特性较多
3. 从源代码到可执行文件
  • 源程序
  • 编译器
  • 汇编语言程序
  • 汇编器
  • 机器代码
  • 连接器、加载器
  • 目标机器代码

三、操作系统

(一)综述

Operating System,简称 OS,是计算机系统中的一种软件,它管理和控制计算机的硬件和软件资源,为用户和应用程序提供服务和接口。

  1. 管理硬件资源:操作系统负责管理计算机的硬件资源,包括处理器、内存、硬盘、输入输出设备等。它分配和调度这些资源,以提高计算机的性能和效率。
  2. 提供用户接口:操作系统提供了用户与计算机系统交互的接口,包括图形用户界面(GUI)和命令行界面(CLI)。用户可以通过这些界面执行操作、运行程序、管理文件等。
  3. 管理文件系统:操作系统管理计算机上的文件系统,包括文件的创建、读写、删除等操作。它还负责文件的组织和存储,确保文件的安全性和可靠性。
  4. 进程管理:操作系统管理计算机上运行的进程(程序的执行实例)。它分配和调度进程的执行顺序,控制进程的资源访问和通信,以确保系统的稳定性和效率。
  5. 内存管理:操作系统管理计算机的内存资源,包括内存的分配、回收、保护和虚拟内存等。它确保不同程序之间的内存空间隔离,并优化内存的使用效率。
  6. 设备驱动程序:操作系统提供设备驱动程序来管理和控制计算机的输入输出设备,如打印机、键盘、显示器等。它使应用程序可以方便地与设备进行交互。

(二)个人电脑操作系统

win10.win11 mac…

(三)服务器操作系统

客户端 Client -> 网络 -> 服务端(服务器)Server

1. 软件架构

C/S 架构 Client/Server

  • 客户端:迅雷,qq,wx…
  • 特点:需要安装和升级,占用资源多,性能高

B/S 架构 Browser/Server

  • 浏览器:CHrome,Edge…
  • 站点:百度,知乎…
  • 特点:不用安装,跨操作系统,占用资源低
2. 服务器的组成部分
  • 服务器硬件(对环境要求严格)

  • 服务器操作系统
    Windows Server/ / windows
    CentOS/Redhat/Ubuntu/Debian/ /linux
    SUN Solatris/SBSD Unix/ /unix

  • HTTP 容器(Tomcat,Apache,Nginx)
    监听一个 HTTP 的端口,提高 HTTP 协议访问(默认端口 http80 https443)

  • 应用程序(应用服务器)
    各种编程语言开发的软件项目
    Java PHP Python Ruby Go


四、Linux 系统简述

(一)为什么学习 Linux

  1. 使用网络的程序,都有服务器
  2. 服务器大部分是 Linux 操作系统

(二)学 linux 的要点

  1. 先学习重点
  2. 分门别类的学
  3. 不要强行记命令
  4. 多用,自然熟练

(三)Linux 内核

  1. 内核(只有操作系统的核心功能): 设备驱动、文件系统、进程管理、网络通信…
  2. 查询内核版本
- www.kernel.org
-(cat /proc/version 或者 uname -a 查询内核)
  1. 版本号含义 Linux 3.10.0-514.el7.x86_64
  2. 发行版: Distribute

Logo

一起探索未来云端世界的核心,云原生技术专区带您领略创新、高效和可扩展的云计算解决方案,引领您在数字化时代的成功之路。

更多推荐