- 博客(11)
- 收藏
- 关注
原创 linux源码entry_32.S中interrupt数组的分析
interrupt被定义在arch/x86/kernel/entry_32.S中; 下面,我们来详细理解一下entry_32.S中定义interrupt的这段代码: .section .init.rodata,"a" //定义一个段,.init.rodata表示该段可以被读写操作,"a"表示需要为该段分配内存 ENTRY(interrupt) //定义数据段的入口为interrupt .text //是告诉连接器,这部分数据是程序代码 .p2align 5
2010-11-17 18:42:00
3214
2
转载 在ubutntu的skyeye环境下调试ucos-ii
参考网页:http://blog.youkuaiyun.com/chenvsa/article/details/7011562 要用的工具是: 1.skyeye 2.arm-elf-tools 3.ucos-ii4skyeye 1.在ubuntu中,如果源中有skyeye的话安装最简单,sudoapt-get installskyeye,这样安装的skyeye不是最新
2011-12-09 16:38:25
848
原创 kgdb+Qemu-kvm调试环境建立方法和所需的相关文件
下面描述kgdb调试环境的建立。主要是参考:http://hi.baidu.com/liu_bin0101/blog/item/133e2f1f23395803314e1561.html,其中所需要的配置文件good_config在这个网页中也可以找到。可以按照网页中给定的方法手动配置内核配置文件。 --------------------裁减步骤------------------------
2011-11-17 11:39:06
16810
原创 制作KVM-qemu调试平台的步骤
<!-- @page {margin:2cm} p {margin-bottom:0.21cm} --> 制作KVM-qemu调试平台的步骤: 1.解压缩新版kvm:tar -xzvf qemu-kvm-0.13.0.tar.gz 2.解决依赖sudo apt-get build-dep qemu-kvm 3.配置安装路径:./configure—pr
2011-11-17 11:32:54
976
原创 随机数发生器
一个随机数发生器uniform()。首先有srand(time(0))来设置种子,所需要的头文件为stdlib.h和time.h。然后随机数发生器uniform()为: double uniform(int a, int b) { double rv; rv = ((double)(rand() * (b-a)) / (double)(RAND_MAX)) + a * 1.0;
2011-11-03 14:16:11
531
原创 子进程和父进程的pid一定不同吗?
<br /> p { margin-bottom: 0.21cm; } <br /> 子进程和父进程的pid 一定不同吗?<br /> 一般来说,子父进程的pid 是不同的。<br /> 除了系统的原始的0 号进程,创建一个进程可以调用fork() 、vfork() 、clone() 函数。在/kernel/fork.c 的fork()
2011-04-10 20:54:00
3556
原创 检查kvm虚拟机网络连接出错的一般步骤
<br /> p { margin-bottom: 0.21cm; } <br /> 检查kvm 虚拟机网络连接出错的一般步骤<br />进入kvm 虚拟机后:ifconfig 查看;<br /> dmesg | grep eth0, 是否已经连接,即:up/down<br /> lspci -v : 查看以太网控制模块具体是什么,模块
2011-04-08 14:17:00
1584
原创 内核模块的自动加载和Ubuntu-Linux的开机流程(ubuntu9.10到现在的ubuntu发行版)
<br /><br /> <br />ubuntu从6.10开始逐步用upstart代替原来的sysinit进行服务进程的管理的过程.但是在Ubuntu10.10的发行版中却找不到/etc/event.d这个目录了,原因是:<br />从ubuntu9.10后,http://www.examiner.com/geek-culture-in-rapid-city/ubuntu-10-10-fresh-install-to-acer<br /><br /><br />从而,在Ubuntu10.10发行版中没有了
2011-04-04 22:00:00
1783
1
原创 内核模块的自动加载和Ubuntu-Linux的开机流程(ubuntu6.10~ubuntu9.10)
内核模块的自动加载和Ubuntu-Linux的开机流程(对于没有涉及到源码的部分内容是参考网上资料,涉及到源码部分分析的是2.3.35.4的源码)鸟哥的开机关机流程与Loader: 1. 整个开机流程是 (1) 载入BIOS的硬件信息,并取得第一个开机装置的代号 (2)读取第一个开机装置的MBR的boot Loader (grub)的开机信息 (3)载入OS Kernel信息,解压Kernel,尝试驱动硬件 (4) Kernel执行init程序并获得run-lebel信息(如3或5)
2011-04-04 21:49:00
3528
原创 编译和安装新内核的详细步骤
p { margin-bottom: 0.21cm; }a:link { } 编译和安装新内核的详细步骤参考网址:http://www.cyberciti.biz/tips/compiling-linux-kernel-26.html主要的步骤是: make clean, make menuconfig;/*在kernel source中如果没有.config,则m
2011-04-02 12:51:00
1106
2
原创 内核启动时,设备及驱动初始化的实现( 版本2.6.35.4)
<br />内核启动时,设备及驱动初始化的实现( 版本2.6.35.4)<br /> 参考了网页:http://blog.youkuaiyun.com/lemon_fantasy/archive/2009/02/17/3900590.aspx<br /> http://blog.chinaunix.net/u2/68846/showart_694377.html<br /><br /><br /> Uboot完成系统的引导并将Linux内核拷贝到内存之后,bootm -> do_bootm_linux()跳转到k
2010-11-20 11:01:00
914
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