易截截图软件、单文件、免安装、纯绿色、仅160KB

linux内核原理

内核与应用程序分开构建
内核与应用程序被设计成分开构建的,由C头文件和C库实现(KEMIN:我们一般都是基于库编译构建应用程序,这是默认的。但是如果没有与实时系统的统一构建方式对比,认识面很单一,难以较全面认识构建软件的本质)。分开构建的优点是易于独立开发新应用,满足动态需求;缺点或代价是对内核与应用的接口的维护。
举一个具体例子详述[分开构建 ]所带来的不便。假设某OEM厂商要生产两种功能类似的网络产品:以太网桥(Ethernet bridge)和路由器(router),这两项产品是基于同一个硬件设计的。由于两种产品的硬件是一样的,基本的系统支撑软件部分也是一样的(比如boot loader和BSP),它们的不同只在于基于支撑软件上的更高级一些软件功能部分。因此,为了节省开发成本,OEM厂商只为它们维护一套单一的基本支撑软件部分代码,然后根据系统选项分别为它们构建特定功能软件部分。系统构建选项可通make实现,比如make bridge构建以太网桥,make router构建路由。要实现这两个选项则要完成很多“不便”的工作(KEMIN:由此可见分开构建的方便所带来的不便,代价代价!):
第一,为内核配置相应的协议软件,比如以太网桥需要spanning bridge,路由需要IP协议;
第二,构建相应的应用软件,比如路由器的路由服务进程(routed daemon);
第三,配置相应的启动文件,比如网络接口初始化文件;
第四,选择相应的配置文件(比如HTML文件和CGI脚本)打包进根文件系统。
用户可能会问,为什么不把两种产品所需的东西全打包进根文件系统,然后在运行时由产品自己判断和执行所需要的东西呢?桌面系统和服务器产品一般这样做的,但嵌入式系统与桌面系统和服务器的需求不同,为了节省资源,更多的组件配置发生在构建时,而不是运行时。
要实现[构建时的组件配置 ],需要什么样的机制呢?
内核构建过程(用户角度)
内核构建系统(kernel build system),行话kbuild,是和内核源码绑定在一起的基于GNU make的脚本系统。通过构建系统(以下简称kbuild),你可以轻易的对内核进行组态(KEMIN:组态就是所谓的配置,个人觉得台湾的这一译法较为形象和准确,为了术语统一,以下还是使用配置一语,了解本质后二语可互换),并构建新内核。组态与构建不完全一样,因为两过程的输入与产出不一样(KEMIN:以2.6版为例,组态的输入是Kconfig,输出是.config;.config是构建的输出之一)。另外,由于kbuild具有很好的可扩展性,你可以很


相关文档:

实战Linux Bluetooth编程(六) L2CAP编程实例

例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
 如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......

linux开启vsftp

1.service vsftpd start
2.查IP ifconfig;
3.win底下ping linux试连通。若ping的不通,关掉linux防火墙。关防火墙service iptables stop
4.ftp 192.168.124.128 ftp的配置文件:etc/vsftpd/vsftpd.conf
5.默认配置可以用匿名 账号anonymous 密码空。里面有个默认共享文件夹pub是在/var/ftp/目录下。
6.更改配置文件, ......

linux学习笔记

1.前言:三个问题
1.1什么是操作系统,操作系统的作用,操作系统的接口?
操作系统是管理计算机资源的主程序,是系统软件的核心。
它控制程序的执行和提供资源分配、调度、输入/输出控制和数据管理等服务。
操作系统提供三种类型的接口:命令接口、程序接口、图形接口。
1.2系统组成:
由四个部分组成: 内核、文件系 ......

linux下gcc编译sin函数出错的问题

 
Q:
I
keep getting
errors due to library functions being undefined,
but I'm #including all
the right header files.
A:
In the general case of calling code in an
external library,
using #include
to pull in
the right header file(s) is only half
of the story; you also have to tell th ......

Linux中的时间

    在Windwos中,系统时间的设置很简单,界面操作,通俗易懂。而且设置后,重启,关机都没关系。系统时间会自动保存在Bios的时钟里面,启动计算机的时候,系统会自动在Bios里面取硬件时间,以保证时间的不间断。     但在Linux下,默认情况下,系统时间和硬件时间,并不会自动同步。在Linu ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号