美文网首页
CSAPP translation page 7

CSAPP translation page 7

作者: 木子9268 | 来源:发表于2019-07-13 23:25 被阅读0次

第6章详细的讲关于输入/输出设备像磁盘的工作. 在第10章, 你将要学习怎样使用Unix的输入/输出接口从应用程序连接设备. 我们关注一类(class of)特别有趣的设备(devices),即网络, 但是这个技术可以很好的概括其他种类的设备.

主存

    主存是一个暂时的存储设备,当处理器执行程序时保存程序和数据. 根本上,主存由一组(a collection of)动态随机存取存储器(DRAM)芯片(chips)组成. 逻辑上, 内存被组织成一个字节的线性数组(linear array), 每一个字节的唯一地址(address)(数组索引)从0开始. 通常,构成程序的每一条机器指令都可以由可变字节数(variable number of bytes)组成.数据项目长度和C程序通过内心的变化相一致.对应于C程序变量(variable)的数据项(data items)的大小随类型(type)的不同而变化. 例如, 在运行Linux的IA32计算机上, short类型的数据需要(requires)两个字节,int类,float类和4字节的lon类 和8字节的double类型.

    第6章更详细讲了像DRAM芯片等内存技术的工作以及它们如何组合以形成主存储器。

处理器(processor)

    中央处理器(central processing unit,CPU),或简单的处理器, 是解释(interprets)(或执行 excutes)存储在主存当中的指令的引擎. CPU的核心是被称为程序计数器(program counter,PC)的字长存储设备. 在任何时候(at any point in time), PC都指向(包含的地址)在主存当中的一些机器语言指令.

    从系统通电开始直到系统断电,处理器反复(repeatedly )执行(executes )程序计数器指向的指令并更新程序计数器指向下一条指令. 处理器重复执行程序计数器指向的指令,并更新程序计数器以指向下一条指令。处理器显示操作通过非常简单的指令执行模型,处理器似乎是根据其指令集体系结构(instruction set architecture)定义(defined)的非常简单的指令执行模型进行操作的.在这个模型中, 指令执行(execute)是一个很严格的序列(sequence), 执行一个单独的指令包含了运行一系列的步骤. 处理器读取程序计数器指向存储器(memory)当中的指令,解释(ibterprets)指令中的位,执行(performs)一些指令指示当中的简单操作,然后更新程序计数器,指向下一条指令, 它在内存(memory)中可能与刚刚执行的指令相邻(contiguous),也可能不相邻。

    这里仅仅只有一些简单的操作,他们围绕着主存,注册文件(register file), 和算术/逻辑单元(ALU). 注册文件是一个小的储存设备,由一组字大小的寄存器组成,它们每一个都有一个独特的(unique)名字. ALU计算新的数据和地址内容.  这里有一些简单操作的例子,CPU可以根据指令的请求执行这些操作:

相关文章

  • CSAPP translation page 7

    第6章详细的讲关于输入/输出设备像磁盘的工作. 在第10章, 你将要学习怎样使用Unix的输入/输出接口从应用程序...

  • CSAPP translation page 1

    1.1信息就是位(bits)+上下文(context) 我们的hello 程序生命开始就是一个源程序(或者称为一个...

  • CSAPP translation page 6

    总线 在整个系统中运行的是称为总线(buses)的电导管(electrical conduits)集合,它们在组件...

  • CSAPP translation page 3

    这里,GCC编译器驱动程序读取hello.c源文件然后翻译成一个可执行的目标文件hello. 翻译执行的4个阶段在...

  • CSAPP translation page 4

    旁注: GNU项目 GCC是CNU项目开发出来的许多实用工具之一.GNU项目是理查德·马修·斯托曼(Richard...

  • CSAPP translation page 10

    这本书当中的一个重要结论(lessons)之一就是,意识到高速缓存存储器的应用程序员能够利用(exploit)它们...

  • CSAPP translation page 8

    •加载:从主存复制一个字节或一个字到寄存器(register)里, 覆盖寄存器以前的内容. •储存:从寄存器复制一...

  • CSAPP translation page 9

    1.5高速缓存非常重要 这个简单的例子有重要的经验,系统花费大量的时间把信息从一个地方传送到另外一个地方. hel...

  • CSAPP translation page 2

    旁注: C编程语言的起源 C语言在1969年到1973年由贝尔实验室由丹尼斯•里奇(Dennis Ritchie)...

  • CSAPP translation page 13

    1.7.1进程 当程序例如hello程序运行在现代系统当中, 操作系统给我们了一个程序只运行在系统里面的错觉(il...

网友评论

      本文标题:CSAPP translation page 7

      本文链接:https://www.haomeiwen.com/subject/pfyvkctx.html