内储管理技术——连续分配方式

2023-11-14

早期的操作系统,只支持单进程,为了实现简单。在执行程序之前,操作系统必须将待执行的程序全部装入内存,这就是简单存储管理技术。现代操作系统,支持多进程并发执行,允许进程装入部分程序即可以开始执行。其余部分保留在磁盘上。当执行所需的部分不在内存时,中断正在执行的内存,使之阻塞等待,直到相应的部分装入内存,这就是虚拟存储技术

一、现代操作系统分配内存的方式——连续分配

连续分配方式又分为单一连续分配方式与分区方式,这两种方式都将系统内存划分为系统区与用户区。

单一连续分配:将所有内存分配给一个进程,适用于嵌入式操作系统。

分区:分别为每个进程分配一段连续的空间,支持多进程并发的存储管理方式。

二、分区的两种方式——固定分区与动态分区

在这里讨论下分区管理方式:分区管理的首要问题是分区的划分:每个进程所需的内存大小不一样。如果各分区在系统初始化就固定下来,以后不再改变,称为固定分区方式。如果各分区开始不固定,而是根据程序的运行再划分,称为动态分区方式

固定分区方式又要解决每个分区该分多大?是否采取大小相等与大小不等的分区?同时,一个程序不可能完全占满一个分区,所以产生了空闲部分(即内部碎片)。如何使这些内部碎片最小?这些问题请各位自己下去研究,本文不做深入讨论。

动态分区方式:与固定分区方式相比,它的分区数量,分区大小都不固定,而是根据程序的需要动态的划分。它至少需要处理如下问题。

1、分区如何组织(记录每个分区的信息,如大小,是否可用,分区起始地址等)?

2、分区如何分配(采用哪种算法,如首次匹配,循环匹配,最佳匹配)?

3、分区如何回收(合并这些空闲分区)?

动态分区方式还产生了大量的外部碎片(无法利用的空闲分区),如果把这些随便聚在一起,又可以形成一个较大的空闲空间,所以这里又出现了紧凑技术,即合并这些小的,碎片化的空闲分区

动态分区的一个实例:伙伴系统。将内存划分为多个页面块,核心思想:先找合适的大小的空闲块,没找到就拆大的空闲块,详细信息请自己寻找。

 

对换技术:把内存中暂时不用的进程换出到外存,腾出空间,将已具备执行条件的进程换入内存。

 

参考:

https://blog.csdn.net/wang379275614/article/details/13765599?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

