Linux下 fd_set 结构小结

fd_set是一种数据类型,在select函数中包含了3个参数,就是这个fd_set类型,fd_set也是理解select模型的关键,关于select的具体说明,可以参考之前的文章嵌入式Linux编程之select使用总结。 select可以同时对多个文件描述符的状态去监听,那么这个所谓的“多...

2019-03-30 22:30:03

阅读数 127

评论数 0

嵌入式Linux编程之select使用总结

select 的作用是为了解决阻塞I/O的问题,这样说可能 有些抽象,简单的讲,在linux下,很多的操作都是基于文件操作方式,不管操作的对象是普通文件,还是各种设备(串口等实际设备),操作的函数为write和read,这两个 函数都是可能会出现“阻塞”的,比如说串口吧,write的功能,其实 是...

2019-03-30 22:12:08

阅读数 164

评论数 0

Linux下多线程编程小结

只要是进行Linux应用开发,多线程编程肯定是绕不开的,而线程和进程是两种有千丝万缕关系的模型,本文先不去讲太书面化的定义,先从一个入门+使用的角度来分析多线程。 先说几个总结性的关键句: 1、进程是资源分配的最小单位,线程是CPU调度的最小单位 这句话的意思,关键是最后一句,线程是CPU...

2019-03-27 22:18:22

阅读数 764

评论数 2

全局变量的优缺点及为什么要少用全局变量

全局变量 对于程序员来说,是程序 “同步”的一种最方便的 方式,我相信大多数的程序员 刚开始都是使用全局变量来实现“同步”操作的,但是随着我们 编程理念的升华,我们会发现,原来全局变量不是我们想象的只有好用,而没有缺点。 优点: 1)全局可见,任何 一个函数或线程都可以读写全局变量-同步操作简...

2019-03-27 22:06:58

阅读数 2163

评论数 8

串口的一些基本概念--RS485 RS422 RS232 流控制

串口是一种应用比较广泛的应用接口,PC上的COM口,工业控制器的RS485、家用设备的调试接口等等,本质上都是串口。 1、串口的分类 1)RS232 标准串口,这是一种比较 常用的串口,电脑上的DB9针接口就是一种串口,通过不同电压来表示0和1,电平定义如 下: 0--...

2019-03-22 11:27:57

阅读数 343

评论数 0

嵌入式应用程序下载到ARM开发板后如何运行程序?

这个问题对于了解开发流程的人来说,就太幼稚了,但是对于第一次编写应用程序,并且想要在开发板上运行的人来讲,可能就有点小懵逼了。 当应用程序编好以后,首先需要想办法把应用程序搬迁到开发板上,目前比较主流的有3种: 1)通过U盘、SD卡等存储介质。 2)通过NFS 服务器。 3)...

2019-03-19 21:52:01

阅读数 792

评论数 0

Makefile学习之 all

Makefile中本身是没有 all 指令的,这里只不过是一种约定,认为目标 all 可以同时做很多事儿,也就能能同时生成多个目标,举例1-代码如下: /*-------------- main1.c -----------------*/ #include <stdio...

2019-03-17 21:21:21

阅读数 55

评论数 0

Linux目录简写之—— ../..

我们知道,在linux下,"."(1个点) 表示当前目录,".."(2个点)表示上一个目录,所以,切换目录,我摸一般可以这样做: # 虽然执行了cd 命令,目录并没有变,因为.是当前目录 cd . # 切换到上一个目录 ...

2019-03-17 17:57:13

阅读数 74

评论数 0

Makefile中常用函数使用

该篇文章引用了 陈皓老师的《跟我一起写Makefile》,博客地址为:https://blog.csdn.net/haoel/article/details/2886 Mkefile支持使用函数来处理变量,函数的返回值可以再赋值给新的变量,从而使得Makefile的命令、规则更加的灵活智能。 ...

2019-03-16 22:41:27

阅读数 78

评论数 0

Makefile的静态模式%.o : %.c

Makefile的静态模式是一个特别高效的“自动化”编译器,“静态”二字,我觉得是直译词意,可能是我不是真正理解什么叫静态,反正这个规则跟中国话的 “静态”没有半毛钱关系。 我们先说一种场景,我们在编写应用程序时,肯定不只有一个文件,会有n多个.C文件,.s文件,少则几十个,多则几千、几万个,...

2019-03-16 17:09:05

阅读数 402

评论数 0

Makefile中3个常用自动化变量

在Makefile,有三个常用也很好用的自动化变量:$@、$^、$<,所谓自动化变量是在模式规则中定义的一系列文件自动挨个的去除,直至所有的符合模式的文件都取完。这么说可能比较绕,我们可以简单直白的理解,我们写的应用程序,稍微简单的也要有几个文件(.c、.h等),那么复杂的可...

2019-03-16 11:54:58

阅读数 96

评论数 0

u-boot向Linux内核传递参数tag原理分析

U-boot最主要的功能是引导OS,目前对Linux支持的相对比较好,“引导”的意义不仅仅是拷贝内核,运行内核,还要给内核kernel传递板子的相关参数,打个比方,u-boot相当于是一名专业功底深厚的 “接待员”,他会先初始化好一些外围设备,比如说串口,SDRAM、Nand Flash、MMC等...

2019-03-03 22:54:10

阅读数 403

评论数 0

提示
确定要删除当前文章?
取消 删除