![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机体系基础
文章平均质量分 65
摇滚牛奶
这个作者很懒,什么都没留下…
展开
-
南大Mooc计算机体系基础--链接概述和目标文件格式
链接概述和目标文件格式#include <stdio.h> int main(){ printf("hello world"); }步骤:1. 源文件以ascll文本形式存在 2. 预处理:hello.c->hello.i(预处理文本) 3. 编译:hello.i->hello.s(汇编程序文本) 4. 汇编:helo.s->hello.o(二进制可重定位目标代码) 5. 链接:多个.o->原创 2017-10-27 22:28:04 · 276 阅读 · 0 评论 -
南大Mooc计算机体系基础--虚拟存储器
虚拟存储器虚拟地址<–>实际地址 引入:程序需要的地址空间很大,但是内存满足不了。 页式:虚拟地址按页分(虚页),需要时载入主存空间(页架)。 页式管理:每一页比较大(2-64KB),页架与页全相联(缺页要从磁盘载入页,代价太大),写回方式(读写辅存代价太大),地址转换(硬件实现),缺页管理(软件OS实现) 页表:反映虚页和页架关系的表。页表是一个结构数组,存在进程(可执行文件)的内核区。页表本原创 2017-10-27 22:48:15 · 235 阅读 · 0 评论 -
南大Mooc计算机体系基础--高速缓存cache
高速缓存cachecpu<–>cache<–>内存(主存)<–>外存(辅存) 计算机存储层次结构:金字塔型 空间、时间局部性:引入cache 例子:访问二维数组A[0][0]-A[0][1]。。。空间局部性好 了解cache才能写出高效程序 操作过程: cpu通过地址需要一块主存数据 判断是否在cache中,hit直接从cache中取,miss加入到cache 疑问:如何从elf的虚存地址,转原创 2017-10-27 22:47:24 · 287 阅读 · 0 评论 -
南大Mooc计算机体系基础2--磁盘存储器
磁盘存储器 结构:磁盘->磁道->扇区 磁盘驱动器:磁头运动控制磁道号(柱面号), 磁头号控制磁盘号(每个盘有两个磁头) 转动磁盘控制扇区,确定读写位置 平均存取时间:寻道时间(找磁道)+旋转时间(找扇面)+数据传输(可忽略) 旋转时间花费最大,转速直接影响响应时间。 组成: 磁盘控制器 磁盘驱动器 读一个磁盘扇区: CPU对磁盘控制器初始化:读命令(操作数),磁盘逻辑块号(数据源),原创 2017-10-27 22:46:19 · 178 阅读 · 0 评论 -
南大Mooc计算机体系基础2--主存组织
主存储器(内存)组织 存储体(一组)->存储单元(按字节的)->记忆单元(一个物理器件) MAR(地址),MDR(数据) 分类:RAM:直接通过地址译码得到数据,内存。随机(数组) SAM:按顺序读写,磁带。链表 DAM:硬盘,直接定位到位置,读写时顺序的。 相联存储器AM:按内容存取,快表。 基本结构: 性能指标: 半导体存储器组织: 字线和位线: 内存条组织:内存条==多个位面(表示相同原创 2017-10-27 22:45:26 · 258 阅读 · 0 评论 -
程序执行概述
程序执行概述 程序和指令的关系:根据pc的值确定下一条指令 指令周期:CPU取出并执行一条指令的时间。 指令长度:各条指令长度不一 取指令->译指令->取操作数->运算->写:每个过程中进行异常和中断检查原创 2017-10-27 22:43:27 · 204 阅读 · 0 评论 -
南大Mooc计算机体系基础--x32-86指令系统
基本指令 指令字q:表示操作数是64位,l:32位,w:16位,B:8位 寄存器:64位寄存器可以分成32、16位等寄存器。 乘除指令mul,div前面带i:表示是带符号数操作 64位机器通过寄存器传递参数:32位用入栈的方式传参数 lea 和 mov:lea是相加后直接传结果,mov是如果传递的一个地址(寄存器偏移表示)那么会取该地址的值(解引用)来传递 参数传递:x64可以最多有6个参数直接用寄原创 2017-10-27 22:41:10 · 264 阅读 · 0 评论 -
南大Mooc计算机体系基础--重定位和动态链接
重定位和动态链接 符号解析:得到E、D两个集合 重定位: 合并相同的节:把E中所有相同的节合并成新节 对D中定义符号确定位置:确定虚拟空间地址 对引用符号重定位:修改.text和.data节对符号的引用(地址) 重定位条目:记录在.reltext 和 .reldata节 重定位目标文件中对需要符号引用的描述(节中偏移,引用符号,重定位方式) PC相对地址:由偏移量和PC(由重定位前的值算出)确原创 2017-10-27 22:39:50 · 446 阅读 · 0 评论 -
南大Mooc计算机体系基础--符号及符号解析
符号及符号解析 符号和符号表 符号的本质:ELF文件中存储的一块空间的首地址 定义的符号(函数,非局部变量)记录在符号表 将对符号的引用存在重定位节 分类:全局符号:不带static,本模块定义 外部符号:其他模块定义的,在本模块extern 声明 局部符号:带static 符号表: 描述该符号所在的位置(处于哪个节(索引),偏移多少,大小多少,符号类型等) 链接规则 全局符号的类型(原创 2017-10-27 22:33:02 · 467 阅读 · 0 评论 -
南大Mooc计算机体系基础--IA_32地址转换
IA_32地址转换逻辑地址 –> 线性地址 –> 物理地址 |-虚拟地址的两种表示-| 分段:逻辑地址到线性地址逻辑地址=段选择符+有效地址 有效地址=基址+比例变址+位移量 段选择符:由指令显示或隐式给出,存在段寄存器中(CS,SS,DS,ES等) 段选择符=13位段表索引+全局/局部段标志+访问级别(0最高,3最低) 由段表索引去段表查到相应的段基址原创 2017-10-27 22:54:37 · 259 阅读 · 0 评论