自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 对linux内核学习的一点感受

徐晨 + 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ”跟着这门课不知不觉已经学了8个星期了,对Linux内核有了一个基本的认识,可以说是入门了。既然是课程总结,我大概描述一下这个课程,供对Linux内核感兴趣的同学参考。这门课没讲什么在学习操作系统的时候,我们知道了操作系统将CPU

2016-05-01 21:12:03 6723 2

原创 理解进程调度时机跟踪分析进程调度与进程切换的过程

Linux进程调度进程调度对于一个现代操作系统来说是必不可少的部分,为了表现出多个进程在CPU上同时运行的效果,Linux必须不断的从一个进程快速切换到另一个进程。在进程切换中有三个地方是值得注意的:一是如何调度,主要包括调度策略的设计,调度策略的作用是为了从运行队列中选择下一个被执行的进程; 二是何时调度,即进程调度的时机选择; 三是怎么切换,即选出来的下一个进程如何上CPU执行。内核通过sc

2016-04-17 23:04:39 1498

原创 Linux内核如何装载和启动一个可执行程序

徐晨 + 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ”今天我们来看一下,Linux内核是如何装载和启动一个可执行程序的。Linux下如何生成一个可执行程序首先我们可以看一下,linux如何生成一个可执行程序。chenxu@ ~/Code/kernel/lab7$ gcc -E -o

2016-04-10 22:31:10 5482

原创 分析Linux内核创建一个新进程的过程

今天我们讨论一下linux内核如果创建一个新进程的过程,这里使用fork来创建一个子进程,代码如下所示:#include <stdio.h>#include <stdlib.h>#include <unistd.h>int main(int argc, char * argv[]){ int pid; /* fork another process */ pid =

2016-04-03 18:10:05 940

原创 分析system_call中断处理过程

徐晨 + 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 这次的作业要求从system_call开始到iret结束之间的整个过程。set_system_trap_gate(SYSCALL_VECTOR, &system_call);一但执行int

2016-03-27 23:02:54 1060

原创 使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

徐晨 + 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ”本周我们的实验是“使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用”,系统调用列表列出了x86-32下的系统调用名称及中断号的对应关系。我们在本试验中选用了文件读写相关的系统调用,包括打开

2016-03-20 01:17:14 972

原创 利用gdb分析从start_kernel到init启动的过程

徐晨 + 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ”今天我们分析一下Linux Kernel启动时的最后一步,即从init/start_kernel()开始分析第一个用户态进程init是如何启动的。我们知道init/start_kernel()是内核启动后

2016-03-13 23:05:49 2079

原创 从mykernel来分析linux系统的启动过程

徐晨 + 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000我们本次分析一个精简过的内核代码mykernel,配合kernel3.9.4使用,该代码来自https://github.com/mengning/mykernel,源码的README中已经详细说明了如何下载源码

2016-03-06 23:01:43 1343

原创 通过汇编一个简单的C程序,分析汇编代码理解计算机工作原理

徐晨 + 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000这是一个简单的C语言程序,我们为了通过汇编语言分析其调用过程,首先将其编译成汇编代码。本实验中我们采用x86-32汇编,命令如下:gcc -S -o main.s main.c -m32我们去掉汇

2016-02-28 12:08:05 1269

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除