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

linux 隐式调用 自己写的动态库

~/test
|
|
|------main.c
|------lib
|        |
|        |------StringLen.h
|        |------Strlen.c
|        |------Strnlen.c
----------------StringLen.h:
#ifndef _STRINGLEN_H__
#define _STRINGLEN_H__
int Strlen(char *pStr);
int StrNlen(char *pStr, unsigned long ulMaxLen); 
#endif
-------------------------------------------------
---------------Strlen.c:
#include<stdio.h>
#include<assert.h>
#include "StringLen.h"
int  Strlen(char  *pStr)
{        
    unsigned  long  ulLength;
    assert(NULL  !=  pStr);
    ulLength  =  0;
    while(*pStr++)
    {                
        ulLength++;
    }
    return  ulLength;
}
-------------------------------------------------
---------------Strnlen.c:
#include<stdio.h>
#include<assert.h>
#include "StringLen.h"
int  StrNlen(char  *pStr,  unsigned  long  ulMaxLen)
{        
    unsigned  long  ulLength;
    assert(NULL  !=  pStr);        
    if(ulMaxLen  <=  0)        
    {               
         printf("Wrong  Max  Length!\n");
       return  -1;        
    } &


相关文档:

Linux中的内存分配和释放之__alloc_boot函数分析

 对于这个函数,其实是很多宏定义调用的函数,其中alloc_bootmem_low_pages(x)是其中一个调用它的宏,大家可以认为这些宏只是把这个__alloc_bootmem实质性的函数进行了封装。#define alloc_bootmem_low_pages(x)相当于__alloc_bootmem((x), PAGE_SIZE, 0),就是从0地址开始的低端内存分配按页大小对齐的内存。好了,为 ......

Linux驱动开发学习步骤

1. 学会写简单的makefile
    2. 编一应用程序,可以用makefile跑起来
    3. 学会写驱动的makefile
    4. 写一简单char驱动,makefile编译通过,可以insmod, lsmod, rmmod. 在驱动的init函数里打印hello world, insmod后应该能够通过dmesg看到输出。
  &n ......

linux驱动程序实例

本例是冯国进的 《嵌入式Linux 驱动程序设计从入门到精通》的第一个例子
感觉真是好书   强烈推荐
注释是deep_pro加的 转载请注明!我的特点是文不加点!
这个驱动是在内存中分配一个256字节的空间,供用户态应用程序读写。
先是头文件 demo.h
#ifndef _DEMO_H_
#define _DEMO_H_
#include <linux/ioct ......

Linux vmalloc的实现

内核版本:2.6.28
linux如何利用伙伴系统,slab分配器分配内存,用这些方法得到的内存在物理地址上都是连续的, 然而,有些时候,每次请求内存时,系统都分配物理地址连续的内存块是不合适的,可以利用小块内存“连接”成大块可使用的内存.这在操作系统设计中也被称为 “内存拼接”,显然,内存拼接在需要较大内 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号