易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : linux

LINUX内核精简

Linux自身具备一整套工具链,容易自行建立嵌入式系统的开发环境和交叉运行环境,并且可以跨越嵌入式系统开发中的仿真工具(ICE)的障碍。内核的完全开放使人们可以自己设计和开发出真正的硬实时系统,软实时系统在Linux中也容易得到实现。强大的网络支持使得可以利用Linux的网络协议栈将其开发成为嵌入式的TCP/IP网络协议栈。
  Linux提供了完成嵌入功能的基本内核和所需要的所有用户界面,它是多面的。它能处理嵌入式任务和用户界面。
  一个小型的嵌入式Linux系统只需要下面三个基本元素:
  * 引导工具
  * Linux微内核,由内存管理、进程管理和事务处理构成
  * 初始化进程
  如果要让它能干点什么且继续保持小型化,还得加上:
  * 硬件驱动程序
  * 提供所需功能的一个或更多应用程序。
  再增加功能,或许需要这些:
  * 一个文件系统(也许在ROM或RAM)中
  * TCP/IP网络堆栈
下面我们就从精简内核、系统启动、驱动程序将、X-Window换成MicroWindows四个步骤介绍嵌入式Linux的实际开发。
精简内核
  构造内核的常用命令包括:make config、dep、clean、mrproper、zImage、bzImage、modules、modules_install。命 ......

【转】linux中grep命令详解


linux中grep命令详解
在linux中grep命令是非常有用的,它和管道(|)配合使用,非常强大,用于搜索文本文件.如果想要在几个文本文件中查找一字符串,可以使用‘grep’命令。‘grep’在文本中搜索指定的字符串。
假设您正在‘/usr/src/linux/Documentation’目录下搜索带字符串‘magic’的文件:
$ grep magic /usr/src/linux/Documentation/* 
sysrq.txt:* How do I enable the magic SysRQ key?
sysrq.txt:* How do I use the magic SysRQ key? 
其中文件‘sysrp.txt’包含该字符串,讨论的是 SysRQ 的功能。
默认情况下,‘grep’只搜索当前目录。如果此目录下有许多子目录,‘grep’会以如下形式列出:
grep: sound: Is a directory 
这可能会使‘grep’的输出难于阅读。这里有两种解决的办法:
明确要求搜索子目录:grep -r 
或忽略子目录:grep -d skip 
当然,如果预料到有许多输出,您可以通过 管道 将其转到‘less’上阅读:
$ grep magic /usr/src/linux/Documentation/* | less
这样,您就可以更方便地阅读。
有一点要注意,您必 ......

Linux相关工作5年内新增80%


Linux基金会表示,在过去5年里,与Linux相关的工作岗位增多了80%。为了适应并推动这种趋势,Linux基金会发布了一个Linux工作台,为Linux相关工作求职者和雇主提供一个交流的平台。
Linux基金会去年从GeekNet那里购买了Linux.com域名,通过该网站为Linux用户和开发人员提供各种各样的内容和服务,包括是博客和社区技术支持。此次上线的工作台是Linux.com的最新上线内容。
Linux基金会执行理事Jim
Zemlin在一份声明中表示:“Linux在行业中的使用日益广泛,这也提供了日益增多的Linux工作。Linux.com的读者包括成千上万的全球
Linux专业人员。通过在社区里提供一个工作台功能,我们可以将雇主、求职者和招聘人员联系到一起,为更加美好的IT业明天贡献一份力量。”
......

linux /proc/stat 文件介绍及应用



般来说对于需要大量cpu计算的进程,当前端压力越大时,CPU利用率越高。但对于I/O网络密集型的进程,即使请求很多,服务器的CPU也不一定很到,
这时的服务瓶颈一般是在磁盘的I/O上。比较长见的就是,大文件频繁读写的cpu开销远小于小文件频繁读写的开销。因为在I/O吞吐量一定时,小文件的读
写更加频繁,需要更多的cpu来处理I/O的中断。
在Linux/Unix下,CPU利用率分为用户态,系统态和空闲态,分别表示CPU处于用户态执行的时间,系统内核执行的时间,和空闲系统进程执行的时间。平时所说的CPU利用率是指:
CPU执行非系统空闲进程的时间 / CPU总的执行时间。

Linux的内核中,有一个全局变量:Jiffies。
Jiffies代表时间。它的单位随硬件平台的不同而不同。系统里定义了一个常数HZ,代表每秒种最小时间间隔的数目。这样jiffies的单位就是
1/HZ。Intel平台jiffies的单位是1/100秒,这就是系统所能分辨的最小时间间隔了。每个CPU时间片,Jiffies都要加1。
CPU的利用率就是用执行用户态+系统态的Jiffies除以总的Jifffies来表示。
在Linux系统中,可以用/proc/stat文件来计算cpu的利用率(详细的解释可参考:http://www.linuxhowtos.org/System/procstat.htm
)。 ......

linux中各种信号介绍

1.SIGHUP信号
     UNIX中进程组织结构为 session (会话)包含一个前台进程组及一个或多个后台进程组,一个进程组包含多个进程。一个session可能会有一个session首进程,而一个session首进程可能会有一个控制终端。一个进程组可能会有一个进程组首进程。进程组首进程的进程ID与该进程组ID相等。这儿是可能会有,在一定情况之下是没有的。与终端交互的进程是前台进程,否则便是后台进程。
SIGHUP会在以下3种情况下被发送给相应的进程:
1、终端关闭时,该信号被发送到session首进程以及作为job提交的进程(即用 & 符号提交的进程)
2、session首进程退出时,该信号被发送到该session中的前台进程组中的每一个进程
3、若父进程退出导致进程组成为孤儿进程组,且该进程组中有进程处于停止状态(收到SIGSTOP或SIGTSTP信号),该信号会被发送到该进程组中的每一个进程。
     系统对SIGHUP信号的默认处理是终止收到该信号的进程。所以若程序中没有捕捉该信号,当收到该信号时,进程就会退出。
     下面观察几种因终端关闭导致进程退出的情况,在这儿进程退出是因为收到了SIGHUP信号。login shell是se ......

linux中waitpid系统调用

对于进程的一生可以用一些形象的比喻作一个小小的总结:
随着一句fork,一个新进程呱呱落地,但它这时只是老进程的一个克隆。
然后随着exec,新进程脱胎换骨,离家独立,开始了为人民服务的职业生涯。
人有生老病死,进程也一样,它可以是自然死亡,即运行到main函数的最后一个”}”,从容地离我们而去;也可以是自杀,自杀有2种方式,一种是调用 exit函数,一种是在main函数内使用return,无论哪一种方式,它都可以留下遗书,放在返回值里保留下来;它还甚至能可被谋杀,被其它进程通过另外一些方式结束他的生命。
进程死掉以后,会留下一具僵尸,wait和waitpid充当了殓尸工,把僵尸推去火化,使其最终归于无形。
 
在linux中wait系统调用一文中介绍了其中的一个殓尸工wait, 下面介绍另一个waitpid,这个貌似复杂些。
 
waitpid函数原型:
 
#include<sys/types.h>/* 提供类型pid_t的定义 */
#include<sys/wait.h>
pid_twaitpid(pid_t pid,int* status,int options);
从本质上讲,系统调用waitpid和wait的作用是完全相同的,但waitpid多出了两个可由用户控制的参数pid和options,从而为我们编程提供了另一种更灵活的方式 ......
总记录数:5772; 总页数:962; 每页6 条; 首页 上一页 [538] [539] [540] [541] 542 [543] [544] [545] [546] [547]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号