内核调试方法之串口输出

最近遇到了内核调试的一个问题,先列举一下几种调试方式: 1.kdump来调试,信息太多了,不好分析。 2.屏幕输出来调试,可能会导致屏幕显示不是很全的问题。 3.netconsole调试,如果bug出在网络模块上,可能会导致最后的panic信息无法通过网络发送出去。 综合上述原因,如果只是需要少量的调试信息可以使用串口来调试。 串口调试的配置也比较简单: (1)修改grub.conf(或者...

作者: 瀚海书香 发布时间: 01-05

arm汇编语言调用C函数之参数传递

arm汇编语言调用C函数之参数传递 于ARM体系来说,不同语言撰写的函数之间相互调用(mix calls)遵循的是 ATPCS(ARM-Thumb Procedure Call Standard),ATPCS主要是定义了函数呼叫时参数的传递规则以及如何从函数返回,关于ATPCS的详细内容可以查看ADS1.2 Online Books ——Developer Guide的2.1节。这篇文档要讲的是 汇编代码中对C函数调用时如何进行参数的传递以及如何从C函...

作者: ljjmissu 发布时间: 01-05

利用Apache的deflate模块压缩HTTP传输量

为了节约带宽,减少网络传输量,加快网速,我们决定对网页进行压缩后再传输给客户. 可以选择gzip或者gzip来压缩. 我们的服务器软件是Apache 2.2.3 / CentOS 5 Apache2.x版本自带了deflate模块,我们可以直接使用(Apache 1.x 使用 modgzip). 配置: vim /etc/httpd/conf/httpd.conf /mod_deflate 查找 应该能找到 LoadModule deflate_module modules/mod_deflate.so 如果前面有#注...

作者: realmon 发布时间: 01-04

chown详解

指令名称 : chown 使用权限 : root 使用方式 : chmod [-cfhvR] [--help] [--version] user[:group] file... 说明 : Linux/Unix 是多人多工作业系统,所有的档案皆有拥有者。利用 chown 可以将档案的拥有者加以改变。一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管...

作者: leolzbing521 发布时间: 01-04

Netfilter源码分析--7、内核空间与用户空间的数据交互

七、内核空间与用户空间的数据交互 内核空间与用户空间的数据交互通过getsockopt和setsockopt来完成,这个两个函数用来控制相关socket文件描述符的的选项值,先来看这两个函数的原型: set/getsockopt(2)函数的基本使用格式为: int setsockopt(int sockfd, int proto, int cmd, void *data, int datalen) int getsockopt(int sockfd, int proto, int cmd, void *data, int d...

作者: jazy333 发布时间: 01-05

CentOS 修改ls目录的颜色

修改ls目录的颜色 linux系统默认目录颜色是蓝色的,在黑背景下看不清楚,可以通过以下2种方法修改ls查看的颜色 方法一: 1、在~/.bash_profile文件中添加LS_COLORS export LS_COLORS='no=00:fi=00:di=01;33:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;35:*.cmd=01;35:*.exe=01;35:*.com=01;35:*.btm=01;35:*.bat=01;35:*.sh=...

作者: x-fish 发布时间: 01-05

编译内核模块 .ko文件的注意事项 缺少:mmzone.h..

前两天新到手一个6410的板子,按照说明在上面跑了一下android和QT,都成了。今天想试试helloworld模块的装载发现了一些需要注意的问题。 出现的问题:编译的时候提示缺少头文件 mmzone.h ....bounds.h...等 include/linux/mmzone.h:18:26: error: linux/bounds.h: No such file or directory include/linux/mmzone.h:197:5: warning: "MAX_NR_ZONES" is not defined 原因:b...

作者: pauleric 发布时间: 01-06

Netfilter源码分析--6、NAT

六、NAT 6.1、简介 网络地址转换源(NAT)分为(Source NAT,SNAT)和目的NAT(Destination NAT, DNAT)2种不同的类型。SNAT是指修改数据包的源地址(改变连接的源IP)。SNAT会在数据包送出之前的最后一刻做好转工作。地址伪装 (Masquerading)是SNAT的一种特殊形式。DNAT 是指修改数据包的目标地址(改变连接的目的IP)。DNAT 总是在数据包进入以后立即转发,端口转发,负载平衡和透明...

作者: jazy333 发布时间: 01-05

miniGui 移植遇到的一个问题configure: error: C..

今天下午按照既定配置交叉编译miniGui 的时候遇到了一个问题: error: C compiler cannot create executables [root]@libminigui-1.6.10#./buildlib-uclinux-44b0x.sh checking build system type... i386-pc-linux-gnu checking host system type... arm-elf-linux-gnu checking target system type... arm-elf-linux-gnu checking for arm-elf-linux-gcc... arm-elf-gcc c...

作者: swet123 发布时间: 01-05

Linux下查詢raid信息

有些情况下系统不是自己装的,raid也不是自己配置的,远程登录系统后可能就不知道系统是否有做raid,raid级别?因此稍微总结一下Linux下查看软、硬raid信息的方法。 软件raid:只能通过Linux系统本身来查看 cat /proc/mdstat 可以看到raid级别,状态等信息。 硬件raid: 最佳的办法是通过已安装的raid厂商的管理工具来查看,有cmdline,也有图形界面。如Adaptec公司的硬件卡...

作者: zhengfeng2100 发布时间: 01-04