linux内核分析 第八周读书笔记】的更多相关文章

第四章 进程调度 4.1 多任务 1.多任务操作系统就是能同时并发的交互执行多个进程的操作系统. 2.多任务操作系统使多个进程处于堵塞或者睡眠状态,实际不被投入执行,这些任务尽管位于内存,但是并不处于可运行状态. 3.多任务系统分类: (1)非抢占式多任务 (2)抢占式多任务 4.Linux提供了抢占式的多任务模式.在此模式下,由调度程序来决定什么时候停止一个进程的运行,以便其他进程能够得到执行机会.这个强制的挂起动作叫做抢占.进程被抢占之前能够运行的时间是预先设置好的,叫进程的时间片.时间片实…
Linux 内核分析第八周学习笔记 zl + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 进程调度的时机 直接调用:中断处理过程(包括时钟中断,I/O中断,系统调用和异常) 返回用户态时调用:根据need_resched标记调用 内核线程可以主动调用也可以被动调用 用户态线程仅能在陷入内核态后,即在中断处理过程中调度 进程上下文 用户地址空间:代码,数据,堆栈等 控制信息:进程描…
实验作业:进程调度时机跟踪分析进程调度与进程切换的过程 20135313吴子怡.北京电子科技学院 [第一部分]理解Linux系统中进程调度的时机 1.Linux的调度程序是一个叫schedule()的函数,这个函数被调用的频率很高,由它来决定是否要进行进程的切换,如果要切换的话,切换到哪个进程等等. 2.Linux调度时机主要有: 中断处理过程(包括时钟中断.I/O中断.系统调用和异常)中,直接调用schedule(),或者返回用户态时根据need_resched标记调用schedule() 内…
第八周 进程的切换和系统的一般执行过程 一.进程切换的关键代码switch_to分析 1.进程调度与进程调度的时机分析 (1)进程分类 第一种分类 I/O-bound:等待I/O CPU-bound:大量占用CPU进行计算 第二种分类 交互式进程(shell) 实时进程 批处理进程 (2)进程调度策略 调度策略:是一组规则,它们决定什么时候以怎样的方式选择一个新进程运行 Linux的调度基于分时和优先级. Linux的进程根据优先级排队 根据特定的算法计算出进程的优先级,用一个值表示 这个值表示…
第三章 进程管理 3.1 进程 进程:处于执行期的程序 线程是在进程活动中的对象:内核调度的对象是线程而不是进程,在Linux系统中,并不区分线程和进程 在现代操作系统中, 进程提供两种虚拟机制:虚拟内存器和虚拟内存. 进程在创建它的时刻开始存活,这通常是调用fork系统的结果.该系统调用通过复制一个现有进程来创建一个全新的进程.fork系统调用从内核返回两次,一次到父进程,另一次回到新产生的子进程. 通常,创建新的进程都是为了立即执行新的不同的程序,而接着调用exec()这组函数就可以创建新的…
第七章 链接 1.链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载到存储器并执行. 2.链接可以执行于编译时,加载时,运行时. 7.1编译器驱动程序 1.大多数编译系统提供编译驱动程序,它代表用户在需要时调用语言预处理器.编译器.汇编器和链接器. 7.2 静态链接 1.像Unix ld程序这样的静态链接器以一组可重定位目标文件和命令行参数作为输入,生成一个完全链接的可以加载运行的可执行目标文件作为输出. 2.输入的可重定位目标文件由各种不同的代码和数据节组成. 为…
第18章 调试 内核调试的难度大于用户级 一.准备开始 开始之前需要的是: 一个行为可靠且定义明确的bug 一个隐匿bug的内核版本 相关内核代码的知识和运气 想要成功的调试,取决于能不能将这些bug重现. 二.内核中的bug 产生:错误代码,同步错误,错误的管理硬件 症状:降低所有程序的运行性能,毁坏数据,系统死锁 三.通过打印来调试 1.健壮性 printk()函数在任何时候任何地方都能调用 2.日志等级 printfk()和printf()相比,可以指定一个日志级别,内核根据这个级别判断是…
LINUX内核分析第八周学习总结——进程的切换和系统的一般执行过程 张忻(原创作品转载请注明出处) <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.知识概要 (一)进程切换的关键代码switch_to分析 1.进程进度与进程调度的时机分析 2.进程上下文切换相关代码分析 (二)Linux系统的一般执行过程 1.Linux系统的一般执行过程分析 2.Linux系统执行过程中的几个特殊情况 3.内核与舞女 (三…
Linux内核分析第四章 读书笔记 第一部分--进程调度 进程调度:操作系统规定下的进程选取模式 面临问题:多任务选择问题 多任务操作系统就是能同时并发地交互执行多个进程的操作系统,在单处理器机器上这会产生多个进程在同时运行的幻觉,在多处理器机器上,这会使多个进程在不同的处理机上真正同时.并行地运行.无论在单处理器或者多处理器机器上,多任务操作系统都能使多个进程处于堵塞或者睡眠状态,也就是说,实际上不被投入执行,直到工作确实就绪. 多任务系统可以划分为两类:非抢占式多任务和抢占式多任务.Linu…
LINUX内核分析第八周学习总结 标签(空格分隔): 20135328陈都 陈都 原创作品转载请注明出处 <Linux内核分析>MOOC课程 http://mooc.study.163.com/course/USTC-1000029000 一.进程切换的关键代码switch_to的分析 1.进程调度与进程调度的时机 不同类型的进程有不同的调度需求. 第一种分类: I/O-bound 频繁的进行I/O:通常会花费很多时间等待I/O操作的完成. CPU-bound 计算密集型:需要大量的CPU时间…