摘要: 作业目录: 总结: 1.对“计算机是如何工作的”理解 最基础的,就是冯诺依曼体系结构结构,它最核心的思想是存储程序计算机,要点是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。 冯诺依曼体系结构的计算机,又叫存储程序计算机,从硬件的角度来看,其工作模型是CPU依次读取内存中的指令来完成工作 阅读全文
posted @ 2016-04-30 14:05 郝爽whnqj 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 1. Linux内核启动的过程——以MenuOS为例 1.1 计算机的启动过程 Linux内核的启动有三个参数: kernel initrd root所在目录、分区。 内核会首先生成0号进程idle,然后0号进程产生1号进程init,1号进程是所有用户态进程的祖先,0号进程是所有内核线程的祖先。1号 阅读全文
posted @ 2016-04-22 13:23 郝爽whnqj 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 第四章 进程调度 一、多任务 多任务操作系统就是能同时并发的交互执行多个进程的操作系统。多任务操作系统使多个进程处于堵塞或者睡眠状态,实际不被投入执行,这些任务尽管位于内存,但是并不处于可运行状态。多任务系统分类: 非抢占式多任务 抢占式多任务 1.抢占式多任务 Linux提供了抢占式的多任务模式, 阅读全文
posted @ 2016-04-14 14:06 郝爽whnqj 阅读(256) 评论(0) 推荐(0) 编辑
摘要: Vim编辑器 Vim 仅仅通过键盘来在插入和执行命令等多种模式之间切换。这使得Vim可以不用进行菜单或者鼠标操作,并且最小化组合键的操作,对文字录入员或者程序员可以大大增强速度和效率。 CHAPTER 1.VIM快速入门 一、Vim的六种基本模式 1.普通模式 Vim的普通模式用的编辑器命令,比如移 阅读全文
posted @ 2016-04-12 12:05 郝爽whnqj 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 进程的切换和系统的一般执行过程 一、进程调度与进程切换 1.不同的进程有不同的调度需求 第一种分类: I/O密集型(I/O-bound)频繁的进行I/O通常会花费很多时间等待I/O操作的完成CPU密集型(CPU-bound)计算密集型需要大量的CPU时间进行运算 第二种分类: 批处理进程不必与用户交 阅读全文
posted @ 2016-04-12 12:02 郝爽whnqj 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 可执行程序的装载 一、预处理、编译、链接和目标文件的格式 可执行文件的创建——预处理、编译和链接 目标文件及链接 ELF目标文件格式 ELF文件格式 -- (中文翻译版) 查看ELF文件的头部 shiyanlou:Code/ $ readelf -h hello 查看该ELF文件依赖的共享库 shi 阅读全文
posted @ 2016-04-10 13:11 郝爽whnqj 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 第3章 进程管理20 3.1 进程20 进程就是处于执行期的程序(目标码存放在某种存储介质上),但进程并不仅仅局限于一段可执行程序代码。通常进程还要包含其他资源,像打开的文件,挂起的信号,内核内部数据,处理器状态,一个或多个具有内存映射的内存地址空间及一个或多个执行线程。当然还包括用来存放全局变量的 阅读全文
posted @ 2016-04-02 10:59 郝爽whnqj 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 第18章 调试 调试工作艰难是内核级开发区别于用户级开发的一个显著特点,相比于用户级开发,内核调试的难度确实要艰苦得多。更可怕的是,它带来的风险比用户级别更高,内核的一个错误往往立刻就能让系统崩溃。 驾驭内核调试的能力(当然,最终是为了能够成功地开发内核)很大程度上取决于经验和对整个操作系统的把握。 阅读全文
posted @ 2016-03-31 12:39 郝爽whnqj 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 一、知识概要 进程的描述 进程描述符task_struct数据结构(一)进程描述符task_struct数据结构(二)进程的创建 进程的创建概览及fork一个进程的用户态代码理解进程创建过程复杂代码的方法浏览进程创建过程相关的关键代码创建的新进程是从哪里开始执行的?使用gdb跟踪创建新进程的过程二、 阅读全文
posted @ 2016-03-28 10:56 郝爽whnqj 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 第五周 给MenuOS增加time和time-asm命令 更新menu代码到最新版 在main函数中增加MenuConfig 增加对应的Time函数和TimeAsm函数 make rootfs 使用gdb跟踪系统调用内核函数sys_time 一直按n单步执行会进入schedule函数 sys_tim 阅读全文
posted @ 2016-03-26 14:37 郝爽whnqj 阅读(117) 评论(0) 推荐(0) 编辑