自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (1)
  • 收藏
  • 关注

转载 如何为嵌入式开发建立交叉编译环境

<br />原文网址   http://www.ibm.com/developerworks/cn/linux/l-embcmpl/<br /> <br />在裁减和定制Linux,运用于你的嵌入式系统之前,由于一般嵌入式开发系统存储大小有限,通常你都要在你的强大的pc机上建立一个用于目标机的交叉编译环境。这是一个由编译器、连接器和解释器组成的综合开发环境。交叉编译工具主要由 binutils、gcc 和 glibc几个部分组成。有时出于减小 libc 库大小的考虑,你也可以用别的 c 库来代替 g

2011-05-31 21:30:00 591

转载 U-Boot简介与嵌入式内核移植简介

<br />1 U-BOOT:<br /> <br />在U-Boot(UniversalBootloader)之前,先介绍一下Bootloader。简单的说,Bootloader就是在操作系统内核运行之前的一段引导程序,类似于PC中的BIOS。通过它,可以完成对应硬件设备的初始化,并建立内存空间的映射图的功能,为最终调用系统内核做好准备。<br />U-Boot是遵循GPL条款的开放源码项目,它不仅仅支持嵌人式Linux系统的引导,U-Boot中Universal的一层含义就是在于U-Boot

2011-05-31 21:27:00 1056

转载 向内核加载/卸载模块

<br />模块是如何加载到内核的要支持模块的动态加载,卸载, 在编译内核时要注意: “Lodable Module Support" 中的相应选项要选上. 比如要支持加载模块, 应该选上Enable loadable module support; 要支持卸载模块, 要选上Module unloading ; 要支持强制卸载模块, 要选上Forced module unloading!1, When the kernel needs a feature that is not resident i

2011-05-31 16:33:00 1724

转载 栈的内部实现过程

先写个小程序:void fun(void){   printf("hello world");}void main(void){  fun()  printf("函数调用结束");}这是一个再简单不过的函数调用的例子了。当程序进行函数调用的时候,我们经常说的是先将函数压栈,当函数调用结束后,再出栈。这一切的工作都是系统帮我们自动完成的。但在完成的过程中,系统会用到下面三种寄存器:1.EIP2.ESP3.EBP当调用fun函数开始时,三者的作用。1.EIP寄存器里存储的是CPU下次要执行的指令的地址。 也就是

2011-05-21 18:39:00 1243

转载 系统栈和用户栈

系统栈(也叫核心栈、内核栈)是内存中属于操作系统空间的一块区域,其主要用途为: (1)保存中断现场,对于嵌套中断,被中断程序的现场信息依次压入系统栈,中断返回时逆序弹出; (2)保存操作系统子程序间相互调用的参数、返回值、返回点以及子程序(函数)的局部变量。 用户栈是用户进程空间中的一块区域,用于保存用户进程的子程序间相互调用的参数、返回值、返回点以及子程序(函数)的局部变量。 那么为什么不直接用一个栈,何必浪费那么多

2011-05-21 18:11:00 9086 1

原创 C的循环队列

#include "iostream"#include "stdlib.h"#include "stdio.h"#include "malloc.h"#define MAXQSIZE 5#define OK 1using namespace std;int i;char e; typedef struct {int *base;int front;int rear;}SqQueue;SqQueue q; initqueue(SqQueue &q){q.base=(int *)malloc(MAXQSIZE*

2011-05-19 20:06:00 865

原创 深入理解send/recv系统调用!

int send( SOCKET s, const char FAR *buf, int len, int flags ); 不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。客户程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。该函数的第一个参数指定发送端套接字描述符;第二个参数指明一个存放应用程序要发送数据的缓冲区;第三个参数指明实际要发送的数据的字节数;第四个参数一般置

2011-05-16 21:25:00 7124

原创 网络术语摘要!

<br />QOS:服务质量,是一组服务要求,网络必须满足这些要求才能够确保数据传输的服务级别。作用是为网络通信建立一个有保证的传输系统。<br />网络抖动:当网络环境出现异常时,端到端的传输不能够按照要求完成,出现延时,掩饰的程度就代表抖动的厉害程度。

2011-05-12 09:18:00 765

转载 从文件 I/O 看 Linux 的虚拟文件系统

从文件 I/O 看 Linux 的虚拟文件系统<br /> 吴 美清 (yolanda_wumq@hotmail.com), 研究生, 北京大学 软件与微电子学院吴美清,北京大学 软件与微电子学院研究生<br />简介: Linux允许众多不同的文件系统共存,并支持跨文件系统的文件操作,这是因为有虚拟文件系统的存在。虚拟文件系统,即VFS(Virtual FileSystem)是 Linux 内核中的一个软件抽象层。它通过一些数据结构及其方法向实际的文件系统如 ext2,vfat

2011-05-09 19:59:00 856

原创 socket编程时 send: Bad file descriptor

reason: It could be that you are closing the client socket before the threadgets a chance to run, or it could be that your thread is improperlysetup.

2011-05-08 13:57:00 16709

空空如也

空空如也

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

TA关注的人

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