随笔分类 -  嵌入式

Linux、WinCE、QT、Bootloader、ARM、单片机、uC/OS-2、
摘要:1. netfilter与iptables Netfilter是由Rusty Russell提出的Linux 2.4内核防火墙框架,该框架既简洁又灵活,可实现安全策略应用中的许多功能,如数据包过滤、数据包处理、地址伪装、透明代理、动态网络地址转换(Network Address Translation,NAT),以及基于用户及媒体访问控制(Media Access Control,MAC)地址的过... 阅读全文
posted @ 2016-10-08 10:52 不止所见 阅读(200) 评论(0) 推荐(0) 编辑
摘要:pthread_key_t和pthread_key_create()详解 下面说一下线程中特有的线程存储, Thread Specific Data 。线程存储有什么用了?他是什么意思了?大家都知道,在多线程程序中,所有线程共享程序中的变量。现在有一全局变量,所有线程都可以使用它,改变它的值。而如果每个线程希望能单独拥有它,那么就需要使用线程存储了。表面上看起来这是一个全局变量,所有线程都可以使用... 阅读全文
posted @ 2016-08-25 15:55 不止所见 阅读(4363) 评论(0) 推荐(1) 编辑
摘要:Introduction: Android.mk编译文件是用来向Android NDK描述你的C,C++源代码文件的, 这篇文档描述了它的语法。在阅读下面的内容之前,假定你已经阅读了docs/OVERVIEW.TXT文件,了解了它们的脚色和用途。 概述: 一个Android.mk file用来向编译系统描述你的源代码。具体来说:-该文件是GNU Makefile的一小部分,会被编译系统解析一次或更... 阅读全文
posted @ 2016-08-23 17:39 不止所见 阅读(1656) 评论(0) 推荐(0) 编辑
摘要:有两种方式: 1、用tr 例如:UPPERCASE=$(echo $VARIABLE | tr '[a-z]' '[A-Z]') (把VARIABLE的小写转换成大写) LOWERCASE=$(echo $VARIABLE | tr '[A-Z]' '[a-z]') (把VARIABLE的大写转换成小写) 2、用typeset typeset -u ... 阅读全文
posted @ 2016-08-19 08:52 不止所见 阅读(9727) 评论(0) 推荐(0) 编辑
摘要:system两层含义: 1、正确退出后。还需要再判断,操作成功或者操作失败。 2、错误退出。 #include <stdio.h> #include <stdlib.h> #include <sys/wait.h> #include <sys/types.h> int main() { pid_t 阅读全文
posted @ 2016-08-18 14:48 不止所见 阅读(699) 评论(0) 推荐(0) 编辑
摘要:变量说明: $$Shell本身的PID(ProcessID)$!Shell最后运行的后台Process的PID$?最后运行的命令的结束代码(返回值)$-使用Set命令设定的Flag一览$*所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。$@所有参数列表。如 阅读全文
posted @ 2016-07-20 10:51 不止所见 阅读(213) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2016-07-13 15:52 不止所见 阅读(1) 评论(0) 推荐(0) 编辑
摘要:嵌入式笔试题:想让程序跳转到绝对地址0x100000处执行,该如何做? 请详细解释一下所给的答案: 网上看到有如下答案: *((void(*)(void))0x100000)(); 经过在VC++6.0和LINUX gcc4.4.3下测试,均不能通过编译。 VC++6.0报错:error C2100 阅读全文
posted @ 2016-07-06 16:03 不止所见 阅读(2317) 评论(0) 推荐(0) 编辑
摘要:一般察看函数运行时堆栈的方法是使用GDB(bt命令)之类的外部调试器,但是,有些时候为了分析程序的BUG,(主要针对长时间运行程序的分析),在程序出错时打印出函数的调用堆栈是非常有用的。 在glibc头文件"execinfo.h"中声明了三个函数用于获取当前线程的函数调用堆栈。 int backtr 阅读全文
posted @ 2016-07-06 14:38 不止所见 阅读(3112) 评论(0) 推荐(0) 编辑
摘要:转载链接:http://blog.csdn.net/liigo/article/details/582231 GDB是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。 GDB中的命令固然很多,但我们只需掌握其中十个左右的命令,就大致可以完成日常的基 阅读全文
posted @ 2016-06-29 15:45 不止所见 阅读(354) 评论(0) 推荐(0) 编辑
摘要:对于计算机系统而言,操作系统充当着基石的作用,它是连接计算机底层硬件与上层应用软件的桥梁,控制其他程序的运行,并且管理系统相关资源,同时提供配套的系统软件支持。对于专业的程序员而言,掌握一定的操作系统知识比不可少,因为不管面对的是底层嵌入式开发,还是上层的云计算开发,都需要使用到一定的操作系统相关知 阅读全文
posted @ 2016-05-30 15:15 不止所见 阅读(532) 评论(0) 推荐(0) 编辑
摘要:一、文章来由 最近看了《UNIX环境高级编程》,对以前比较模糊的一些知识结构又做了进一步的加强,特别是前两章讲到不带缓冲的文件I/O和带缓冲的标准I/O,对read、write、fread、fwrite、printf等等这些函数又有了新的认识。一个很大的感受是我们很多时候编程开发都只注重上层逻辑,虽 阅读全文
posted @ 2016-05-28 09:16 不止所见 阅读(262) 评论(0) 推荐(0) 编辑
摘要:前段时间在做播放器的时候,遇到个问题,花了很长时间,做个记录,希望对有需要的人有所帮助: 播放器的播视频的时候,无论是手动切换视频还是到视频播放完成,自动切换视频,一定次数后均出现黑屏现象,偶尔有声音,问题出现后,不可恢复,Kernel输出如下Log: DMA free:71672kB min:61 阅读全文
posted @ 2016-05-17 16:42 不止所见 阅读(6985) 评论(1) 推荐(1) 编辑
摘要:避免物理内存碎片化 以前的项目碰到了buddy内存分配失败的情况,虽然当前可用内存和可回收内存还有很多,但是仍然无法满足分配,经过分析是物理内存碎片化导致申请连续物理内存失败。 当linux系统持续运行很长时间没有重新启动后,系统内持续的进行页面的分配和释放,系统空闲物理内存被使用的物理内存分割开, 阅读全文
posted @ 2016-05-17 16:30 不止所见 阅读(2510) 评论(0) 推荐(0) 编辑
摘要:1. /proc目录Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。 用户和应用程序可以通过proc得到系统的信息,并可以 阅读全文
posted @ 2016-05-12 15:51 不止所见 阅读(335) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2016-05-12 10:31 不止所见 阅读(1) 评论(0) 推荐(0) 编辑
摘要:线程安全就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。 线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据 =============================================================... 阅读全文
posted @ 2015-06-25 10:51 不止所见 阅读(2782) 评论(0) 推荐(0) 编辑
摘要:CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。 CMake 使用方法 CMake的所有的语句都写在一个叫:CMakeLists.txt的文件中。当CMakeLists.txt文件确定后,可以用ccmake命令对相关 的变... 阅读全文
posted @ 2015-06-17 18:53 不止所见 阅读(1271) 评论(0) 推荐(0) 编辑
摘要:之前看信号的时候,没有太注意不同信号的对比.今天再次看到的时候,突然感觉对一些信号,非常相似,乃至非常容易混淆.今天周末就抽空总结一下. 一、关闭进程信号 常见的4中关闭进程信号是SIGKILL,SIGINT,SIGTERM,SIGQUIT. SIGKILL,就是为了关闭进程用的,无法捕获以及忽略.场景是,管理员把一些占用资源的进程或者无法掌控的孤儿进程杀死. SIGINT,interrupt... 阅读全文
posted @ 2015-06-12 09:15 不止所见 阅读(2647) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2015-05-29 17:02 不止所见 阅读(5) 评论(0) 推荐(0) 编辑