随笔分类 -  Linux

I love Linux as i hate Linux.
摘要:2020-02-22 关键字:alarm()、setitimer()、拦截定时器信号、定时器信号有效范围 在 Linux 中实现定时器功能的比较简单且好用的系统内置的方法有两种: 1、alarm() 函数 2、setitimer() 函数 这两种定时方式都是通过信号(signal)来通知定时到期的。 阅读全文
posted @ 2020-02-22 15:30 大窟窿 阅读(16423) 评论(0) 推荐(1)
摘要:2020-02-21 关键字:dts解析、dts语法 什么是设备树? 设备树:device tree。它是Linux开发中用于描述硬件信息的文件。如:数量、类别、地址、总线情况与中断等。设备树文件其实就是一种适合人类阅读的文本文件,它以 .dts 作为后缀,通常保存在 ./arch/arm/boot 阅读全文
posted @ 2020-02-21 22:00 大窟窿 阅读(1229) 评论(0) 推荐(0)
摘要:2020-02-21 关键字:ubuntu编译Android4.4、Android编译依赖库 本篇文章记录一下笔者自行搭建 ubuntu 系统并成功编译 Android 4.4 源码的过程。 笔者这边选择使用虚拟机来开发,因为说实话对于我们这些普通开发者来说,做软件开发还是离不开windows的。 阅读全文
posted @ 2020-02-21 12:11 大窟窿 阅读(1119) 评论(0) 推荐(0)
摘要:2020-02-19 关键字:IIC通信协议 嵌入式设备中常见的IIC从设备有: 1、CMOS 摄像头 2、触摸屏 3、重力传感器 4、EEPROM 5、HDMI IIC通信协议是一种主从通信模式的协议,在进行IIC驱动开发的时候,我们都是站在主机的角度来开发的,所有要驱动的设备在我们的驱动程序看来 阅读全文
posted @ 2020-02-19 21:45 大窟窿 阅读(1442) 评论(0) 推荐(0)
摘要:2020-02-15 关键字: Linux 中输入设备大致可分以下几种: 1、按键/键盘(keyboard) 2、鼠标(mouse) 3、触摸屏(touchscreen) 4、游戏杆(joystick) 输入子系统的目的是为了屏蔽众多输入设备在硬件上的差异化,使得在开发输入设备的程序时能更简单统一。 阅读全文
posted @ 2020-02-15 17:34 大窟窿 阅读(793) 评论(0) 推荐(0)
摘要:2020-02-14 关键字:Linux驱动中的probe函数是如何执行的 1、设备驱动模型 嵌入式 Linux 驱动开发往往都是按照如下的步骤来进行的: 1、实现入口函数 xxx_init() 和卸载函数 xxx_exit() 2、申请设备号 register_chrdev() 3、创建设备文件节 阅读全文
posted @ 2020-02-14 17:44 大窟窿 阅读(978) 评论(0) 推荐(0)
摘要:2020-02-12 关键字: 在 Linux 内核当中,处理一个中断事件需要知道两件事: 1、中断号码 2、中断处理函数 而在 ARM 中处理中断则需要知道以下四件事: 1、中断源号码 2、初始化中断控制器 3、初始化 CPU 中断功能 4、中断处理函数 获取中断号有以下两种方式: 1、宏定义 通 阅读全文
posted @ 2020-02-12 22:13 大窟窿 阅读(1373) 评论(0) 推荐(0)
摘要:2020-02-10 关键字: 在 Linux 中设备驱动可以分为如下三种类型: 1、字符设备驱动 2、块设备驱动 3、网络设备驱动 字符设备驱动就是指以字符流为数据通信基础的设备。例如:LCD、键盘、I2C等。它的特点就是通信速度快,同时数据量也相对较小。块设备则主要是一些存储设备。例如:磁盘、U 阅读全文
posted @ 2020-02-10 21:47 大窟窿 阅读(700) 评论(0) 推荐(0)
摘要:2020-02-09 关键字: 在嵌入式 Linux 开发中,驱动程序通常都是用 C语言 来编写的,并经编译后生成为目标文件,即 '.o' 文件。随后又可在编译系统时以两种形式打包成系统镜像文件: 1、uImage 即内核的二进制文件。这种形式是直接将内核驱动程序打包进系统文件中。这种形式的驱动程序 阅读全文
posted @ 2020-02-09 22:54 大窟窿 阅读(530) 评论(0) 推荐(0)
摘要:2019-10-27 关键字:sqlite3、Linux数据库 嵌入式设备通常都不会有太丰富的计算与内存资源,为了能在这种资源紧张型的嵌入式设备中也能正常使用与PC端类似的数据库软件,就必须专门针对嵌入式设备开发轻量级数据库。目前嵌入式领域的数据库软件主要有以下几种: 1、SQLite 一种关系型数 阅读全文
posted @ 2019-10-27 21:50 大窟窿 阅读(983) 评论(0) 推荐(0)
摘要:2019-10-20 关键字:select 与 poll 在 Linux 系统下,IO 总共可以分为以下四种: 1、阻塞 IO; 2、非阻塞 IO; 3、IO多路复用; 允许同时对多个 IO 进行控制。 4、信号驱动 IO; 一种异步通信模型。前面三种 IO 都是同步型的,唯这一种是异步型的。 阻塞 阅读全文
posted @ 2019-10-20 09:33 大窟窿 阅读(506) 评论(0) 推荐(0)
摘要:2019-10-14 关键字:C 语言的 UDP 编程与实例 UDP 连接是一种无连接的网络连接协议。 Linux 下的 UDP 编程的函数接口与 TCP 差不了多远。在 UDP 通信模型中,也是以 C/S 模型来通信的。 服务端的函数调用流程主要有以下几个: 1、socket() 2、bind() 阅读全文
posted @ 2019-10-14 23:06 大窟窿 阅读(343) 评论(0) 推荐(0)
摘要:2019-10-07 关键字: TCP 网络通信模型中通常都都采用 C/S架构。 所谓 C/S架构 即通信双方一方是客户端 Client,另一方是服务端 Server。 服务端的整体流程如下: 1、socket() 2、bind() 3、listen() 4、accept() 5、write() 6 阅读全文
posted @ 2019-10-07 17:45 大窟窿 阅读(854) 评论(0) 推荐(0)
摘要:2019-10-07 关键字:Linux 网络编程基础 TCP/IP 协议里有两种不同的协议: 1、TCP协议 用于检测网络传输中的差错。 2、IP协议 用于对不同网络进行互联。 简单说就是 TCP 负责纠错,IP 负责传输。 网络体系结构: 网络体系结构就是将复杂的网络通信过程按照一定的规则进行分 阅读全文
posted @ 2019-10-07 11:27 大窟窿 阅读(326) 评论(0) 推荐(0)
摘要:2019-10-06 关键字:进程间通信、semaphore、进程间通信实例 进程间通信的几种方式: 1、早期 Unix 进程间通信方式 1、无名管道 pipe 2、有名管道 fifo 3、信号 signal 2、System V IPC 1、共享内存 2、消息队列 3、信号灯集 3、套接字 soc 阅读全文
posted @ 2019-10-06 16:23 大窟窿 阅读(377) 评论(0) 推荐(0)
摘要:2019-10-01 关键字:进程、线程、信号量、互斥锁 什么是程序? 程序就是存放在磁盘上的指令和数据的有序集合,就是源代码编译产物。 它是静态的。 什么是进程? 进程就是操作系统为执行某个程序所分配的资源的总称。进程是程序的一次执行过程,因此它与程序不同,它是动态的。它的生命周期包括创建、调度、 阅读全文
posted @ 2019-10-01 14:23 大窟窿 阅读(563) 评论(0) 推荐(0)
摘要:2019-09-30 关键字:压缩、解压缩、分卷压缩、tar 1、几种常用的压缩格式 tar 解包: tar xvf filename.tar 打包: tar cvf filename.tar dirname/ .tar.gz 解压:tar -zxvf filename.tar.gz 压缩:tar 阅读全文
posted @ 2019-09-30 16:14 大窟窿 阅读(525) 评论(0) 推荐(0)
摘要:2019-09-25 关键字:生成库、静态库引用、动态库引用 在 C 开发中,“库”是一个经常听到的名词。 所谓的库其实就是一个二进制文件。这个二进制文件的内容是可被其它C程序调用执行的函数。换句话说,库就是一组C代码的打包形式而已,打包是指将源代码以库的形式编译而生成的文件。 不过即使它只是源代码 阅读全文
posted @ 2019-09-25 23:02 大窟窿 阅读(484) 评论(0) 推荐(0)
摘要:2019-09-23 关键字:Linux 文件类型、Linux 文件IO、Linux 标准IO、C 语言的流 文件的本质就是一组数据的集合。计算机在日常生活中几乎都是被应用于处理数据方面的。而在 linux 操作系统中,将一切都视为是 “文件”。 1、常见文件类型 Linux 中常见的文件类型及其标 阅读全文
posted @ 2019-09-23 23:10 大窟窿 阅读(497) 评论(0) 推荐(0)
摘要:2019-08-18 关键字:iptables、Linux 防火墙 iptables 是 Linux 上的一款防火墙配置软件。 防火墙的基本概念 防火墙是指工作在计算机设备系统边缘或网络设备边缘,能根据既定的规则对数据报文进行检测并做出相应处理的模块。这一模块既可以是软件也可以是硬件。iptable 阅读全文
posted @ 2019-08-18 23:08 大窟窿 阅读(383) 评论(0) 推荐(0)