(五十三)第 8 章 动态存储管理(伙伴系统)

1. 背景说明

2. 示例代码

buddySystem.h

// 伙伴系统实现头文件

#ifndef BUDDY_SYSTEM_H
#define BUDDY_SYSTEM_H

#include "errorRecord.h"

#define POWER_TIME 10				// 可利用空间总容量的 2 的幂次,子表的个数为 POWER_TIME + 1
#define MAX_USED_BLOCK_NUM 100		// 占用块个数的最大值

typedef struct Word {
	struct Word *lLink;				// 指向前驱结点
	Boolean tag;					// 块标志,TRUE: 空闲,FALSE: 占用
	int blockSize;					// 块大小,值为 2 的 blockSize 幂次
	struct Word *rLink;				// 头部域,指向后继结点
} Word, Head, *Space;				// Word: 内

相关推荐

  1. Linux系统日志管理

    2024-07-14 16:02:03       30 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-14 16:02:03       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-14 16:02:03       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-14 16:02:03       58 阅读
  4. Python语言-面向对象

    2024-07-14 16:02:03       69 阅读

热门阅读

  1. 虚拟地址空间(Virtual Address Space, VAS)

    2024-07-14 16:02:03       22 阅读
  2. 定期更新github相关hosts

    2024-07-14 16:02:03       23 阅读
  3. 前端面试题日常练-day86 【面试题】

    2024-07-14 16:02:03       16 阅读
  4. 机器学习之常用优化器

    2024-07-14 16:02:03       25 阅读
  5. C++常用算法的简单总结

    2024-07-14 16:02:03       25 阅读
  6. 渗透测试 —— 揭开数字安全的隐形面纱

    2024-07-14 16:02:03       20 阅读
  7. Linux设置开机自启动脚本

    2024-07-14 16:02:03       27 阅读
  8. Visual Studio 配置记录 - 备忘

    2024-07-14 16:02:03       20 阅读