内储管理技术——连续分配方式 的相关文章

  • 计算机二级-C语言-计算机系统

    还未解决的题目 xff1a 5 3 xff1a 22 xff1b 5 4 xff1a 2 3 5 7 13 18 20 22 24 25 27 29概念模式 xff08 模式 xff09 xff1a 描述全局数据逻辑结构 xff1b 外模式
  • 【计算机系统】CPU是如何运行程序的

    一 CPU组成部分 寄存器 xff1a 存储CPU执行的指令的数据 xff0c CPU每次执行指令都会重新更新寄存器 程序计数器 PC xff1a 记录CPU即将执行的指令内存中的地址 逻辑控制单元 ALU xff1a CPU中负责逻辑计算
  • 多核编程与单核多线程编程

    并发 时间段内有很多的线程或进程在执行 但何时间点上都只有一个在执行 多个线程或进程争抢时间片轮流执行 并行 时间段和时间点上都有多个线程或进程在执行 单核cpu的话只能是并发 多核cpu才能做到并行执行 那有人可能有这样的疑问 那多进程的
  • 【linux】内核组件 [不断补充中...]

    防火墙 netfilter iptables IP 信息包过滤系统 netfilter 内核空间 kernelspace 是内核的一部分 由一些信息包过滤表组成 这些表包含内核用来控制信息包过滤处理的规则集 即 存放内核过滤规则的防火墙 i
  • HIT-ICS大作业

    计算机系统大作业 题目 程序人生 Hello s P2P 计算机科学与技术学院 摘 要 大作业题为程序人生 Hello s P2P 围绕一个较简单的hello c函数的整个生命周期展开 介绍了该示例程序从编写到执行到结束的全过程 详细地分析
  • 文件的流

    一 文件名词解释 文件 是存贮在某种介质上的 如磁盘 磁带等 并具有文件名的一组有序信息的集合 流设备 大多数的字符设备 如键盘 打印机等 传输的信息均由 一组顺序出现的字符序列组成 文件系统 操作系统对系统的软件资源 不论是应用软件和系统
  • 计算机的内存

    物理内存 内存是电脑的一个硬件组成部分 从单片机的组成我们可以看到 CPU 内存和输入输出接口 就组成一个完整的电脑 其他统统属于外设 内存是可以被CPU通过总线进行操作的 也就是与CPU之间有总线相连接的 电脑所有的输入输出 都是要从内存
  • 计算机系统实验之datalab

    datalab实验是CSAPP中关于整数和浮点数的位运算的实验 对于我们理解位运算和整数 浮点数的位级表示有着很好的帮助 实验目的 修改bits c的C语言代码 使其通过所有在不违反任何编码准则的情况下 在btest中进行测试 进一步熟悉整
  • 哈工大2018秋高级语言程序设计课程大作业

    Github文件下载地址哈工大2018秋高级语言程序设计课程 高级语言程序设计 实验大作业反思报告 实验大作业题目 智能趣味电子通讯录 类型 信息管理系统 学生姓名 郭茁宁 班 号 1837101 学 号 1183710109 所在院系 计
  • 深入理解计算机系统——实验(二)Data Lab(附解释)

    2020 4 18更新 有朋友对下列第5个函数bang中我的分析提出了质疑 隔了一年多我也不大记得了 首先关于补码 Two s complement 给出wikipedia中的定义 Two s complement is a mathema
  • 深入理解计算机系统Lab3实验

    目录 实验准备 实验资源的准备 生成ctarget等文件的反汇编代码 确定实验环境是大端还是小端 实验进行 Phase1 简述 测试 分析 目标 找到touch1的代码并重写 并且 找到getbuf 函数中 为Get 函数所开辟的字符串最大
  • 【linux】常用shell指令 [不断补充中...]

    前言 shell是一种脚本语言 需要有编译器执行 即 应用程序 gt shell gt 操作系统 gt 硬件 bash是linux下默认的shell sh是unix下默认的shell 多命令执行 xx xx 前面执行成功才会执行后面的命令
  • 8086CPU只有16位寄存器,却可以访问20位的物理地址

    一 背景介绍 Intel 8086是一个由Intel于1978年所设计的16位微处理器芯片 是x86架构的鼻祖 它是以8080和8085的设计为基础 拥有类似的寄存器组 但是数据总线扩充为16位 总线界面单元 Bus Interface U
  • 计算机系统课程 笔记总结 CSAPP第五章 优化程序性能(5.1-5.14)

    GitHub计算机系统CSAPP课程资源 计算机系统课程 笔记总结 CSAPP第二章 信息的表示和处理 2 1 2 2 计算机系统课程 笔记总结 CSAPP第二章 信息的表示和处理 2 3 2 4 计算机系统课程 笔记总结 CSAPP第三章
  • 计算机系统课程 笔记总结 CSAPP第七章 链接(7.1-7.13)

    GitHub计算机系统CSAPP课程资源 计算机系统课程 笔记总结 CSAPP第二章 信息的表示和处理 2 1 2 2 计算机系统课程 笔记总结 CSAPP第二章 信息的表示和处理 2 3 2 4 计算机系统课程 笔记总结 CSAPP第三章
  • 操作系统CPU调度

    概述 多道程序操作系统的基础 通过在进程之间切换CPU 操作系统可以提高计算机的吞吐率 对于单处理器系统 每次只允许一个进程运行 任何其他进程必须等待 直到CPU空闲能被调度为止 CPU按一定的调度算法从就绪队列中选择一个进程 把CPU的使
  • Win32程序之进程的原理

  • 计算机操作系统-进程篇

    一 进程 进程 progress 是指计算机中已运行的程序 每个进程都有自己的地址空间 内存 寄存器和堆栈等资源 它们与其他进程相互隔离 互不干扰 进程是操作系统中最基本的资源分配单位 也是操作系统中最重要的概念之一 在操作系统中 进程是由
  • 深入理解计算机系统-笔记

    计算机系统漫游 程序 程序的生命周期从一个源程序 源文件 开始 即程序员利用编辑器创建并保存的文本文件 如文件名为hello c的c语言程序 源程序是由0和1组成的位序列 8个位被组织成一组 称为字节 每个字节表示程序中的某个文本字符 这种
  • 计算机系统课程 笔记总结 CSAPP第四章 处理器体系结构(4.1-4.3)

    GitHub计算机系统CSAPP课程资源 计算机系统课程 笔记总结 CSAPP第二章 信息的表示和处理 2 1 2 2 计算机系统课程 笔记总结 CSAPP第二章 信息的表示和处理 2 3 2 4 计算机系统课程 笔记总结 CSAPP第三章

