摘要:
秦鼎涛 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 1.对Linux系统的理解 linux系统和其他的操作系统本质上是一样的,是沟通应用程序和硬件之间的桥梁。Linux操作系统包含了shell交互程序,系统调用库 阅读全文
摘要:
秦鼎涛 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一、理论学习: 1、进程的调度时机与进程切换 操作系统原理中介绍了大量进程调度算法,这些算法从实现的角度看仅仅是从运 行队列中选择一个新进程,选择的过程中运用了 阅读全文
摘要:
秦鼎涛 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一、视频学习 在Makefile找到启动内核命令: 执行exec——新加载的执行程序来输出的“hello world” 冻结后gdb跟踪,设置断点: 执行到了s 阅读全文
摘要:
秦鼎涛 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一、实验过程 1.删除原来的menu,并clone新的menu,用test_fork.c覆盖test.c 2. make rootfs之后新的内核启动,测试fo 阅读全文
摘要:
秦鼎涛 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一、实验要求: 1、使用gdb跟踪分析一个系统调用内核函数 2、根据本周所学知识分析系统调用的过程,从system_call开始到iret结束之间的整个过程,并 阅读全文
摘要:
秦鼎涛 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一、用户态、内核态和中断 二、系统调用概述 1、系统调用的意义 操作系统为用户态进程与硬件设备进行交互提供了一组接口——系统调用·把用户从底层的硬件编程中解放 阅读全文
摘要:
秦鼎涛 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一、实验目的及要求: 使用gdb跟踪调试内核从start_kernel到init进程启动 详细分析从start_kernel到init进程启动的过程并结合实验截 阅读全文
摘要:
秦鼎涛 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一、实验二:完成一个简单的时间片轮转多道程序内核代码(实验楼截图) 二、进程的启动和进程的切换机制 1、多道进程的处理采用了中断机制,利用cpu和内核代码来实现 阅读全文
摘要:
秦鼎涛 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 实验一 通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的 一、C语言源代码: int g(int x) { return x + 3; } int 阅读全文