zoukankan      html  css  js  c++  java
  • 操作系统连载(1):汇编语言

    最近在看操作系统原理,理解操作系统原理必须理解汇编语言和内存模型。

    一、寄存器

    CPU和寄存器的交互:

    CPU  <--- > 寄存器<--- > 缓存<--- >内存

    寄存器的工作方式很简单,只有两步:(1)找到相关的位,(2)读取这些位。

    内存的工作方式:
    (1)找到数据的指针。(指针可能存放在寄存器内,所以这一步就已经包括寄存器的全部工作了。)
    (2)将指针送往内存管理单元(MMU),由MMU将虚拟的内存地址翻译成实际的物理地址。
    (3)将物理地址送往内存控制器(memory controller),由内存控制器找出该地址在哪一根内存插槽(bank)上。
    (4)确定数据在哪一个内存块(chunk)上,从该块读取数据。
    (5)数据先送回内存控制器,再送回CPU,然后开始使用。
    内存的工作流程比寄存器多出许多步。每一步都会产生延迟,累积起来就使得内存比寄存器慢得多。

     

     在中央处理器的控制部件中,包含的寄存器有指令寄存器(IR)和程序计数器(PC)。在中央处理器的算术及逻辑部件中,包含的寄存器有累加器(ACC)。

    寄存器不依靠地址区分数据,而依靠名称。每一个寄存器都有自己的名称,我们告诉 CPU 去具体的哪一个寄存器拿数据,这样的速度是最快的。

  • 相关阅读:
    英语_词汇_同意辨析
    英语_网站_写作工具
    英语词汇_难词易忘
    IDEA配置技巧 | 去除idea方法形参赋值时的变量提示
    更换Android studio中的SDK和AVD位置
    CSS/CSS3 | P4-选择器优先级权重
    二叉树的性质
    线性表练习
    前插法建立链表
    格式化文件和数据块读写函数
  • 原文地址:https://www.cnblogs.com/zgq25302111/p/14285424.html
Copyright © 2011-2022 走看看