随机推荐

  • B树和B+树的区别是什么

    B 树和 B 树是两种不同的数据结构 B 树是一种平衡树 其中每个节点的子节点数量在一个给定的范围内 通常在 2 到 4 之间 这使得 B 树能够在插入和删除数据时保持平衡 从而提高查找效率 B 树也是一种平衡树 但它有一些不同的特征 首先
  • 终端输入命令报错:”因为在此系统上禁止运行脚本“解决方法

    计算机上启动 Windows PowerShell 时 默认执行策略是 Restricted Restricted 执行策略不允许任何脚本运行 所以修改执行策略就可以了 在电脑搜索框搜索 pw 打开PowerShell 输入 set exe
  • 由于请求头 content-type为application/json导致请求出错

    preface 最近在写 react 项目 然后调用后台接口的时候总是报错 我本以为是后台接口的问题 后来后台说 请求体 不能为 null 然后就简单做了总结 请求头 content type 一般使用的两种格式 application j
  • 对象存储哪家价格便宜?最便宜的云存储推荐!

    我们知道 对象存储是一种云存储服务 不同的云存储 价格也是有所不同的 而对象存储的价格取决于选择的存储容量和服务商 不同的存储容量 价格也是不同的 容量越大 价格也是越贵 不同的服务商 对象存储的价格也是有差异的 那么 对象存储哪家价格便宜
  • C语言获取鼠标位置并设置鼠标位置

    示例程序 include
  • 表单请求改为ajax,使用jq将form表单提交改为ajax提交

    大家可能都会有这样的经历 辛辛苦苦的敲了半天的form表单 然后被通知要改成ajax表单提交 于是就开始了一行一行的获取input的值 复制 粘贴的过程 要是碰上表单行数特别多的时候更麻烦 下面介绍一种方法 用最少的代码量完成form表单提
  • 5G MEC边缘云组网方案与业务案例分析

    1 MEC概念 MEC边缘云 Multi Access Edge Cloud 是在靠近人 物或数据源头的网络边缘侧部署云资源池和云平台 它在5G时代将扮演重要的角色 MEC边缘云的优势在于 一方面它实现了在更靠近数据源所在的本地网内运算 尽
  • 27、HMAC

    HMAC产生背景 HMAC为什么会被提出来 是MAC的产生有什么缺陷么 HMAC规范的设计是由于存在对将密钥与hash函数相结合的更简单机制的攻击 换言之就是有些将密钥和hash函数结合使用产生MAC的算法容易被攻击 而这种生成消息认证码的
  • 2020最新蚂蚁金服三面+HR一面,面试经验总结及分享

    蚂蚁金服Java岗二面 从项目入手 说说自己参与的项目 技术难度在哪里 Collections sort底层排序方式 排序稳定性 具体场景的排序策略 Http请求过程 DNS解析过程 三次握手四次挥手 简述线程池和并发工具的使用 数据库索引
  • Unitils-使用实践

    简介 Unitils这个Java开源类包的目的是让单元测试变得更加容易和可维护 Unitils构建在DBUnit与EasyMock项目之上并与JUnit和TestNG相结合 支持数据库测试 支持利用mock对象进行测试并提供与Spring和
  • Django后端笔记(二)模型M

    Django后端笔记 模型M Django ORM Django 数据库配置 mysql命令回顾 Django配置使用mysql数据库 切换mysql数据库之后不能启动服务器 复习案例 字段属性和选项 模型属性命名限制 字段类型 选项 查询
  • 换脸方法之FSGAN

    论文 FSGAN Subject Agnostic Face Swapping and Reenactment 官网 https nirkin com fsgan Github https github com YuvalNirkin fs
  • Delphi没落了?!delphi为什么没人用了?!delphi还有人学吗?!告诉你一个事实:现在全世界有300万程序员每天在用Delphi开发各种软件APP应用!

    德克萨斯州奥斯汀 美国商业资讯 跨平台应用程序开发人员生产力工具提供商Embarcadero Technologies Idera Inc 的一个部门 今天发布了RAD Studio 10 3 这个最新版本使开发人员能够使用相同的本机代码库
  • 《MATLAB 神经网络43个案例分析》:第18章 基于SVM的图像分割-真彩色图像分割

    MATLAB 神经网络43个案例分析 第18章 基于SVM的图像分割 真彩色图像分割 1 前言 2 MATLAB 仿真示例 3 小结 1 前言 MATLAB 神经网络43个案例分析 是MATLAB技术论坛 www matlabsky com
  • redis工具类

    redis工具类 很多公司都将redisTemplate进行了封装 封装成业务所需要的RedisUtil工具类方便进行调用 本篇文章总结了redisTemplate常用的一些方法 Redis常用的数据类型 String Hash List
  • ubuntu php v8js,Ubuntu16安装配置LNMP(7.1)环境并安装v8js拓展

    在服务器上安装 Git sudo apt get install git 配置环境 一 安装 PHP 7 1 ppa 方式安装 php7 1 sudo apt get install software properties common 添
  • SpringSecurity------HttpSecurityConfiguration配置类

    SpringSecurity HttpSecurityConfiguration配置类 一 HttpSecurityConfiguration是怎样被加载的 二 HttpSecurityConfiguration主要做了什么 三 HttpS
  • av_register_all和avformat_alloc_context

    av register all 被声明为已否决其实就是av register all 这个方法在FFMPEG 4 0以后将不再推荐使用 而且是非必需的 因此直接注释掉即可 avformat alloc context 用来申请AVForma
  • 后台网页设计

    后台网页设计 陈子龙 2019 5 17 这是一张我自己设计的后台网站的首页图片 我的这张后台网站图中的文字亲密性有点高 板块之间的距离间距都是相差不多的 视觉上给人的感觉也不是很高 在这里插入图片描述 这个logo放的有点大 我的一个交互
  • 内储管理技术——连续分配方式

    早期的操作系统 只支持单进程 为了实现简单 在执行程序之前 操作系统必须将待执行的程序全部装入内存 这就是简单存储管理技术 现代操作系统 支持多进程并发执行 允许进程装入部分程序即可以开始执行 其余部分保留在磁盘上 当执行所需的部分不在内存