首页 > TAG信息列表 > 真象
操作系统真象还原实验记录之实验二十八:实现文件删除、创建与遍历目录
操作系统真象还原实验记录之实验二十八:实现文件删除、创建与遍历目录 1.文件的删除 位于打开文件表的文件不能被删除。目录不能用此函数删除,用rmdir(暂未实现)。 inode.c的基本函数inode_release、inode_delete(回收inode) /* 回收inode的数据块和inode本身 */ void inode_relea操作系统真象还原实验记录之实验二十一:实现printf
操作系统真象还原实验记录之实验二十一:实现printf 实现write系统调用略 2.实验代码 2.1 stdio.c #include "stdio.h" #include "interrupt.h" #include "global.h" #include "string.h" #include "syscall.h" #include "print.h" #define va_s操作系统真象还原实验记录之实验十九:实现用户进程
操作系统真象还原实验记录之实验十九:实现用户进程 1.相关基础知识 1.1 特权级(书P229) cs寄存器的最后两位就是CPL,表示了cpu当前特权级。 对于访问数据段(type含有X可执行属性) CPL和RPL<=DPL 对于访问非一致性代码段(type不含有X可执行属性) 只能平级,如果想执行跟高级的代码段操作系统真象还原实验记录之实验六:内存分页
操作系统真象还原实验记录之实验五:内存分页 对应书P199页 5.2 1.相关基础知识总结 页目录 页目录项 页表 页表项 物理页 虚拟地址 物理地址 概念略 页目录项及页表项 低3字节都是属性。高20位都是物理地址。 本次实验 虚拟地址:32位=4GB 物理地址:32MB (但是分页机制下能访问操作系统真象还原实验记录之实验五:内存容量检测
操作系统真象还原实验记录之实验五:内存容量检测 对应书P181页 1.相关知识总结 BIOS中断0x15的3个子功能0xe820、0xe801、0x88,可以获得内存容量。 详情具体见书P178 2.实验记录 2.1实验目的 上次实验我们进入了保护模式,但在从实模式进入保护模式前,其实还应该先在实模式下获取《操作系统真象还原》环境搭建
《操作系统真象还原》环境搭建 部署工作环境 最近在学习《操作系统真象还原》,并打算跟随作者手写一个自己的os。我的实验环境跟作者稍有不同,在配置过程中遇到一些问题,如果你也在使用manjaro,也许我的一些经验能够帮到你。 安装软件 sudo pacman -S nasm sudo pacman -S bochs 配置《操作系统真象还原》读书笔记 第0章
0x1 软件访问硬件的方法 软硬件之间的访问是依赖于各种硬件设备,也就是IO接口。接口就是生产硬件的标准,所有硬件必须按照这个标准才能让软件和硬件互通。 硬件在输入输出上分为并行和串行两种方式,相应接口也就是串行和并行接口。串行硬件通过串行接口与CPU通信,CPU通过串行接《操作系统真象还原》ELF文件
下面是第五章部分内容的收获。 用C语言编写内核 一直以来我们都是用汇编语言编写程序的,但接下来我们或许很少用汇编语言编写代码了,大多数都是使用C语言。为什么要这样呢?书上的解释我看的不是很懂,只能结合书上谈谈我的见解,个人觉得有两个原因: 汇编语言编写代码较高级《操作系统真象还原》分页
本节是阅读第五章的收获。下面将阐述一些分页的相关内容。 分页 什么是分页 分页,顾名思义,就是将内存分成大小相同的页。分页,通过映射的方式,将连续的线性地址转化为不连续的物理地址;这样,在处理器进入分页模式之后,用户直接访问的并不是物理地址,而是分页模式下的虚拟地址。