stm32 个人总结的 flash读写 《续》

flash 的读写在STM32 中处理简单的或存放不忒多的常量是非常方便的.

但是发现网上没有他继续的见解,实际上书上还有后续篇。
1> STMFLASH_Write();这个函数在内存管理实验中就有开始讲解了r
****内存管理是指软件运行时对计算机内存资源的分配和使用技术。
主要目的是高效、快速分配并且适当时候
斜体样式
释放和回收内存资源。
其实最终就是实现malloc 和 free ;函数
分块管理有内存池和内存管理表两部分组成。
内存池被等分为n块
对应的内存管理表大小为n
内存管理表的每一项对应内存池的一块内存。
内存管理表值的意义:
0 代表对应的内存块没有被占用
非0 代表该项对应的内存块被占用。
数值代表只用的内存的块数
内存分配是从顶-------向底的分配
首先从最末端开始找空内存
当内存管理刚初始化的时候
内存表全部清零,表示没有任何内存块被占用。
1 分配原理
当指针 ×p 调用malloc 时 先判断是否有连续的内存块数m 然后从n 项开始向下查表 直到找到连续的 空内存块 才将这个m个内存管理表设置为m 最后 这个空内存块返回指针 完成一次分配。当内存块 没有得到指定的空内存块时,返回null 分配失败
2 释放原理
当 p 申请的内存用完,需要释放时 调用free 先判断p 指向内存地址
对应的内存块 然后找到对应的内存管理表项 得到占用的内存块数目 内存管理表项值就是所分配的内存块数目

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值