自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 /proc内核目录

3.8.1 内核参数对应目录控制内核运行的参数存储在/proc目录下,可以简单通过查看/proc目录树下的文件来查看关于内核、处理器、内存、网络和其他部分的内核参数的配置情况。系统下运行的每个进程在proc下都有一个对应的以PID命名的目录。下表列出了一些目录存储的内核信息 文件/目录 信息

2008-03-25 09:10:00 1071

原创 Iptables 指南

http://iptables-tutorial.frozentux.net/cn/iptables-tutorial-cn-1.1.19.html 

2008-03-24 19:59:00 330

原创 AWK介绍

AWK介绍 0.awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk。 1.awk语言的最基本功能是在文件或字符串中基于指定规则来分解抽取信息,也可以基于指定的规则来输出数据。完整的awk脚本通常用来格式化文本文件中的信息。 2.三种方式调用awk 1) awk [opion] awk_script input_file1 [input_file2 ...] awk

2008-03-24 18:00:00 382

原创 深入Linux网络核心堆栈

==Phrack Inc.==              卷标 0x0b, 期刊号 0x3d, Phile #0x0d of 0x0f|=---------------------=[ 深入Linux网络核心堆栈 ]=-----------------------=||=----------------------------------------------------------------

2008-03-19 10:04:00 789

原创 Unix/Linux编程中所谓"僵尸(zombie/defunct)进程"

在Unix下的一些进程的运作方式。当一个进程死亡时,它并不是完全的消失了。进程终止,它不再运行,但是还有一些残留的小东西等待父进程收回。这些残留的东西包括子进程的返回值和其他的一些东西。当父进程 fork() 一个子进程后,它必须用 wait() 或者 waitpid() 等待子进程退出。正是这个 wait()

2008-03-18 21:24:00 1562

原创 内核启动参数从哪来?

Linux内核在启动时需要通过“启动参数(Boot Parameters)”来获取必要的启动信息,例如根文件系统分区,类型,终端配置等等。启动参数是如何传递给内核的呢?以下内容来自firenet:http://www.linuxforum.net/forum/gshowflat.php?Cat=&Board=embedded&Number=579007&page=2&view=collapsed&

2008-03-18 20:37:00 2158 1

原创 uClinux交叉编译综合文档。

交叉编译busybox可以参考《嵌入式系统设计与应用开发》(郑灵翔)一书131页,以及http://hi.baidu.com/zengzhaonong/blog/item/b0895436d24c33dea2cc2b03.html。主要过程:(1)下载,打补丁。这里使用ELFS版本的busybox v1.8.2.(2)修改Makefile:ARCH = armCROSS_COMPILE = a

2008-03-18 20:35:00 1057

原创 使用mkfs.jffs2工具制作jffs2根文件系统映像。

使用mkfs.jffs2工具制作jffs2根文件系统映像。mkfs.jffs2 -o rootfs_jffs2.img -r rootfs -e 0x40000 -l --pad=0x1e80000-e 表示擦除块大小,-l表示little-endian, --pad=0x1e80000 表示文件系统大小为0x1e80000 bytes,如果不足则使用0xff例如:mkfs.jffs2 --p

2008-03-18 20:22:00 2498

原创 skb_buff结构分析

