【精通底层】全面了解计算机系统

举报
小明的混沌之路 发表于 2022/07/31 13:29:27 2022/07/31
【摘要】 解读《深入理解计算机系统(CSAPP)》第1章计算机系统漫游,介绍计算机系统硬件组成,文中末尾有计算机系统体系架构图


​​前言:📫 作者简介:小明java问道之路,专注于研究计算机底层的博主,就职于金融公司后端高级工程师,擅长交易领域的高安全/可用/并发/性能的设计和架构📫 

🏆 Java 领域优质创作者、阿里云专家博主、华为云专家🏆

🔥 如果此文还不错的话,还请👍关注点赞收藏三连支持👍一下博主哦

本文导读

解读《深入理解计算机系统(CSAPP)》第1章计算机系统漫游,介绍计算机系统硬件组成,文中末尾有计算机系统体系架构图

一、系统的硬件组成

总线:

传递信息用,就是贯穿整个系统的一组电子管道。它携带信息字节并负责在各个部件之间传递。通常总线被设计成传送定长的字节块,也就是字(word)。32位是4个字节,64位是8个字节。

IO设备:

I/O(输入输出)设备是系统与外部世界的联系通道(磁盘、键盘鼠标、显示器)。每个I/O设备都通过一个 控制器或适配器 与I/O总线相连。控制器和适配器的主要区别在于他们的封装方式,控制器是I/O设备本身或者系统的主板上的芯片组(主控制电路板),而适配器则是一块插在主板插槽上的卡。无论如何,他们的功能都是在I/O总线和I/O设备之间传递信息。

主存:

是一个临时存储设备,在处理器执行程序时,用来存放程序与程序处理的数据。从物理上来讲是一组动态随机存取存储器(DRAM)芯片组成,从逻辑上来讲是一个线性的字节数组,每个字节都有其唯一的地址(数组索引),这些地址从零开始。

处理器:

中央处理单元(CPU)就是处理器,是解释或执行存储在主存中指令的引擎。处理器的核心是一个大小为一个字的存储设备(寄存器)称为程序计数器(PC)PC任何时候都指向主存中某条机器语言指令(地址)

我们看看下面分析运行程序时发生了什么

1、初始时,shell执行他的指令,等在我们输入,当我们从键盘输入()后,shell程序将字符逐一读入寄存器(通过io总线->io桥->系统总线->总线接口->寄存器),在把他放到内存中(寄存器->系统总线->IO桥->内存总线->主存储器)

2、当我们敲回车时,shell程序会执行一系列指令来加载可执行文件,这些指令将数据从磁盘copy到主存。(磁盘->磁盘控制器->IO总线->IO桥->内存总线->主存储器)

3、一旦代码和数据被加载到主存,处理器开始执行程序中的机器语言指令,这些指令将从主存复制到 寄存器文件,再从寄存器中复制到显示设备(主存->IO桥->总线接口->寄存器->总线接口->IO桥->IO总线->图形适配器)

二、系统之间利用网络通讯

网络提供了计算机系统之间的通信,网络也是IO设备

三、计算机系统

计算机系统是有硬件和系统软件组成的,它们共同协作运行应用程序。

计算机内部的信息被表示为 位 ,它们依据上下文有不同的解释方式。程序被其他程序翻译成不同的形式,开始时是ASCII文本,然后被编译和链接器翻译成可执行的二进制文件。

处理器读取并解释存放在主存的二进制指令,因为计算机花费大量的时间在内存、IO设备和CPU寄存器之间复制数据,所以将系统中的存储设备划分成层次结构——CPU寄存器在顶部,接着是多层的硬件高速缓存存储器、DRAM主存和磁盘。

操作系统内核是应用程序和硬件之间的媒介,它提供三个基本抽象:1、文件是对IO设备的抽象;2、虚拟内存是对主存和磁盘的抽象;3、进程是处理器

四、计算机系统架构图 

小结

解读《深入理解计算机系统(CSAPP)》第1章计算机系统漫游,介绍计算机系统硬件组成,文中配有计算机系统体系架构图、存储器层次结构图、CPU内部原理图以佐读者理解。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。