2018年12月9日

Linux内核分析第九次作业

摘要: 理解进程调度时机跟踪分析进程调度与进程切换的过程 一、基础知识 Linux系统的一般执行过程 一般情况:正在运行的用户态进程X切换到运行用户态进程Y的过程 1. 正在运行的用户态进程X 2. 发生中断 3. SAVE_ALL //保存现场,这里是已经进入内核中断处里过程 4. 中断处理过程中或中断返 阅读全文

posted @ 2018-12-09 21:20 20189223 阅读(243) 评论(0) 推荐(0) 编辑

2018年12月2日

Linux内核原理第八次作业

摘要: Linux内核如何装载和启动一个可执行程序 一、ELF可执行文件格式 ELF格式分类: 静态链接的ELF可执行文件和进程的地址空间: 1.可执行文件加载到内存 2.流程 二、实验内容 更新menu后用test.c覆盖test_exec.c,然后打开test.c(shitf+G 直接到文件尾的快捷键) 阅读全文

posted @ 2018-12-02 20:50 20189223 阅读(234) 评论(0) 推荐(0) 编辑

2018年11月25日

Linux内核分析第七次作业

摘要: 分析Linux内核创建一个新进程的过程 Linux中创建进程一共有三个函数: 实验部分 使用gdb进行跟踪调试 设置断点 部分调试内容 进程创建的大概过程 通过上面的代码可以看出,fork、vfork和clone这三个函数最终都是通过do_fork函数实现的。 追踪do_fork的代码: do_fo 阅读全文

posted @ 2018-11-25 14:31 20189223 阅读(187) 评论(0) 推荐(0) 编辑

2018年11月18日

Linux内核分析第六次作业

摘要: 分析system_call中断处理过程 一、先在实验楼的虚拟机中MenuOs增加utsname和utsname asm指令。 具体实现如下: 1、克隆最新新版本的menu,之后进入menu 2、进入test.c,完成之后make rootfs,使系统自动编译自动运行 3.设置分割点,用gdb追踪 4 阅读全文

posted @ 2018-11-18 16:16 20189223 阅读(187) 评论(0) 推荐(0) 编辑

2018年11月10日

《Linux内核原理与设计》第五周作业

摘要: 使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 方法一:使用库函数API在屏幕上显示进程的ID 这种方式是用C语言使用库函数API进行系统调用。 方法二:使用C语言内嵌汇编代码在屏幕上显示进程ID 对于内嵌汇编调用system_call() 中断处理 系统调用的工作机制: 实验总结 阅读全文

posted @ 2018-11-10 16:46 20189223 阅读(176) 评论(0) 推荐(0) 编辑

2018年11月1日

《Linux内核原理与分析》第四次作业

摘要: 跟踪分析Linux内核的启动过程 使用实验楼的虚拟机打开shell 使用 gdb 跟踪调试内核 使用 qemu 参数: — s:在初始化时冻结CPU — S:为gdb分配1234端口 gdb调试 另开一个shell窗口 从 start_kernel 开始到 init 进程启动 初始化中断向量 个人对 阅读全文

posted @ 2018-11-01 21:36 20189223 阅读(216) 评论(0) 推荐(0) 编辑

2018年10月26日

Linux内核分析第三次作业

摘要: 实验:mykernel时间片轮转多道程序内核 进入实验楼实验,在终端中分别输入以下命令 myinterrupt.c文件 阅读全文

posted @ 2018-10-26 19:26 20189223 阅读(185) 评论(1) 推荐(0) 编辑

2018年10月21日

Linux内核分析第二次作业

摘要: 这周学习了《庖丁解牛Linux内核分析》并且学习了实验楼的相关知识。 在实验楼的虚拟环境下编写代码: 通过gcc编译后,使用查看文件命令:cat -n 20189223.c 在vim中,通过“g/\.s*/d”命令可以删除很多所有以“.”开头的字符串,获得了“干净”的代码。 堆栈空间示意图 程序从m 阅读全文

posted @ 2018-10-21 21:40 20189223 阅读(197) 评论(1) 推荐(0) 编辑

2018年10月14日

Linux初级入门(第一次作业)

摘要: Linux初级入门 在本科期间学过一些Linux的简单命令,再次接触Linux不仅巩固了知识还学习到了很多新的东西。 什么是操作系统? 操作系统,英文名称Operating System,简称OS,是计算机系统中必不可少的基础系统软件,它是应用程序运行以及用户操作必备的基础环境支撑,是计算机系统的核 阅读全文

posted @ 2018-10-14 20:11 20189223 阅读(533) 评论(1) 推荐(0) 编辑

导航