摘要:
进程的切换和一般执行过程 (一)进程调度的时机 (1)关键问题 何为进程切换?就是进程调度时机到来时从就绪进程队列中能够挑选一个进程执行,占用CPU时间,那么就有两个关键问题:一是什么时间去挑选一个就绪进程(调度时机);而是如何让进程占用CPU(进程切换的过程)? (2)硬中断与软中断 硬中断(In 阅读全文
摘要:
可执行程序的工作原理 (一)ELF目标文件 (1)什么是ELF? 这里先提一个常见的名词“目标文件”,是指编译器生成的文件。ELF(Executable and Linkable Format),即可执行的和可链接的格式,是一个目标文件格式的标准,这种格式的文件用于存储Linux程序。 (2)ELF 阅读全文
摘要:
进程的描述与创建 (一)进程的描述 (1)操作系统内核实现操作系统的三大管理功能(进程管理最为核心) 进程管理 内存管理 文件系统 (2)在Linux内中用一个数据结构struct task_struct来描述进程,以下是其数据结构的一部分 (3)Linux内核管理的进程状态 当使用fork()系统 阅读全文
摘要:
![](https://img2018.cnblogs.com/blog/1804156/201910/1804156-20191030114450195-1597893352.png) 阅读全文
摘要:
系统调用的三层机制(下) (一)给MenuOS增加命令 (1)打开虚拟机,首先用rm rf menu指令删除当前的menu目录,然后用git clone重新克隆一个新版本的menu,进入menu,运行make rootfs脚本结果报错 (2)经过与同学的讨论,我发现问题出在应该提前进入LinuxKe 阅读全文
摘要:
系统调用的三层机制(上) (一)用户态、内核态和中断 (1)Intel x86 CPU有4种不同的执行级别 分别是0、1、2、3,数字越小,特权越高。Linux操作系统中只是采用了其中的0和3两个特权级别,分别对应内核态和用户态。用户态和内核态很显著的区分方法就是CS:EIP的指向范围,在内核态时, 阅读全文
摘要:
MenuOS的构造 一.Linux源代码的关键目录 block:存放块设备管理代码; crypto:存放常见加密算法的C语言代码; Documentation:存放一些文档; drivers:驱动目录; firmware:固件; fs:文件系统; include:头文件目录; init:存放Linu 阅读全文
摘要:
操作系统的秘密 (一)计算机的三大法宝 存储程序计算机; 函数调用堆栈机制; 中断机制。 (二)堆栈 (1)堆栈的作用 记录函数调用框架; 传递函数参数; 保存返回值的地址; 提供局部变量存储空间。 (2)堆栈操作 push:栈顶地址减少4个字节,然后将操作数亚茹栈顶存储单元; pop:栈顶地址增加 阅读全文
摘要:
万分抱歉,由于电脑蓝屏,后三个实验的截图以及虚拟机环境都未能保存 重新写了六个实验,内容如下: 实验二 实验三 实验四 实验五 实验六 感谢我的室友蒋昕睿同学让我在凌晨使用他的虚拟机! 阅读全文