在嵌入式开发流程.有些参数基本上不改变,比如编译主机IP,username,password等参数.我们用VS提供的属性管理器来保存这些參数. 打开属性管理器: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlnaHRzX2pveQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt=""> 能够看到VS会依据不同的平…
1.1     代码提示功能 在vs中开发中,Visual Assist是一个很优秀的插件,我们仍然能够使用它进行代码的分析,但它仅仅能支持vcxprojproject,因而我们选择对vcxproj的project进行扩展,这样VisualAssist就能够正常使用了. 此外,VS的智能感知不支持GCC的一些扩展,在做代码分析的时候可能出错.我们採用强制包括头文件的方式解决一部分问题: 注意,这个文件的目的是让VS可以进行代码的分析,而不是让VS具有编译这些代码的能力!! ! 这个头文件类似于这…
下面我们将VS2012添加一个新的平台支持,由于近来与哈斯hi3516.就选它吧! 1.1     复制平台文件 原来一直认为要让VS支持一个新的平台须要编写代码,某天在看MSBUILD文件夹的时候突然发现了一个奇妙的文件夹: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGlnaHRzX2pveQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" w…
在看韦东山视频linux驱动方面有一些吃力,究其原因,虽然接触过linux应用程序编程,但是没有深入去理解,相关函数用法不清楚,正好看到国嵌视频对这一方面讲的比较透彻, 所以把学习过程记录下来,也作为linux应用程序开发的一个系列吧! 文件编程有两种方式,一是系统调用方式,二是库函数调用. 前者依赖特定的平台,后者不依赖平台. 系统调用:创建 int creat(const char *filename,mode_t mode); filename:要创建的文件名 mode:创建模式 S_IR…
嵌入式Linux应用程序开发详解 华清远见 本文只是阅读文摘. 创建一个守护进程的步骤: 1.创建一个子进程,然后退出父进程: 2.在子进程中使用创建新会话---setsid(): 3.改变当前工作目录---chdir(): 4.重新设置文件权限掩码---umask(): 5.关闭所有的文件描述符---close(fdx): 6.设置daemon程序的任务---此例主要在while循环中体现. 下面是一个例子程序: /* daemon * how to create a daemon proce…
前段时间看APUE,确实比较详细,不过过于详细了,当成工具书倒是比较合适,还是读一读这种培训机构的书籍,进度会比较快,遇到问题时再回去翻翻APUE,这样的效率可能更高一些. <嵌入式linux应用程序开发标准教程>的前几章没必要看了,都是写浅显的知识点,从第六章文件IO编程开始记录笔记.后期再根据APUE的内容进行补充和扩展. 一.linux系统调用及API 1. 系统调用 linux分为内核空间和用户空间,用户空间无法直接访问内核空间.内核通过系统调用为用户提供服务,很精简,大约250个左右…
Linux程序开发 linux程序总体上来说是分两部分的: 1. 底层驱动程序开发: 2.应用层应用程序开发: 驱动程序 一般情况下驱动是跟内核与硬件有关系的,编程语言是C语言,需要懂一些硬件的知识,至少需要看懂硬件原理图和芯片手册.硬件原理图告诉我们底层接口工作的逻辑,以及芯片工作的条件(电压.电流.时钟脉冲等):芯片手册是告诉我们如何去配置使用芯片,比较关键的是看懂寄存器配置,对于芯片的配置,就是去配置其各个寄存器,比如去配置一个AD音视频采集的芯片:就需要去配置音频采样率.采样点数.采样位…
linux开发工具: 1.编辑工具:1)sourceInsight2)Notepad++3)UltraEdit4)Altova XMLSpy 2.linux服务器访问工具:1)FileZilla2)Xshell3)Xmanager4)secureCRT 3.代码管理:1)svn2)BeyondCompare…
, 8.1 概述 linux里使用较多的进程间通信方式: 管道,pipe和fifo,管道pipe没有实体文件,只能用于具有亲缘关系的进程间通信:有名管道 named pipe,也叫fifo,还允许无亲缘关系进程间通信: 信号,signal,软件模拟中断的机制,很多信号是系统处理的: 消息队列,messge queue,消息的链表. 共享内存,shared memory,容量大,用的比较多,需要额外的同步机制,如互斥锁和信号量 信号量,semaphore,主要用于进程间的同步和互斥 套接字,soc…
线程是轻量级进程,创建线程的开销要比进程小得多,在大型程序中应用广泛. 9.1 线程概述 进程包含自己的代码.数据.堆栈.资源等等,创建和切换的开销比较大: 线程是轻量级的进程,调度的最小单元,同一个进程内的线程可以共享资源: 线程的上下文开销比进程小得多: 线程有自己的堆栈,但是用户空间共享,例如一个线程修改全局变量,会影响到同一个进程内的另一个线程: linux里其实线程就是轻量级的进程,都用PCB表示,只不过新建线程时,共享同一个进程内的资源.线程应该是单独调度 9.2 线程编程 线程一般…