2016年6月3日
摘要: 一、 设置修改系统、应用默认字符集 1. 查看虚拟机的字符集: 由此可见,该虚拟机的字符集为zh_CN.UTF-8。 2. 查看服务器支持的编码方式 3. 修改字符集类型 上图可见,LANG字符集类型修改为en_US.utf-8。 4. 查看某个文件的字符类型 二、 同一文件存储为不同字符集,并分析 阅读全文
posted @ 2016-06-03 01:06 20135223 阅读(754) 评论(0) 推荐(0) 编辑
摘要: ELF文件(目标文件)格式主要三种: 1)可重定向文件:文件保存着代码和适当的数据,用来和其他的目标文件一起来创建一个可执行文件或者是一个共享目标文件。(目标文件或者静态库文件,即linux通常后缀为.a和.o的文件) 2)可执行文件:文件保存着一个用来执行的程序。(例如bash,gcc等) 3)共 阅读全文
posted @ 2016-06-03 00:57 20135223 阅读(15183) 评论(2) 推荐(1) 编辑
  2016年6月2日
摘要: 1、 掌握NOP、JNE、JE、JMP、CMP汇编指令的机器码 NOP:NOP指令即“空指令”。执行到NOP指令时,CPU什么也不做,仅仅当做一个指令执行过去并继续执行NOP后面的一条指令。(机器码:90) JNE:条件转移指令,如果不相等则跳转。(机器码:75) JE:条件转移指令,如果相等则跳转 阅读全文
posted @ 2016-06-02 23:37 20135223 阅读(880) 评论(0) 推荐(0) 编辑
  2016年4月28日
摘要: 姓名:何伟钦 学号:20135223 ( *原创作品转载请注明出处*) ( 学习课程:《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-100002900 学号:20135223 ( *原创作品转载请注明出处*) ( 学习课程:《Linux 阅读全文
posted @ 2016-04-28 22:42 20135223 阅读(386) 评论(0) 推荐(0) 编辑
  2016年4月20日
摘要: 进程调度 4.1 多任务 多任务操作系统就是能同时并发的交互执行多个进程的操作系统。 多任务系统分为两种: 抢占式多任务:Linux提供了抢占式的多任务模式,由调度程序来决定什么时候停止一个进程的运行。 现代操作系统提供:动态时间片计算的方式;可配置的计算策略 非抢占式多任务:除非进程自己主动停止运 阅读全文
posted @ 2016-04-20 22:59 20135223 阅读(442) 评论(0) 推荐(0) 编辑
  2016年4月13日
摘要: 姓名:何伟钦 学号:20135223 ( *原创作品转载请注明出处*) ( 学习课程:《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-100002900 一、进程调度与进程切换 (一)不同的进程有不同的调度需求 第一种分类: I/O密集型 阅读全文
posted @ 2016-04-13 23:48 20135223 阅读(381) 评论(0) 推荐(0) 编辑
  2016年4月7日
摘要: 预处理阶段:将*.c文件转化为*.i预处理过的C程序。 编译阶段:将*.i文件编译为汇编代码*.s文件。 汇编阶段:将*.s文件转化为*.o的二进制目标代码文件。 链接阶段:将*.o文件转化为可执行文件。 生成可执行文件:将*.o转换为可执行文件。 执行可执行C语言文件。 (二)目标文件: 三种形式 阅读全文
posted @ 2016-04-07 01:15 20135223 阅读(516) 评论(0) 推荐(0) 编辑
  2016年4月5日
摘要: 姓名:何伟钦 学号:20135223 ( *原创作品转载请注明出处*) ( 学习课程:《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-100002900 学习内容:Linux内核如何装载和启动一个可执行程序 理解编译链接的过程和ELF可执 阅读全文
posted @ 2016-04-05 21:28 20135223 阅读(840) 评论(0) 推荐(0) 编辑
  2016年3月30日
摘要: 学习内容:分析Linux内核创建一个新进程的过程 阅读理解task_struct数据结构 分析fork函数对应的内核处理过程sys_clone,理解创建一个新进程如何创建和修改task_struct数据结构; 使用gdb跟踪分析一个fork系统调用内核处理函数sys_clone ,验证对Linux系 阅读全文
posted @ 2016-03-30 22:52 20135223 阅读(417) 评论(0) 推荐(0) 编辑
  2016年3月28日
摘要: 1.内核中的bug 内核调试的难点 2. 内核调试的工具和方法 2.1 输出 LOG 输出LOG不光是内核调试, 即使是在用户态程序的调试中, 也是经常使用的一个调试手段. 通过在可疑的代码周围加上一些LOG输出, 可以准确的了解bug发生前后的一些重要信息. linux内核中输出LOG的函数是 p 阅读全文
posted @ 2016-03-28 20:11 20135223 阅读(265) 评论(0) 推荐(0) 编辑