目录 一、前景回顾 二、位图bitmap及函数实现 三、内存池划分 四、运行 一、前景回顾 前面我们已经花了一个回合来完善了一下我们的系统,包括增加了makefile,ASSERT以及一些常见的字符串操作函数。关于makefile,还是我以前学习Linux系统编程的时候学了一点点 ...
本章我们要完成初步的内存管理系统,最终简单实现一个从内核内存池中获取 页的内存这样一个函数实现。 一 到目前为止的程序流程图 为了让大家清楚目前的程序进度,画了到目前为止的程序流程图,如下。 图中红色部分就是我们本章的代码在全局流程中的位置,下面蓝色部分是将 malloc page 方法树状拆解开来看。不考虑太多细节,本章就是完成一个可以 从内存中分配指定页数的内存 代码中为 页 ,并将起始地址打 ...
2020-02-25 17:02 1 1419 推荐指数:
目录 一、前景回顾 二、位图bitmap及函数实现 三、内存池划分 四、运行 一、前景回顾 前面我们已经花了一个回合来完善了一下我们的系统,包括增加了makefile,ASSERT以及一些常见的字符串操作函数。关于makefile,还是我以前学习Linux系统编程的时候学了一点点 ...
《30天自制操作系统》笔记(07)——内存管理 进度回顾 上一篇中处理掉了绝大部分与CPU配置相关的东西。本篇介绍内存管理的思路和算法。 现在想想,从软件工程师的角度看,CPU也只是一个软件而已:它的功能就是加载指令、执行指令和响应中断,而响应中断也是在加载指令、执行指令。就像火车沿着一条 ...
1、本次主要进展 >_<" 这次主要学习了系统内存管理和窗口叠加~由于上两篇都做了详细的框架说明和介绍,这里直接上代码! 2、文件及函数构成 >_<" 这里和第二篇相比,把鼠标和键盘的相关函数独立出来放进各自相应的文件中,并主要在内存管理 ...
自制操作系统Antz day09——实现内核 (下) 实现图形化界面 https://www.cnblogs.com/LexMoon/p/antz09.html Antz系统更新地址: https://www.cnblogs.com/LexMoon/category/1262287.html ...
内存管理的目标: 实现内存的分配和回收 合理的分配内存空间,提高内存利用率,提高内存访问速度 存储器的层次结构 速度由快到慢,容量由小到大,价格由高到低 寄存器->L1高速缓存 -> L2高速缓存 -> 主存储器 -> 本地二级存储 -> ...
目录 分页储存 基本概念 重要数据结构--页表 1、每个页表项占用多少字节? 1.1、如何根据页号找到(在内存中)对应的页表项(的地址) 2、如何实现从逻辑地址到物理地址的转换 2.1 ...
内存管理 问题思考: 1、为什么进行内存管理? 2、页式管理中每个页表项大小的下限如何决定? 3、多级页面解决了什么问题,带来了什么问题? 内存管理的基本原理和要求 内存管理(Memory Management)计算机硬件尽管很大,但依然不能一次将所有用户的进程和系统所需 ...
覆盖技术,虚拟内存和交换分区技术都是为了解决物理内存空间不足的解决方案: 覆盖技术(应用程序手动把需要的指令和数据保存在内存中) 目标:在较小的可用内存中运行较大的程序 方法:依据程序逻辑结构,将程序划分为若干功能相对独立的模块;将不会同时执行的模块共享同一块内存区域 ...