总算搞完Lab1

管理存储介质的东西

cpu 内存 io 设备

内存一次最小单位 8 bit
计算机 总线32bit

有大量的数据要读写,CPU内有高速缓存
内存层次,两级缓存

操作系统的内存管理

内存 以字节为单位进行访问
磁盘 扇区编号 每一个扇区512 字节最小单位

内存管理系统的要求

抽象,保护,共享,虚拟化

内存管理机制:
+ 重定位:(relocation)
+ 分段 : (segmentation)
+ 分页 : (paging)
+ 虚拟储存(virtual memory)
多数系统 按 需页式虚拟储存

地址空间 & 地址生成

从写出来的符号 到总线上的物理地址

地址空间 :
物理地址空间 硬件支持的地址空间 起始是0 知道 MAXsys
逻辑地址空间 CPU运行时 进程看到的地址 0- MAX prog

逻辑地址根据方法转换成物理地址

逻辑地址的生成

编译时:
假设起始地址已知
如果起始地址改变,必须重新编译

加载时:
编译时起始位置位置,编译器徐生成可重定位的代码(reloctable code)
加载时,生成绝对地址

执行时:
执行时代码可移动
需地址转换(映射)硬件支持

地址的生成过程:


逻辑地址到物理地址的传唤

地址检查

连续内存分配

连续内存分配和内存碎片

你要分配510字节 结果分配了512字节 剩下几个字节就是内碎片
取决于分配单元大小是否要取整。

动态分区分配

最先匹配策略


空闲分区链表
First Fit Allocation

Best Fit Allocation


合并还慢 因为要找地址临近 但是却是按照大小排序的

Wrost Fit Allocation

碎片整理


紧凑(ompaction)
碎片紧凑: 否有应用程序都是可以动态重定位

分区对换
Swapping in/out
对换到对换区内

处于等待状态的程序搬到外存区
有一个对换区


伙伴系统

伙伴系统的实现 Buddy System

整个可分配的分区大小 的策咯

数据结构

空闲块的二维数组
第一维 由小到大 排成第一位
同大小就按地址排序


u core 中的物理内存管理

ucore 已经实现了

转载于:https://www.cnblogs.com/sfzyk/p/8983209.html

第五讲 计算机体系结构 内存层次相关推荐

  1. 清华操作系统课程(向勇、陈渝)笔记——第三章(一)(计算机体系结构/内存分层体系)

    计算机体系结构/内存分层体系 计算机体系结构 CPU:控制程序执行 内存:放置程序代码和数据 设备(I/O) 内存分层体系 寄存器和缓存:CPU可以直接访问,操作系统无法控制,速度快但容量有限 主存/ ...

  2. 计算机体系结构——内存

    计算机体系结构--内存 内存也称为随机访问储存器( Random-access memory ),简称 RAM . RAM 目前分为两种静态内存和动态内存.静态内存( SRAM )速度上比动态内存( ...

  3. 《操作系统》OS学习(四):计算机体系结构、内存层次和地址生成

    计算机除了计算能力之外还有存储能力,存储能力即计算机拥有一系列的存储介质,我们可以在存储介质上存储我们的代码和数据.计算机体系结构中约定了哪些地方可以用来存储数据:CPU内的寄存器.内存和外存.不同的 ...

  4. OS学习笔记-5(清华大学慕课)计算机体系结构与内存层次

    计算机体系结构与内存层次 内存最小的访问单位是1B=8bit,每个字节都有自己的物理地址 总线一般是一次读取4B=32bit cpu里面有高速缓存cache和寄存器作为存储帮手 访问速度最快的是几纳秒 ...

  5. [架构之路-119]-《软考-系统架构设计师》-计算机体系结构 -1- 基本原理(体系结构、指令系统与流水线、层次存储)

    第9章 计算机体系结构 9.1 什么是计算机体系结构 计算机系统结构(Computer Architecture)也称为计算机体系结构,它是由计算机结构外特性,内特性,微外特性组成的.经典的计算机系统 ...

  6. 汇编程序设计与计算机体系结构软件工程师教程笔记:处理器、寄存器简介

    <汇编程序设计与计算机体系结构: 软件工程师教程>这本书是由Brain R.Hall和Kevin J.Slonka著,由爱飞翔译.中文版是2019年出版的.个人感觉这本书真不错,书中介绍了 ...

  7. 计算机体系结构--第一章1----体系结构的分类

    文章目录 计组和计算机体系结构区别 外特性 和 内特性 计算机体系结构定义 研究计算机系统中软硬件之间的界面定义和其上下的功能分配与逻辑实现 基本概念 体系结构的分类 按照指令流和数据流的多寡,将体系 ...

  8. 计算机组成原理r型指令logisim实现_第一章 计算机体系结构

    需要掌握的内容: 存储程序计算机 计算机系统的多级层级结构 计算机体系结构 计算机组成 计算机实现 计算机体系结构.组成与实现三者的关系 存储程序计算机 透明性 Amdahl定律 CPU 性能公式 程 ...

  9. 汇编程序设计与计算机体系结构软件工程师教程笔记:总结

    <汇编程序设计与计算机体系结构: 软件工程师教程>这本书是由Brain R.Hall和Kevin J.Slonka著,由爱飞翔译.中文版是2019年出版的.个人感觉这本书真不错,书中介绍了 ...

最新文章

  1. AI时代,如何缓解CMO的决策焦虑?
  2. 金审系统与SAP接口
  3. mysql查询cpu使用率100%_数据库CPU使用率100% 排查记
  4. TFLearn MNIST
  5. SAP Spartacus storefront 模块的实现位置
  6. 周期性取count请求是如何在前台setup的 - Tile count
  7. 设计模式——享元模式具体解释
  8. 跨服务器 快速 导入数据表记录 Insert into SELECT
  9. java 常用流_Java流类图结构: 流的概念和作用流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据传输,根据数...
  10. OpenMP变量的私有与共享
  11. python 中的copy与deepcopy
  12. win7注册表无法修改计算机名称,win7注册表无法修改怎么办 win7注册表不能更改怎么办...
  13. vue中显示实时时间
  14. 转:中文汉字占二个字节还是三个字节长度
  15. Python实现简单p2p下载
  16. 细化算法matlab
  17. opencv-python 在图像上打印英文和中文字符
  18. iphonex适配游戏_iPhoneX王者荣耀适配问题 iPhoneX游戏问题详解
  19. 红黑树 -- 增删查改
  20. 深度学习-BP神经网络(python3代码实现)

热门文章

  1. Java 查找指定类型的数组元素
  2. String类型转date
  3. spark rdd Transformation和Action 剖析
  4. Java 避免精度丢失之BigDecimal 运算
  5. QLable显示图片 和 QLabel自适应 QLabel 文字居中
  6. 如何在网页中禁止使用鼠标右键?几种方法和大家分享
  7. 一、Cocos2dx在visualStudio或者vc++中环境搭建(入门篇)
  8. PHP语言教父Gutmans炮轰Java:已经输掉Web之战
  9. 使用自己的按钮关闭或刷新RadWindow
  10. Codeforces Round #165 (Div. 2) A - Fancy Fence