struct sk_buff { /* These two members must be first. */ struct sk_buff  *next;  //这两个变量让sk_buff     struct sk_buff  *prev;  //构成双向的链表           struct sk_buff_head *list;  //指向链表的头 struct sock  

2008-03-18 11:45:00 2744

原创 lsof的用法

lsof的功能很多,特別提醒大家, -c,-g,-p,-u,这四个参数最有用。更详细的资料请参看:man lsof。1、查看文件系统阻塞    根据工作需要,系统管理员想卸载一个文件系统并执行umount /mountpoint,但程序报告常常显示:umount: /mountpoint: device is busy;这是因为该文件系统上有正在打开的文件而不允许你这么做。这时,我们需要知

2008-03-12 19:58:00 1203

原创 Linux内存管理

http://www.kerneltravel.net/journal/v/mem.htm摘要:本章首先以应用程序开发者的角度审视Linux的进程内存管理,在此基础上逐步深入到内核中讨论系统物理内存管理和内核内存的使用方法。力求从外到内、水到渠成地引导网友分析Linux的内存管理与使用。在本章最后,我们给出一个内存映射的实例,帮助网友们理解内核内存管理与用户内存管理之间的关系,希望大家最终

2008-03-12 12:58:00 1582

原创 关于嵌入式Linux系统进程调度

1 前言 处理机(CPU)是整个计算机系统的核心资源,在多进程的操作系统中,进程数往往多于处理机数,这将导致各进程互相争夺处理机。进程调度对系统功能的实现及各方面的性能都有着决定性的影响,其实质就是把处理机公平、合理、高效地分配给各个进程。调度是实现多任务并发执行的必要手段,不同的操作系统有着不同的调度目标。在传统的Unix类分时系统中,保证多个进程公平地使用系统资源,提供较好的响应时间是调度

2008-03-12 01:26:00 1288 2

原创 sed简明教程

1. Sed简介sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。以下

2008-03-11 15:16:00 5018

原创 gprof使用介绍

前两天尝试了一下gprof,感觉还挺好,写点东西介绍一下。gprof介绍gprof是GNU profiler工具。可以显示程序运行的“flat profile”,包括每个函数的调用次数,每个函数消耗的处理器时间。也可以显示“调用图”,包括函数的调用关系,每个函数调用花费了多少时间。还可以显示“注释的源代码”,是程序源代码的一个复本,标记有程序中每行代码的执行次数。为gprof编译程序在编译或链接源

2008-03-11 13:50:00 477

原创 Valgrind的主要功能

Valgrind是一个GPL的软件,用于Linux(For x86, amd64 and ppc32)程序的内存调试和代码剖析。你可以在它的环境中运行你的程序来监视内存的使用情况,比如C 语言中的malloc和free或者 C++中的new和 delete。使用Valgrind的工具包,你可以自动的检测许多内存管理和线程的bug,避免花费太多的时间在bug寻找上,使得你的程序更加稳固。

2008-03-11 13:49:00 745

原创 Linux下的调试工具

1.         mtrace在linux下开发应用程序,用C/C++语言的居多。内存泄露和内存越界等内存错误,无疑是其中最头疼的问题之一。glibc为解决内存错误提供了两种方案: 一种是hook内存管理函数。hook内存管理函数后,你可以通过记下内存分配的历史记录,在程序终止时查看是否有内存泄露,这样就可以找出内存泄露的地方了。你也可以通过在所分配内存的首尾写入特殊的标志,在释放

2008-03-11 13:49:00 639

原创 使用truss、strace或ltrace诊断软件的"疑难杂症"

truss 和strace用来跟踪一个进程的系统调用或信号产生的情况,而 ltrace用来跟踪进程调用库函数的情况。truss是早期为System V R4开发的调试程序,包括Aix、FreeBSD在内的大部分Unix系统都自带了这个工具;而strace最初是为SunOS系统编写的,ltrace 最早出现在GNU/Debian Linux中。这两个工具现在也已被移植到了大部分Unix系统中,大多数

2008-03-11 13:48:00 408

原创 strace命令用法

ldd命令行用法如下: ldd [--version] [-v|--verbose] [-d|--data-relocs] [-r|--function-relocs] [--help] FILE... 各选项说明如下: (1) --version : 此选项用于打印出ldd的版本号. (2) -v 或 --verbose : 此选项指示ldd输出关于所依赖的动态链接库的尽可能详细的信息. (3)

2008-03-11 13:47:00 586

原创 linux系统ioctl使用示例

程序1:检测接口的 inet_addr,netmask,broad_addr程序2:检查接口的物理连接是否正常程序3:更简单一点测试物理连接程序4:调节音量***************************程序1****************************************#i nclude #i nclude #i nclude #i nclude #i nclude #i

2008-03-11 13:46:00 496

原创 剖析Linux系统启动过程

本文以RedHat9.0和i386平台为例,剖析了从用户打开电源直到屏幕出现命令行提示符的整个Linux启动过程。并且介绍了启动中涉及到的各种文件。  阅读Linux源代码,无疑是深入学习Linux的最好方法。在本文对Linux启动过程的介绍中,我们也尝试从源代码的视角来更深入的剖析Linux的启动过程,所以其中也简单涉及到部分相关的Linux源代码,Linux启动这部分的源码主要使用的是C语

2008-03-11 13:45:00 389

原创 apache 排队!

以下为引用的内容:StartServers 5MinSpareServers 5MaxSpareServers 10MaxClients 150MaxRequestsPerChild 0  prefork的工作原理是这样的:控制进程在最初建立StartServers个子进程后, 为了满足MinSpareServers设置的需要,创建一个进程,等待一秒钟,继续创建第二个,等待一秒钟,继而创建

2008-03-11 13:41:00 553

原创 将LINUX的控制台定向到串口终端

利用串口终端作为Linux控制台,可以免去额外的键盘,显示卡和显示器,同时可将Linux主机作为一个任意用途的嵌入式黑匣。 将串口终端连接到计算机的串口上并不困难,可以参考Linux的HOWTO文档和以及inittab和agetty的帮助信息。这里扼要地说一下。   首先,准备好一根null modem 电缆.   其次,在文件/etc/inittab 增加下面一行。[注:如果你不采用 agett

2008-03-11 13:40:00 650

原创 uClinux系统分析详解

 Linux是一种很受欢迎的操作系统,它与UNIX系统兼容,开放源代码。它原本被设计为桌面系统,现在广泛应用于服务器领域。而更大的影响在于它正逐渐的应用于嵌入式设备。uClinux正是在这种氛围下产生的。在uClinux这个英文单词中u表示Micro,小的意思,C表示Control,控制的意思,所以uClinux就是Micro-Control-Linux,字面上的理解就是"针对微控制领域而设计的L

2008-03-11 13:39:00 348

空空如也

空空如也

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

TA关注的人

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