logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

调试linux内核总览

<br />1. 内核自带的trace方法:<br />    a. 直接在内核中添加printk()调用。<br />    c. Oops, 基本上是用来显示内核出错的瞬间寄存器的内容。参见内核文档.kernel-Oops.txt<br />2. 无源内核调试器:<br />    a. kdb,使用SysRq键中断后,进行内核内存和寄存器的检查。需要在内核源码上打kdb补丁。也可以用一个串口

#uml#数据结构
关于Linux内核可加载模块的版本问题

内核识别模块版本号是用两种机制,一种gensym,该机制为所有内核符号根据接口生成一个唯一的CRC符号串,如果内核和模块都开启了该功能,那么当加载版本不匹配的模块时,就会报错,而且这种错误,当使用强行加载时通常也会失败,原因很简单,因为模快使用的内核函数原型发生了变化。第二种就是kernel_version,这个全局串在linux/module.h中定义,并被编译入所有的模块中,当加载时模块时如果

#linux
IEEE 754浮点数表示及浮点数转换全解

基本上我们记住几个公式就行了(蓝色字体公式)。第一:浮点表示形式: N=|s|  E  |         M         |    。 单精度:s=1位,E=8位,M=23位。 双精度 s=1位,E=11位,M=52位 第二:bias=2^(k-1) - 1, bias是归一化偏置值,或模,代表指数E所能表达的最大值,k是E的位数。它的作用是将浮点数的值分布向0的方向靠拢,本来2

文章图片
关于Linux下C/C++开发的入门

1,先有linux环境搭minGW和cygwin都有点麻烦,最最简单的办法还是装个真正的linux,用虚拟机也好,在网络上的另一台机器也好。这样不仅快,而且你有了真正的环境。2.会C/C++语言(估计你会的)3.入门阶段熟悉gcc命令行,最基本的参数,如,-g,-W,-O,-o,-c 建议看man gcc(很大找想要的)4.编译第一个helloworld程序: 基本命令 gcc helloworl

#linux
Linux/Unix编程怎样入门

1,先有linux环境搭minGW和cygwin都有点麻烦,最最简单的办法还是装个真正的linux,用虚拟机也好,在网络上的另一台机器也好。这样不仅快,而且你有了真正的环境。2.会C/C++语言(估计你会的)3.入门阶段熟悉gcc命令行,最基本的参数,如,-g,-W,-O,-o,-c 建议看man gcc(很大找想要的)4.编译第一个helloworld程序: 基本命令 gcc helloworl

#linux
到底了