《操作系统设计与实现》 记录 (10)
作者:互联网
/**
* TODO 《操作系统设计与实现》 记录 (10)
* @内存管理工具
* alloc_mem --
* 在空闲链表使用最先匹配算法、查找一块空间
* 如果太大则分开两份
* 但是空闲链表长度会发生变化
*
* free_mem --
* 检查并且释放内存处理
* 检查一块被释放的内存看看是否可以和左邻右舍进行合并
* 如果成功检查则合并内存并且更新空闲链表
*
* mem_init --
* 初始化所有空闲链表——包含所有可用内存
*
*
* @文件系统File System
* @文件的结构
* 1/
* 字节序列
* 无结构的字节流
* 不问内容——只处理字节流
*
* 2/
* 记录序列
* 序列固定长度的记录 组成
* 每条记录都有自己的内部结构
* 读操作返回一条记录
* 写操作是追加或者重写
*
* 3/
* 文件由一种记录树组成
* 书中记录长度不同
* 在记录内某个位置都有一个关键字(key)存储
* 树的存储是根据关键字来处理的
* 方便快速查找
*
* @文件的类型
* 二进制结构方式
*
* @文件的访问
* 顺序访问
* 随机访问
* 通过更新文件的起始位置和跳过内容
*
*
* @文件的属性
* 文件特殊属性和元数据
*
* @文件的操作
* Create
* Delete
* Open
* Close
* Read
* Write
* Append
* Seek
* GetAttributes
* SetAttributes
* Rename
* Lock
*
* @目录
* ---
*
* @文件系统的实现
* MBR
* 磁盘扇区0存储
* 作用于启动计算机
* 确定活动分区、然后读取第一个块、引导bios读取该块中的操作系统代码
* 将操作系统代码装入内存
* @初始化程序装载器、卷引导程序、主引导
*
* @超级块
* 存储文件系统所有相关参数
* 计算机首次启动或者首次触发文件系统操作时候别转入内存
*
* @磁盘空间管理
* 文件系统一致性
* 数据增量转储
* 数据全量转储
*
* @文件系统的性能
* @高速缓存
* 块高速缓存
* 所属磁盘————实际物理在内存
* 基本算法思路
* 对所有读操作进行前置处理/
* 是否在块高速缓存中
* 非则从磁盘中读取放入高速缓存然后复制到指定的内存位置
* 之后的读操作则直接读取高速缓存
* 高效的数据结构
* hash table ___>基于hash的数据结构
* 如果hash值相同则放入一个链表中
* 处理链表中的值是否相等
* 如果高速缓存中数据满则进行页面交换方式的处理
* FIFO.最先匹配算法.LRU.二次机会算法
*
* SYNC指令直写高速缓存
*
*/
标签:10,操作系统,记录,文件系统,链表,内存,文件,高速缓存 来源: https://blog.csdn.net/weixin_38233104/article/details/122412336