# RTOS **Repository Path**: redicode/rtos ## Basic Information - **Project Name**: RTOS - **Description**: scau操作系统大作业:模拟操作系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2021-07-20 - **Last Updated**: 2021-11-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 开发规范 ## fxml加载写法 有多种写法,目前统一为: **fxml文件统一放在resources/fxml文件夹中。 getResource("/fxml/xxx.fxml")** 在target中可见classes目录,是输出目录,用根目录"/"表示 所以写绝对路径 "/fxml/..."就可以访问 不能用相对路径写法 "fxml/..."否则访问的是当前字节码所在目录如 fx包中的MainWindow中路径写成"fxml/xxx.fxml" 则访问的fx目录下的fxml文件夹,因此报错。 ## 约定 总存储容量:2^16*2^8 bit = 16MB 16位地址 2^6 * 2^10 寻址能力为64KB (short 2字节 16bit) 按字节编址(字长 1字节 8bit) **内存中的数据类型统一用byte** 注意设计模式,单例模式,工厂模式。 ## 架构 ## 代码规范 打印信息统一用lombok的log日志 在类上标注@log注解 方法中可调用log.info() log.warning() log.error()来打印日志 IDEA代码规格化快捷键:ctrl+alt+l 在IDEA中安装阿里编码规约 IDEA在插件中搜索alibaba 即可搜到 # 代码解释 ## 磁盘模块: ### 一、磁盘空间 1. 磁盘有256块,每块有64字节。盘块的块号从0编起。 2. 磁盘的信息存储在一个文本文件中,当要操作磁盘时便从文本文件读取内容存放到Disk类的数组中,操作完毕便写入文本文件中。 ### 二、FAT 1. 因为每个盘块要用一字节表示,而每个盘块有64字节,所以需要disk中的前2个盘块作为文件分配表的内容,所以FAT直接获取Disk中二维数组的引用,操作时直接在数组前2行里操作。 2. 0 : 盘块未分 (回收一个磁盘块: 将fat对于的值改为0) 3. 1 : 没有下一块 4. -1 : 磁盘已满 4. 254 : 该盘块损坏不能使用。