摘要:
程序破解 一、掌握NOP、JNE、JE、JMP、CMP汇编指令的机器码 ①NOP:NOP指令即“空指令”。执行到NOP指令时,CPU什么也不做,仅仅当做一个指令执行过去并继续执行NOP后面的一条指令。(机器码:90) ②JNE:条件转移指令,如果不相等则跳转。(机器码:75) ③JE:条件转移指令, 阅读全文
摘要:
第十三章 虚拟文件系统 虚拟文件系统〈有时也称作虚拟文件交换,更常见的是简称VFS)作为内核子系统,为用户空间程序提供了文件和文件系统相关的接口。系统中所有文件系统不但依赖VFS 共存,而且也依靠VFS 系统协同工作.通过虚拟文件系统,程序可以利用标准的Uinx 系统调用对不同的文件系统,甚至不同介 阅读全文
摘要:
Linux实践二 模块 一、知识点总结 ①Linux模块是一些可以作为独立程序来编译的函数和数据类型的集合。之所以提供模块机制,是因为Linux本身是一个单内核。单内核由于所有内容都集成在一起,效率很高,但可扩展性和可维护性相对较差,模块机制可弥补这一缺陷。 ②Linux模块可以通过静态或动态的方法 阅读全文
摘要:
第十七章 设备与模块 关于设备驱动和设备管理,讨论四种内核成分: ·设备类型:在所有Unix 系统中为了统一普通设备的操作所采用的分类 ·模块: Linux 内核中用于按需加载和卸载目标码的机制 ·内核对象:内核数据结构中支持面向对象的简单操作,还支持维护对象之间的父子关系。 ·sysfs :表示系 阅读全文
摘要:
一、网易云课堂 1.各章节总结 第一周:计算机是如何工作的 "http://www.cnblogs.com/20135323fuyunjin/p/5222787.html" 第二周:操作系统是如何工作的 "http://www.cnblogs.com/20135323fuyunjin/p/52478 阅读全文
摘要:
第四章 进程调度 进程调度程序(常常简称调度程序)可看做在可运行态进程之间分配有限的处理器时间资源的内核子系统。只有通过调度程序的合理调度,系统资源才能最大限度地发挥作用,多进程才会有并发执行的数果。调度程序没有太复杂的原理。最大限度地利用处理器时间的原则是,只要有可以执行的进程,那么就总会有进程正 阅读全文
摘要:
知识点总结 一、进程切换的关键代码switch_to的分析 1.进程调度与进程调度的时机分析 第一种分类: ①I/O密集型(I/O bound):频繁的进行I/O,通常会花费很多时间等待I/O操作的完成 ②CPU密集型(CPU bound):计算密集型,需要大量的CPU时间进行运算 第二种分类: ① 阅读全文
摘要:
第七章 链接 链接(linking) 是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载(或被拷贝)到存储器并执行。链接可以执行于编译时(compile time) ,也就是在源代码被翻译成机器代码时:也可以执行于加载时(load time) ,也就是在程序被加载器(loa 阅读全文
摘要:
可执行程序的装载 一、预处理、编译、链接和目标文件的格式 1.可执行程序是怎么得来的 ①编译器预处理 gcc E o XX.cpp XX.c ( m32)// 注:把include的文件包含进来,并且完成宏的替换 ②汇编器编译成汇编代码 gcc x cpp output S o hello.s he 阅读全文
摘要:
进程的描述和进程的创建 1.进程描述符task_struct数据结构 ①进程是计算机中已运行程序的实体。在面向线程设计的系统中,进程本身不是基本运行单位,而是线程的容器。 ② pid_t pid又叫进程标识符,唯一地标识进程。第1295行,list_head tasks即 进程链表。双向循环链表链接 阅读全文