![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式linux应用编程
文章平均质量分 68
reille
新能源充电桩开发,电子/科技爱好者
展开
-
linux 2.6驱动延时函数-毫秒延时:mdelay;微妙延时:ndelay
毫秒延时:mdelay微妙延时:ndelay#ifndef mdelay#define mdelay(n) (/ (__builtin_constant_p(n) && (n) ({unsigned long __ms=(n); while (__ms--) udelay(1000);}))#endif#ifndef ndelay#define ndelay(x) ude转载 2008-10-19 22:23:00 · 5994 阅读 · 0 评论 -
基于嵌入式WEB的视频服务器的设计
当前的信息化时代,是一个构筑在网络基础之上的时代。基于TCP/IP协议的IP网络,像Inter-net、Intranet与Extranet等以令人惊异的不可阻挡之势发展着。而以网络为基础的数字视频监控系统是视频监控系统发展的主流,随着微处理器技术、计算机网络技术的进步,基于嵌入式WEB的网络视频监控系统逐渐得到了人们的广泛关注。转载 2011-01-20 17:00:00 · 1565 阅读 · 0 评论 -
linux 内存文件系统
在Linux中可以将一部分内存当作分区来使用,我们称之为RamDisk。对于一些经常被访问的文件,而它们又不会被更改,可以将它们通过RamDisk放在内存中,即可明显地提高系统的性能。当然你的内存可要足够大了。RamDisk有两种,一种可以格式化,加载,在Linux内核2.0/2.2就已经支持,其不足之处是大小固定。另一种是内核2.4才支持的,通过Ramfs或者tmpfs来实现,它们不能被格式化,但是用起来灵活,其大小随所需要的空间而增加或减少。这里主要介绍一下Ramfs和Tmpfs。转载 2011-05-10 17:45:00 · 6011 阅读 · 0 评论 -
VS2003工程转VS2008工程与新建VS2008的Qt工程时遇到的问题及其解决方法
作者:reille本博客网址:http://blog.csdn.net/reille/本文内容概要:详细描述了VS2003工程(project)转VS2008工程与新建VS2008的Qt工程时遇到的问题及其解决方法。——————————————————————————原创 2011-09-11 21:05:46 · 13649 阅读 · 0 评论 -
printf()函数关于不能打印字符的问题
作者:reille本博客网址:http://blog.csdn.net/reille/,转载本博客原创文章请注明出处。本文内容概要:说明printf()函数关于不能打印字符的问题—————————————————————————————————————————————原创 2011-10-18 23:23:41 · 7032 阅读 · 1 评论 -
Linux/Unix环境下的Make和Makefile语法和详解
Linux/Unix环境下的Make和Makefile详解无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,我们都经常要用到 make或make install。利用make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个源文件的应用程序,使用make和 makefile工具就可以简洁明快地理顺转载 2011-11-18 10:20:05 · 2927 阅读 · 0 评论 -
NET-SNMP开发实践
【摘 要】最近项目中需要用SNMP实现对APACHE http server的监控,由于项目后台开发使用C语言,故选择使用NET-SNMP包来实现对SNMP的开发与实现。对于NET-SNMP本人才刚入门,总会碰到N多的问题,网上对于NET-SNMP的资料就更少了,特别是缺少NET-SNMP的所涉及的整个开发过程。所以就有了一个冲动就是把学习中的过程写下来。本文将从NET-SNMP的安装配置、SNM转载 2011-10-30 18:03:02 · 12023 阅读 · 8 评论 -
编写Makefile总结
以下的记录都是本人在编写和阅读Makefile过程中所遇到疑问。1. makefile中的shell脚本语句需要在目标里才有效否则无效被忽略或者发生错误。2. makefile中执行shell条件判断语句出现错误:“syntax error : unexpected end of file”如下所示:DEL_DIR:@if [ -d /tmp/test ]原创 2011-11-21 11:25:33 · 6684 阅读 · 1 评论 -
MinGW GCC下sleep()函数问题
在MinGW GCC下编译带sleep()函数的测试程序,不管是包含了unistd.h头文件,还是stdio.h、stdlib.h头文件,就是找不到该函数的定义!在linux下,sleep()函数的头文件是:unistd.h,但在MinGW GCC下没有了这个函数的定义,到是在windows.h文件中有Sleep()函数的定义,其单位是ms级的延迟处理。根据这种情况,我们可以采用如下的处理原创 2011-11-30 16:32:26 · 11309 阅读 · 0 评论 -
代码中特殊的注释技术——TODO、FIXME和XXX的用处
作者:reille本博客网址:http://blog.csdn.net/reille/,转载本博客原创文章请注明出处。本文内容概要: 代码中特殊的注释技术——TODO、FIXME和XXX的用处。更多请关注:http://velep.com/——————————————————————————————————————————————————————————————原创 2011-12-29 14:38:20 · 70682 阅读 · 9 评论 -
7z介绍、7z命令在linux的安装和使用、7z移植到嵌入式linux的系列专题汇总
作为总结和分享,本文收集和整理了reille博客关于7z介绍、7z命令在linux的安装和使用、7z移植到嵌入式linux的文章系列。如果你喜欢、或有兴趣、或在工作中需涉及本专题所述的技术知识,建议按从上到下按顺序阅读,这样可以系统的了解本专题系统知识。7z格式、LZMA压缩算法和7-Zip详细介绍LZMA SDK介绍linux下安装7z命令及7z命令的使用原创 2012-06-27 09:22:23 · 2277 阅读 · 0 评论 -
ucd-snmp agent
关于ucd-snmp软件包 ucd-snmp介绍ucd-snmp源自于卡耐基.梅隆大学的SNMP软件包 CMU snmp 2.1.2.1, 由加州大学Davis分校(University of Califonia at Davis)开发与维护, 所以命名为ucd-snmp. 2000年11月ucd-snmp项目转到由SourceForge(www.sourceforge.net转载 2012-07-12 10:04:50 · 3575 阅读 · 0 评论 -
snmptrap、snmpinform和snmptrapd的详细介绍及其用法
在snmpwalk介绍及其用法一文中,介绍过net-snmp的snmpwalk的用法,殊不知,net-snmp还有trap的命令程序,可以用来测试snmp的trap方法(包括inform方法)。这些命令程序是: snmptrap、snmpinform和snmptrapd。其中:snmptrap:可以模拟snmp agent发送一个trap到snmp管理端(一般称为网管,snmp manag原创 2013-03-24 10:43:39 · 32159 阅读 · 2 评论 -
SNMP(协议)技术系列专题汇总
近一段时间,在技术开发上,涉及了snmp、snmp协议、snmpwalk、net-snmp软件包等与snmp相关技术。前前后后写了一些文章和学习笔记。在这里,对这些文章进行归总。如果有兴趣的朋友,请从上往下看,这样有利于更快的掌握snmp技术知识。1. 通信基础知识:SNMP协议和SNMP框架2. ubuntu9.10上编译安装net-snmmp-5.33. snmpwalk介绍原创 2012-07-28 10:27:11 · 2135 阅读 · 0 评论 -
三星6410裸机程序开发
网上关于S3C6410裸机程序开发都是基于RealView RVDS。也有一些是基于eclipse的,但都没有详细介绍在eclipse中如何建立S3C6410裸机程序工程。尽管友善之臂提供的6410裸机程序示例使用了eclipse工程,然程序的编译却还是基于makefile的。那怎样建立6410的eclipse裸机程序工程呢?本文就此进行详细介绍。有了这个工程,可以简化裸机程序的开发过程,原创 2014-05-26 08:39:04 · 2903 阅读 · 0 评论 -
linux socket can程序cantool
最近写了个自认为不错的基于linux socket can程序,主要功能:1. 程序具备全部CAN功能,包括CAN标准帧/扩展帧接收与发送、CAN总线错误判断、环回等功能2. 适用基于LINUX SOCKET机制实现的CAN接口,可用于嵌入式LINUX的CAN测试3. 程序采用标准LINUX命令行参数选项形式,接受用户参数现把源码进行分享原创 2015-11-20 17:29:23 · 11096 阅读 · 14 评论 -
read函数接收socket数据实例
本节将讲解一个read函数读取数据的实例。在程序中,监听一个端口,如果有客户端连接这个端口则接受这个连接,然后用read函数读取远程主机发送的数据,输出这些数据以后结束这个程序。转载 2010-12-07 12:35:00 · 5419 阅读 · 0 评论 -
ALSA声音编程介绍
ALSA表示高级Linux声音体系结构(Advanced Linux Sound Architecture)。它由一系列内核驱动,应用程序编译接口(API)以及支持Linux下声音的实用程序组成。这篇文章里,我将简单介绍ALSA项目的基本框架以及它的软件组成。主要集中介绍PCM接口编程,包括您可以自动实践的程序示例。转载 2010-09-01 16:00:00 · 19159 阅读 · 1 评论 -
shell基础知识
/////////////////////////////////////////////////////////////////////////////////////////////如何用Shell命令从一个文件中读取数据到变量中///////////////////////////////////////////////////////////////////////////////原创 2009-06-09 10:58:00 · 794 阅读 · 0 评论 -
命令前加./ ,在后台运行程序 linux批处理 linux自动运行程序
命令前加./ ,在后台运行程序 linux批处理 linux自动运行程序 为什么要在linux命令前加上 ./ 简述在chinaunix 论坛里找到的答案原来Quote: unix或linux中除了path系统变量外的目录下的命令都要加./修改用户的 .bash_profile 在 PATH一行最后加上 ":." (一个冒号,一个点) 然后退出重新登陆用户就ok了! PATH中没有转载 2009-06-09 12:22:00 · 2222 阅读 · 0 评论 -
shell使用汇总4——文件内容统计命令
文件内容统计命令 wc命令 wc命令的功能为统计指定文件中的字节数、字数、行数, 并将统计结果显示输出。 语法:wc [选项] 文件… 说明:该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。 该命令各选项含义如下: - c 统计字节数。 - l 统计行转载 2009-06-16 09:31:00 · 3084 阅读 · 0 评论 -
shell使用汇总2——sed学习
1. Sed简介sed是一种流线型的,非交互的编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转转载 2009-06-16 09:25:00 · 914 阅读 · 0 评论 -
shell使用汇总3——修改文件时间与创建新文件:touch
在介绍ls命令时,提到每个文件在Linux下面都会记录3个主要的修改时间:• modification time(mtime,修改时间):当该文件的“内容数据”更改时,就会更新这个时间。内容数据指的是文件的内容,而不是文件的属性。• status time(ctime,状态时间):当该文件的”状态(status)”改变时,就会更新这个时间,举例来说,更改了权限与属性,就会更新这个时间。• a转载 2009-06-16 09:27:00 · 10965 阅读 · 1 评论 -
libstdc++.so:undefined reference to 'sqrt'、'asin'、'log'编译问题
最近对单独的进程进行编译时,提示下列编译错误: 这是因为程序中使用了数学函数sqrt和asin的缘故。linux C函数库中有说明,在程序中使用数学函数时,如果使用GCC编译,请加入-lm; 没有加入前,编译语句是:$(CC) -L$(LIBPATH)/ -ldl -lpthread -s -o $(EXPORTPATH)/$(EXECUTABLE) $(OBJS) $(原创 2009-11-12 14:29:00 · 5255 阅读 · 0 评论 -
浅析嵌入式程序设计中的优化问题
嵌入式系统由于受功耗、成本和体积等因素的制约,嵌入式微处理器的处理能力与桌面系统处理器相比也存在较大差距,故嵌入式系统对程序运行的空间和时间要求更为苛刻。通常,需要对嵌入式应用程序进行性能优化,以满足嵌入式应用的性能需求。1 嵌入式程序优化的类型嵌入式应用程序优化,指在不改变程序功能的情况下,通过修改原来程序的算法、结构,并利用软件开发工具对程序进行改进,使修改后的程序运行速度更高或代码尺转载 2010-01-28 16:42:00 · 777 阅读 · 0 评论 -
xScale应用程序性能的优化策略
xScale应用程序性能的优化策略摘要:XScale是一款具有高性能、低功耗特性的ARM兼容嵌入式微处理器架构。XScale引入了多种硬件特性提高其处理能力,但也给应用程序的优化带来了困难。本文介绍XScale体系结构的特点,从开发工具选择、系统设计和编程开发等多个角度讨论对XScale应用程序进行优化的策略和技术。 关键词:XScale 编译优化 优化策略ARM引言XSc转载 2010-01-28 16:45:00 · 869 阅读 · 0 评论 -
Linux动态库(.so)搜索路径
在Linux 中,动态库的搜索路径除了默认的搜索路径外,还可通过三种方法来指定:方法一:在配置文件/etc/ld.so.conf中指定动态库搜索路径;方法二:通过环境变量LD_LIBRARY_PATH指定动态库搜索路径;方法三:在编译目标代码时指定该程序的动态库搜索路径。 众所周知,Linux动态库的默认搜索路径是/lib和/usr/lib。动态库被创建后,一般都复制到这两个目录中。当程转载 2009-11-30 14:30:00 · 915 阅读 · 1 评论 -
ARM 程序设计优化策略与技术
程序优化是指软件编程结束后,利用软件开发工具对程序进行调整和改进,让程序充分利用资源, 提高运行效率, 缩减代码尺寸的过程。按照优化的侧重点不同, 程序优化可分为运行速度优化和代码尺寸优化。运行速度优化是指在充分掌握软硬件特性的基础上, 通过应用程序结构调整等手段来降低完成指定任务所需执行的指令数。在同一个处理器上, 经过速度优化的程序比未经优化的程序在完成指定任务时所需的时间更短,即前者比转载 2010-01-29 11:21:00 · 703 阅读 · 0 评论 -
电力产品中谐波计算算法应用与比较
在当前很多的电力产品中,带谐波(2~n次谐波电压电流含有率、有效值、总畸变率)计算功能的电力产品越来越多,系统因设计不同而采取不同算法。 本文针对ARM9应用计算谐波,介绍笔者采用过的几种谐波算法。(以下提到的算法均不是笔者自创的)。 笔者采用过三种谐波算法,性能和特点大有差异。 1.三角函数算法: 三角函数算法是一种相对较简单,也较于容原创 2010-04-01 14:45:00 · 4919 阅读 · 5 评论 -
嵌入式Linux中的进程同步无竞争态读写
Linux作为一个开源、稳健的操作系统,支持多种平台,拥有丰富的开发工具和应用软件,尤其是其内核可裁减的特性,非常适合嵌入式系统。在数据实时性、准确度要求很高的情况下,系统在对数据的采集和处理过程中,由于其进程协调性问题,往往会造成数据的丢失。利用经典进程同步模型,可解决嵌入式Linux系统中数据同步读写冲突的问题。转载 2010-06-10 15:39:00 · 1106 阅读 · 0 评论 -
信号量函数 semget() semop() semctl()
可以使用系统调用semget()创建一个新的信号量集,或者存取一个已经存在的信号量集:转载 2010-06-10 17:20:00 · 1337 阅读 · 0 评论 -
嵌入式LINUX的开发经验与教训随笔
嵌入式LINUX的开发经验与教训随笔转载 2010-06-17 17:38:00 · 1719 阅读 · 5 评论 -
由cache"引起"的内存问题——记录Linux的Cache Memory(缓存内存)机制
由于没有弄清linux的cache机制,把linux下内存的使用增加误叛为内存问题,结果把一个简单的问题复杂化,教训深刻。原创 2010-09-02 19:19:00 · 10155 阅读 · 2 评论 -
Linux CAN编程详解
《Linux CAN编程详解》是一篇百度文库上的文档,主要描述了以下内容:can总线介绍及其帧类型; Linux 系统中CAN 接口配置; Linux 系统中CAN 接口应用程序开发; Linux 系统中CAN 接口编程实例 总体来说,这篇文档,对于嵌入式linux can应用编程还是有很大的帮助。特别是里面关于“Linux 系统中CAN 接口应用程序开发”的介绍,总结的很全面,讲原创 2015-11-22 23:39:22 · 7575 阅读 · 7 评论