摘要: 第6章 进程的描述和进程的创建 =================== 一、学习笔记 1.进程描述符task_struct数据结构 Linux内核中的进程是非常复杂的,在操作系统原理中,我们通过进程控制块PCB描述进程。为了管理进程,内核要描述进程的结构,再Linux内核中用一个数据结构struct 阅读全文
posted @ 2019-11-01 23:10 孙茂林 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 第5章 系统调用的三层机制(下) =================== 一、试验记录 1.在qemu中增加命令 ①更新menu代码到最新版 ②在代码中加入C函数、汇编函数 ③在main函数中加入MakeConfig ④make rootfs ⑤在qemu中查看添加的命令 ⑥分别执行新增的命令 2. 阅读全文
posted @ 2019-10-27 15:44 孙茂林 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 第4章 系统调用的三层机制(上) =================== 一、学习笔记 1. intel处理器一共有四种运行级别,linux使用了0,3两种运行级别,分别为内核态,用户态。 2. 内核态可以访问所有的内存,而用户态只可以访问0x00000000 0xbfffffff之间的内存。 3. 阅读全文
posted @ 2019-10-18 21:55 孙茂林 阅读(204) 评论(1) 推荐(0) 编辑
摘要: 第3章 MenuOS的构造 =================== 一、学习笔记 1. 操作系统的“两把宝剑”:中断上下文、进程上下文。 2. 自2003年12月,Linux内核的版本号按照A.B.C.D的方式命名。 A和B变得无关紧要,C是内核的真是版本。D是安全补丁和bug修复。 3. Linu 阅读全文
posted @ 2019-10-11 22:58 孙茂林 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 第2章 操作系统是如何工作的 =================== 一、学习笔记 1. 计算机的三大法宝:存储程序计算、函数调用机制、中断。 2. 堆栈的具体作用有:记录函数调用框架、传递函数参数、保存返回值的地址、提供函数内部局部变量的存储空间等。 3. 堆栈相关的寄存器: ESP:堆栈指针(s 阅读全文
posted @ 2019-09-28 17:41 孙茂林 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 第1章 计算机工作原理 =================== 实验的具体过程如下: 一、实验的C语言代码如图所示: 二、将C语言代码转化为汇编语言代码如图所示: 三、堆栈空间示意图如图所示: 在这里,0~9代表堆栈空间的标号,压栈时标号加1,出栈时标号减1。右侧的数字表示内存地址,EBP和ESP寄 阅读全文
posted @ 2019-09-22 13:07 孙茂林 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 学习内容总结 =================== Linux基本命令总结 一、Linux文件的基本操作: touch:创建空白文件 实例一:创建不存在的文件。如使用touch test1命令,创建一个名为“test1”的文件; 实例二:更新时间戳。如使用touch r test1 test2命令 阅读全文
posted @ 2019-09-15 18:15 孙茂林 阅读(337) 评论(1) 推荐(0) 编辑
摘要: 如何排版章节 =================== 大标题 ========== 小标题 一级标题 二级标题 三级标题 四级标题 如何插入列表: 个人编程,写一个命令行程序 注册Github账号,建立项目仓库 添加ReadMe.md并编辑,描述项目的简要介绍、功能、用例、下载、文档等 建立doc目 阅读全文
posted @ 2019-09-15 13:20 孙茂林 阅读(230) 评论(1) 推荐(0) 编辑