2013年5月18日
摘要: 本文转自:http://www.yiyon.net/index.php/archives/2251.1 Ftrace数据文件介绍/sys/kernel/debug/tracing目录下文件和目录比较多,有些是各种跟踪器共享使用的,有些是特定于某个跟踪器使用的。在操作这些数据文件时,通常使用 echo命令来修改其值,也可以在程序中通过文件读写相关的函数来操作这些文件的值。下面只对部分文件进行描述,读者可以参考内核源码包中 Documentation/trace 目录下的文档以及 kernel/trace 下的源文件以了解其余文件的用途。README:提供了一个简短的使用说明,展示了ftrace的 阅读全文
posted @ 2013-05-18 19:56 阑珊寻梦 阅读(1075) 评论(0) 推荐(0) 编辑
摘要: 本文转自:http://www.yiyon.net/index.php/archives/225仅供自己学习之用。1 ftrace 简介ftrace 是 Linux 内核中提供的一种调试工具。使用 ftrace 可以对内核中发生的事情进行跟踪,可以调试 bug 或者分析内核,也可以帮助开发人员了解 Linux 内核的运行时行为,以便进行故障调试或性能分析。最早 ftrace 是一个 function tracer,仅能够记录内核的函数调用流程。如今 ftrace 已经成为一个 framework,采用 plugin 的方式支持开发人员添加更多种类的 trace 功能。Ftrace 由 RedH 阅读全文
posted @ 2013-05-18 19:52 阑珊寻梦 阅读(891) 评论(0) 推荐(0) 编辑
  2013年5月16日
摘要: 1、官方下载个最新的驱动 从http://www.nvidia.com/page/home.html寻找你所需要的驱动 我下载的就是NVIDIA-Linux-x86-173.14.12-pkg1.run这个文件,改名为nvd.run2、删除原驱动包 sudo apt-get -purge remove nvidia-glx nvidia-glx-new3. ctrl+alt+f1进入第一终端,然后登录,注意进入之前记下后面的命令,若x-window还没stop(下一步执行),则按ctrl+alt+f7可以切换回来4. sudo service lightdm stop 停止第七终端,即x... 阅读全文
posted @ 2013-05-16 19:14 阑珊寻梦 阅读(418) 评论(0) 推荐(0) 编辑
  2013年5月9日
摘要: 看了关于system v信号量的资料,了解了关于信号量集的创建、删除及操作的3个函数:semget,semop,semctl,感觉不是很详细,想看看源代码,所以就按上面说的在sys/sem.h中查找,可怎么找不到,搜了下,以为是版本问题,可能2.6版本中没有这3个函数。但后来发现问题不在这儿,应该帖子上说的sys/sem.h不是在源代码中,而是在安装了linux后的sys目录下的。但是按理说系统调用在源码中应该有原型的,刚在源代码中打开sem.c文件,看到了SYSCALL_DEFINE3(semget, key_t, key, int, nsems, int, semflg)这个函数,利用so 阅读全文
posted @ 2013-05-09 23:51 阑珊寻梦 阅读(472) 评论(0) 推荐(0) 编辑
  2013年3月29日
摘要: 绑定建立起来之后什么时候就启动串口传输了呢?从osal_start_system这个函数开始->>Hal_ProcessPoll()里面有如下的编译判断语句#if (defined HAL_UART) && (HAL_UART == TRUE) HalUARTPoll();由于本实验是串口传输实验判断条件成立HalUARTPoll();然后-》HalUARTPollDMA()这个函数的最后有这样一句话:if (evt && (dmaCfg.uartCB != NULL)) { dmaCfg.uartCB(HAL_UART_DMA-1, evt); } 阅读全文
posted @ 2013-03-29 15:38 阑珊寻梦 阅读(1001) 评论(0) 推荐(0) 编辑
  2013年3月21日
摘要: 开始学习zigbee已有一周时间了,其实自从zigbee开发板买来之后,就星星点点的在看,只是方法不对一下子陷入进了代码和官方协议栈的原理中,一时摸不着头脑。前几天由于项目的需要,又开始研究zigbee,这次我开始从全局出发,才渐渐有了眉目。首先,我对于zigbee官方协议栈的osal的流程进行了理解,当然这里得感谢“雪帕”的博文,以及看过的一篇论文《Zstack OSAL详解》,给了我很大的启示,除此之外还得提到一个大牛:小峰,他的博文分析,十分的详细,不懂时可以参考参考,很有启发。下面,我就一些os的运行机制,进行一个简要的说明,因为我觉得只有理解了os的机制,才能开始后继的理解,才能有点 阅读全文
posted @ 2013-03-21 11:24 阑珊寻梦 阅读(354) 评论(0) 推荐(0) 编辑
  2012年7月9日
摘要: #include<stdio.h>#include<math.h>int result=0x7fffffff;//保存最小值int N,M;void search(int lev,int m,int curS,int r,int h)//lev剩余的体积 m当前层数 curS 当前总表面积 r半径 h 高度{ if(!m) //当m==0&&lev==0时,说明方案成立,否则说明到达最高层,直接返回 { if(!lev&&curS<result) result=curS; return ; } if(curS>result)/ 阅读全文
posted @ 2012-07-09 17:22 阑珊寻梦 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 164K16MSC++2578B解题思路:一个棍一个棍的组合,组合好第i根,再组合第i+1根,注意要剪好枝。若前面的一个组合未能成功,当该组合再次出现时也不能成功。#include<stdio.h>int flag=0;//标志棍组合的当前顺序int flagall=0;//标志是否成立int a[65],b[65],max=0;//a保存当前输入数,b标志是否使用int main(){ int n,i; void search(int m,int k,int n); int findmax(int n); int sum(int n); void sort(int n); sca 阅读全文
posted @ 2012-07-09 11:17 阑珊寻梦 阅读(142) 评论(0) 推荐(0) 编辑
  2012年7月8日
摘要: 二分查找#include<stdio.h>int a[10000];int ans;void search(int m,int n,int l,int k){if(m>n)return ;else {int sum=0,mid=(m+n)/2;for(int i=0;i<l;i++)sum+=a[i]/mid;if(sum>=k){ans=mid;search(mid+1,n,l,k);}elsesearch(m,mid-1,l,k);}}int main(){int n,k;while(scanf("%d %d",&n,&k) 阅读全文
posted @ 2012-07-08 11:57 阑珊寻梦 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 196K0MSC++1352B先求出以每个island为圆心时,与x轴的交点,得到覆盖该island的雷达坐标的变化范围,然后从左向右,按贪心策略,求各个变化范围的最多交集(即若相邻几个island在x轴有交集,则在此处安装一个雷达),最后所求交集的个数即为minimal number of radar installations#include<stdio.h>#include<math.h>int a[1000],b[1000];int sort(int m,int n){int start=m+1,end=n;int temp;while(1){while(end 阅读全文
posted @ 2012-07-08 10:34 阑珊寻梦 阅读(136) 评论(0) 推荐(0) 编辑