Linux
dadaguo3000
这个作者很懒,什么都没留下…
展开
-
linux中 likely与unlikely .
http://blog.csdn.net/tommy_wxie/article/details/7384641转载 2013-07-15 10:14:32 · 528 阅读 · 0 评论 -
Linux 的多线程编程的高效开发经验
<br />linux下的多线程编程,可以重点看看第一条。有的人实现了递归锁!却没用这个属性。<br /> <br />https://www.ibm.com/developerworks/cn/linux/l-cn-mthreadps/?open&cm_mmc=5273-_-n-_-vrm_newsletter-_-10104_113763&cmibm_em=dm:0:10615990转载 2011-03-07 17:36:00 · 315 阅读 · 0 评论 -
offsetof,搞嵌入式必须会的杀手锏
<br />#define offsetof(TYPE, MEMBER) ((int)(&((TYPE *)0)->MEMBER))<br /> <br />在嵌入式应用中,我们时常将一些I/O寄存器映射到内存地址空间进行访问。这种映射使原本复杂的寄存器访问变得象访问普通的RAM地址一样方便。<br /> <br />http://linux.chinaunix.net/bbs/thread-954050-1-1.html转载 2011-03-08 15:34:00 · 333 阅读 · 0 评论 -
Graphviz
<br />http://www.ibm.com/developerworks/cn/linux/l-graphvis/<br /> <br />http://hi.baidu.com/ghxandsky/blog/item/f247ba2bb317cbf3e6cd401d.html<br /> <br />测试实验如下:原创 2011-03-07 11:29:00 · 357 阅读 · 0 评论 -
Linux 可加载内核模块剖析
<br />http://www.ibm.com/developerworks/cn/linux/l-lkm/?S_TACT=105AGX52&S_CMP=NL&ca=dnl-cn-08132008转载 2011-03-01 20:43:00 · 366 阅读 · 0 评论 -
doxygen 生成文档
<br />http://www.ibm.com/developerworks/cn/aix/library/au-learningdoxygen/?S_TACT=105AGX52&S_CMP=NL&ca=dnl-cn-10222008<br /> <br />在公司中,看到第三方给的代码有的是以该形式生成的。<br /> <br />最后还是觉得实用word文档和chm来生成比较好。看个人习惯吧!转载 2011-02-28 11:04:00 · 397 阅读 · 0 评论 -
Cmake入门
<br />http://www.cppblog.com/kongque/archive/2011/01/12/138402.html转载 2011-02-25 17:35:00 · 292 阅读 · 0 评论 -
Linux下的调试工具
http://blog.csdn.net/absurd/archive/2006/02/28/612612.aspx1.mtrace在linux下开发应用程序,用C/C++语言的居多。内存泄露和内存越界等内存错误,无疑是其中最头疼的问题之一。glibc为解决内存错误提供了两种方案:一种是hook内存管理函数。hook内存管理函数后,你就可以通过记下内存分配的历史记录,在程序终止时查看是否有内存泄露,这样就可以找出内存泄露的地方了。你也可以通过在所分配内存的首尾写入特殊的标志,在释放内存时检查该标志是否被破坏转载 2011-01-27 10:34:00 · 531 阅读 · 0 评论 -
MiniGUI编程指南(2)
<br />对话框<br /> <br />控件:<br />控件内部发生某种事件时,会通过通知消息通知其父窗口。通知消息一般通过MSG_COMMAND消息发送,该消息的wParam参数由子窗口标识符和通知码组成,lParam参数含有发出通知消息的控件句柄。<br /> <br />事件钩子:<br />通常情况下,键盘事件和鼠标事件以其正常的途径从底层设备传递到最终的应用程序窗口过程中进行处理。MinuGUI提供了一种izhi,使得我们可以在这些事件转换成响应的消息并传递到具体的窗口之前截获这些事件,然后原创 2010-11-25 11:04:00 · 594 阅读 · 0 评论 -
MiniGUI 编程指南(1)
<br />阅读一下mimigui编程指南,有些函数又重新理解了下。同时也更好的了解Autoconf 和Automake。其中还介绍了MiniGUI-Process模式。<br />注意细节:<br />CreateInfo.hHosting:该域表示的是将要建立的主窗口使用哪个主窗口的消息队列。使用其它主窗口消息队列的主窗口,我们称为“被托管”的主窗口。<br /> <br />应用程序一般在主窗口过程中收到MSG_CLOSE消息时调用DestroyMainWindow这个函数销毁主窗口。<br />De原创 2010-11-25 11:00:00 · 1632 阅读 · 0 评论 -
linux驱动开发的连接
<br /><br />http://kernelnewbies.org/<br />http://free-electrons.com/docs/<br />http://lwn.net/Kernel/LDD3/原创 2011-01-18 20:18:00 · 341 阅读 · 0 评论 -
AGG网站
<br />http://www.antigrain.com/原创 2010-11-23 08:55:00 · 1154 阅读 · 0 评论 -
嵌入式web server
<br />嵌入式server包括:shttpd,appweb,boa,go ahead server等。<br /> <br /><br />如果用于运行ucLinux的arm9上,就没有什么问题,而用于运行ucOS的arm7上,则有很多限制,需要进行很多的移植工作。<br />LibHttpd的,采用ANSI C编写,仅从介绍上来看,非常适合arm7的嵌入式设备使用。<br /> <br />后面有必要研究这些server的源码!!!<br />原创 2011-01-18 20:02:00 · 618 阅读 · 0 评论 -
UNIX Domain Socket IPC
<br />socket API原本是为网络通讯设计的,但后来在socket的框架上发展出一种IPC机制,就是UNIX Domain Socket。虽然网络socket也可用于同一台主机的进程间通讯(通过loopback地址127.0.0.1),但是UNIX Domain Socket用于IPC更有效率:不需要经过网络协议栈,不需要打包拆包、计算校验和、维护序号和应答等,只是将应用层数据从一个进程拷贝到另一个进程。这是因为,IPC机制本质上是可靠的通讯,而网络协议是为不可靠的通讯设计的。UNIX Domai原创 2011-01-19 23:03:00 · 440 阅读 · 0 评论 -
Linux守护进程
Linux守护进程编写规则1.创建子进程,父进程退出2.在子进程中创建新会话setsid函数就是用于创建一个新的会话,并担任该会话组的组长,调用setsid有下面3个作用。让进程摆脱原会话的控制让进程摆脱原进程组的控制让进程摆脱原控制终端的控制3.改变当前目录为根目录4.重设文件权限掩码umask(0)5.关闭文件描述符原创 2011-01-11 15:23:00 · 366 阅读 · 0 评论 -
ARM Linux线程相关API
线程创建:pthread_create线程退出:pthread_exit,这是线程的主动行为线程资源回收:由于一个进程中的多个线程是共享数据段的,因此通常在线程退出之后,退出线程原创 2011-01-06 15:33:00 · 835 阅读 · 0 评论 -
文件I/O操作
lseek函数返回值:成功:文件的当前位移-1:出错注意:通常文件的当前偏移应当是一个非负整数,但是,某些设备也可能允许负的偏移量。但对于普通文件,则其偏移量必须是非负值。因为偏移量可能为负值,所以在比较lseek的返回值时应当谨慎,不要测试它是否小于0,而要测试它是否为-1。原创 2011-01-03 12:26:00 · 360 阅读 · 0 评论 -
进程间通信API
<br />无名管道<br />它只能用于具有亲缘关系的进程之间的通信(也就是父子进程或者兄弟进程之间)<br />它是一个半双工的通信模式,具有固定的读端和写端<br />管道也可以看成是一种特殊的文件,对于它的读写也可以使用普通的read、write等函数。但是它不是普通的文件,并不属于其他任何文件系统,并且只存在于内存中。<br /> <br />有名管道<br />它可以使互不相关的两个进程实现彼此通信<br />该管道可以通过路径名来指出,并且在文件系统中是可见的。在建立了管道之后,两个进程就可以原创 2011-01-04 23:14:00 · 887 阅读 · 0 评论 -
ffmpeg论坛
<br />http://ffmpeg.arrozcru.com/forum/转载 2011-03-09 15:23:00 · 1894 阅读 · 0 评论 -
一个 Linux 上分析死锁的简单方法
http://www.ibm.com/developerworks/cn/linux/l-cn-deadlock/转载 2012-11-03 12:38:59 · 403 阅读 · 0 评论 -
在驱动模块初始化函数中实现设备节点的自动创建
http://www.linuxview.net/index.php?m=content&c=index&a=show&catid=7&id=226上面的文章错误有:最后卸载adc_major,应改为hello_major.device_create中创建设备节点为0,可看如下链接:http://www.linuxso.com/linuxbiancheng/12338.html可以转载 2012-09-23 14:10:34 · 487 阅读 · 0 评论 -
ioctl与内核通信
http://wenku.baidu.com/view/f6c0e186b9d528ea81c77988.html内核3.0.x中没有ioctl看以下:http://blog.csdn.net/xiangpingli/article/details/7251705转载 2012-07-31 13:16:27 · 1720 阅读 · 0 评论 -
netlink socket
http://wenku.baidu.com/view/967abbb265ce05087632130d.html在发送完数据包之后,nl_skb指向的数据空间将被清空,下一次发送数据包必须重新调用alloc_skb分配空间,否则会造成内核崩溃,必须重新启动。转载 2012-07-29 21:00:34 · 373 阅读 · 0 评论 -
[Linux使用] Linux下批量删除.svn目录
find . -type d -name ".svn" | xargs rm -rf转载 2012-01-20 22:36:49 · 405 阅读 · 0 评论 -
关于《Android技术内幕-系统卷》有感
第2章《Android的内核机制和结构剖析》大部分充斥着“非常简单”,如果简单就没必要介绍了。况且这些简单的代码,叫很多程序员写还不一定能写的好。第3章《Android的IPC机制-Binder》中后面分析到几个cpp文件时候,可以考虑下C++或者UML图的类图结构。充斥着代原创 2011-09-04 18:03:23 · 1134 阅读 · 1 评论 -
利用msmtp发送邮件
利用msmtp可以发送邮件,但是好像只能发送文本,并没有发送jpg,bmp图片等类似附件的功能。上百度,google搜索了下,一般只有msmtp+mutt发送邮件的功能。要在嵌入式下如果只是发送文本,用msmtp应该是足够了,但是发送jpg,bmp等附件可能不可以(估计需要自己改原创 2011-07-16 20:38:12 · 6369 阅读 · 0 评论 -
获取linux的CPU,内存,磁盘
#include #include #include #include #include #include #define Gsize (1024.00 * 1024.00 * 1024.00)#define Msize (1024.00 * 1024.00)转载 2011-07-09 09:56:46 · 407 阅读 · 0 评论 -
关于gcc中C语言的两篇文章
初始C语言中的opaque类型:http://blog.csdn.net/xgbing/article/details/2775426 GCC中运用枚举定义数组的实例:#include #include #define u32 unsigned intenu转载 2011-07-09 19:49:01 · 514 阅读 · 0 评论 -
关于Android Native C的环境搭建
学习了下“落鹤生”的Native C环境搭建,android平台的可以使用。以下是链接:http://www.rosoo.net/a/201104/11306.html (环境搭建篇)http://www.rosoo.net/a/201104/11307.html (framebuffer篇)http://www.rosoo.net/a/201104/11308.html(鼠标事件篇(捕鼠记))h转载 2011-07-02 18:55:02 · 442 阅读 · 0 评论 -
Android环境怎么搭建
实在不想碰Android,最后还是尝试下,目前在Ubuntu上安装。1.安装JDK2.安装eclipse,这些都可以在网络上找,选择eclipse版本要小心,用205MB的。我使用的是eclipse-jee-helios-SR2-linux-gtk.tar.gz3.下载ADT,ADT-11.0.0.zip,解压后,设置eclipse的windows->preference->Andro原创 2011-06-14 22:05:00 · 523 阅读 · 0 评论 -
手机视频监控系统需求
http://www.cnblogs.com/peterzb/archive/2009/05/25/1489065.html一、手机监控软件功能需求1.1 功能概述手机监控软件,可以通过登陆手机视频流媒体,获取其转发的设备的码流进行解码输出到手机屏幕上(windows mobile手机能够自动拨号连接上网络)。主要功能:1.登陆手机视频网关,根据登陆的用户选择赋予的权限(获取该用户可看的视频源)。2.选择视频源浏览视频,对手机视频网关过来的码流进行解码,并实时显示到手机屏幕上。3.通过手机导航键进行云台控制转载 2011-03-16 13:59:00 · 619 阅读 · 0 评论 -
管道
http://www.cppblog.com/zdhsoft/archive/2010/12/28/137622.html转载 2011-02-21 17:35:00 · 307 阅读 · 0 评论 -
linux & TV
<br />http://www.linuxtv.org/原创 2011-02-22 10:16:00 · 506 阅读 · 0 评论 -
Mentor Graphics
<br />http://www.mentor.com/embedded-software/multimedia/player/fantastic-user-experience-on-set-top-box-with-inflexion-ui-7ea5715f-1592-42ba-b3db-4eaba10e76a8转载 2011-03-10 09:29:00 · 859 阅读 · 0 评论 -
Linux进程线程
Linux中进程描述符内核把进程放在任务队列(task list)的双向循环链表中,其中链表的每一项都是类型为task_struct,成为进程描述符的结构,该结构定义在文件中。进程状态运行(TASK_RUNNING)可中断(TASK_INTERRUPTIBLE)不可中断(TASK_UNINTERRUPTIBLE)原创 2011-01-04 21:47:00 · 382 阅读 · 0 评论 -
LINUX 去除DOS文件行末的^M
<br />dos2unix 文件名原创 2011-01-04 15:50:00 · 397 阅读 · 0 评论 -
U-Boot与内核的关系(2)
<br />2.bootm命令的实现<br />/* common/cmd_bootm.c */int do_bootm(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]){ ulong iflag; ulong addr; ulong data, len, checksum; ulong *len_ptr; uint unc_len = 0x400000; int i, verify; char *name, *s;原创 2010-12-14 23:58:00 · 338 阅读 · 0 评论 -
U-Boot与内核的关系(1)
<br />U-Boot作为Bootload,具备多种引导内核启动的方式。常用的go和boom命令可以直接引导内核映像启动。U-Boot与内核的关系主要是内核启动过程中参数的传递。<br />1.go命令的实现<br />/* common/cmd_boot.c */int do_go(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]){ ulong addr, rc; int rcode = 0; if (argc < 2) {原创 2010-12-14 23:30:00 · 791 阅读 · 0 评论 -
内核编译结果
<br />(1)vmlinux<br />vmlinux是在内核源码顶层目录生成的内核映像。它是内核在虚拟空间运行时代码的真实反映。编译的过程就是按照特定顺序链接目标代码,生成vmlinux。因为Linux内核运行在虚拟地址空间,所以名字附加"vm"(virtual memory)。Vmlinux不具备引导的能力,需要借助其他boot咯ader引导启动<br />(2)vmlinuz<br />vmlinuz是可引导的、压缩的内核映像,也就是zImage。它是vmlinux的压缩映像,是可执行的Linux原创 2010-12-15 22:27:00 · 659 阅读 · 0 评论 -
Kbuild Makefile
<br />1.Makefile的组织结构<br />.config 内核配置文件<br />arch/$(ARCH)/Makefile 对应体系结构的Makefile<br />scripts/Makefile.* 所有kbuild Makefile的通用规则等定义<br />顶层目录的Makefile读取.config文件,根据.config文件中的配置选项编译内核。这个.con原创 2010-12-15 20:56:00 · 562 阅读 · 0 评论