- 博客(137)
- 资源 (16)
- 收藏
- 关注
原创 Linux应用编程中的信号阻塞sigset_t与sigprocmask()
【版权申明】转载请附上出处链接 Linux应用编程中的信号阻塞sigset_t与sigprocmask()信号(signal)是一种软中断,是进程间通信的一种方式,为异步通知。信号屏蔽就是在进程中阻塞我们指定的信号集,这些信号将得不到该进程的处理,使得他们看起来被“忽略”了,但是实际上它们是被阻塞了。忽略,意味着信号被处理了,只不过不做任何操作;阻塞,意味着信号得不到处理,该信号将一直存在。1. 关于sigset_ttypedef struct { unsigned long sig
2020-05-22 15:13:47
852
原创 Linux Signal信号表
【版权申明】转载请附上出处链接 Linux Signal的机制与使用机制:http://gityuan.com/2015/12/20/signal/https://colobu.com/2015/10/09/Linux-Signals/https://blog.csdn.net/yockie/article/details/51729774http://www.embeddedlinux.org.cn/html/xianchengjincheng/201009/02-875.htmlhttp
2020-05-22 11:43:19
7581
翻译 rtp_profile_set_payload()中的idx
【版权申明】转载请附上出处链接 rtp_profile_set_payload()中的idx下表明确指定了rtp中PT(PayloadType, 负载类型)对应的index数值,还有些由于诞生得较晚,所以没有具体的PT值,只能使用动态PT值,即96到127,这也是我们经常看到H264的PT值为96的原因。PTEncoding NameAudio/Video (A/V)Clock Rate (Hz)ChannelsReference0PCMUA80001[RFC3
2020-05-21 10:34:34
446
原创 从零开始编译ortp
【版权申明】转载请附上出处链接 编译ortp遇到的问题1. ortp/include/ortp/logging.h:33:31: fatal error: bctoolbox/logging.h: No such file or directory 解: 下载bctoolbox: http://www.linphone.org/releases/sources/bctoolbox/将bctoolbox/include/bctoolbox/logging.h头文件放到ortp项目即可.编译步骤:
2020-05-20 09:14:07
2014
3
原创 Android的硬件访问服务添加
【版权申明】转载请附上出处链接 Android的硬件访问服务添加todo在frameworks\base\core\java\android\os文件夹下添加自己的aidlAIDL(Android Interface Definition Language), 即Android接口定义语言.package android.os;/** {@hide} */interface ILedService{ int ledCtrl(int which, int status);}修
2020-05-14 14:51:17
347
原创 治AndroidStudio Jar包
【版权申明】转载请附上出处链接 治AndroidStudio各种不服问题: 如何添加一个jar包到工程中步骤: 复制jar包到app的libs目录下;打开项目app目录下的build.gradle文件, 包含我们添加的jar包:使用: compile files('libs/classes.jar')或: implementation fileTree(dir: 'libs', include: ['*.jar'])添加在dependencies中, 如下所示:dependenci
2020-05-14 14:24:33
237
原创 ERROR: This version of Android Studio cannot open this project, please retry with Android Studio 3.5
【版权申明】转载请附上出处链接 ERROR: This version of Android Studio cannot open this project, please retry with Android Studio 3.5 or newer问题原因: 使用的Gradle版本太高, 只需要将gradle降级即可.解决步骤: 打开gradle/wrapper/gradle-wrapper.properties文件, 将项目的gradle版本调低, 我这里调成了4.10.1distri
2020-05-13 15:45:47
2386
原创 Makefile备忘录
【版权申明】转载请附上出处链接 Makefile备忘录简洁, 个人备忘, 供各位快速查询.1. Makefile的自动变量变量名含义$@目标$^所有依赖$<第一个依赖2. Makefile的预定义变量变量名含义$(MAKE)当前make解释器的文件名$(MAKECMDGOALS)make的命令行参数(即make的目标及参数)$(MAKEFILE_LIST)当前make所需要处理的makefile文件列表
2020-05-10 13:32:15
287
原创 GNU项目中的调试器 - GDB - Gnu DeBug
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) GNU项目中的调试器 - GDB - Gnu DeBuggdb的启动方式:
2020-05-09 17:30:23
1058
原创 Linux时间结构体与函数
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux时间结构体与函数clockid_t, struct timespecclock_getres(), clock_gettime(), clock_settime() - clock and time functions/** * 头文件 */#include <time.h>/** * 函数参数1. clockid_t clk_id * int类型变量, 表示是要操作的特定时钟的标识符 *
2020-05-09 09:42:08
619
原创 C语言内嵌汇编
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) C语言内嵌汇编文章内容学自狄泰软件学院的门徒计划个人备忘, 供大家参考1. 赋值代码: result = intput #include<stdio.h>int main(void){ int result = 0; int input = 1; asm volatile( // vola...
2020-05-07 17:19:43
909
原创 编译一个不带main()函数的应用程序
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) 编译一个不带main()函数的应用程序源码交代: $cat file.c #include<stdio.h>void func(void){ printf("hello\n");}int my_main(void){ func(); retur...
2020-05-07 11:20:58
3041
原创 Linux gcc论应用程序是如何跑起来的
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux gcc论应用程序是如何跑起来的相信我, 我真的只写了file.c这一个文件.代码及编译指令交代:#include<stdio.h>void func(void){ printf("hello\n");}int main(void){ func();...
2020-05-07 10:59:39
550
原创 ld - the GNU linker
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) ld - the GNU linker1. 链接器的主要作用 把各个模块(.o 目标文件)之间相互引用的部分处理好, 使得各个模块(.o 目标文件)之间能够正常地衔接, 最终生成可执行程序.链接器整合的对象是目标文件(*.o), 离开链接器, 目标文件就像无头苍蝇一样无法执行.目标文件的秘密各个段没有具体的起始地...
2020-05-07 10:38:04
490
原创 SecureCRT配色-个人配置
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) SecureCRT配色-个人配置1. 一个页面的宽高及缓冲区及风格2. 窗口的外观
2020-05-06 21:39:21
478
原创 objdump - Displays information from object files
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) objdump - Displays information from object files1. objdump 的作用 显示对象文件中的信息2. objdump 的使用...
2020-05-06 18:40:15
201
原创 nm - Lists symbols from object files
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) nm - Lists symbols from object files1. nm 的作用 列出目标文件中的符号(这个目标文件不单指.o文件, 也指可执行文件)2. nm 的使用$nm file或$nm file.o结果如下:$ nm file0000000000000000 T func0000000...
2020-05-06 16:04:34
180
原创 ar - A utility for creating, modifying and extracting from archives
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) ar - A utility for creating, modifying and extracting from archives1. ar 的作用 用于创建/修改/提取档案的实用程序. 最常见的用法是将目标文件打包为静态链接库, 这个用法也是本文章所介绍的.tips: ar的用法与tar的用法非常相似.2. a...
2020-05-06 15:49:33
195
原创 strip - Discards symbols
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) strip - Discards symbols1. strip 的作用 剔除目标程序中的符号以及段信息, 从而使得目标程序的大小降低, 提升目标程序的执行效率. (strip过后将不利于调试, 一般在程序发布前都需要将调试信息剔除)2. strip 的用法$ ls -l file-rwxrwxr-x 1 xxx ...
2020-05-06 15:35:12
272
原创 addr2line - Converts addresses into filenames and line numbers
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) addr2line - Converts addresses into filenames and line numbers1. addr2line 的作用 将指定地址转换为对应的文件名和行号, 常用于分析和定位内存访问错误的问题.2. addr2line 的用法 addr2line [option(s)] [ad...
2020-05-06 15:20:49
250
原创 gcc的辅助工具集(Binutils)
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) gcc的辅助工具集(Binutils)官网: http://www.gnu.org/software/binutils/1. ld - the GNU linker.2. as - the GNU assembler.3. addr2line - Converts addresses into filenames an...
2020-05-06 11:38:24
457
原创 linux gcc参数集
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) linux gcc参数集0. GCC 与 gccGCC, The GNU Compiler Collectionincludes front ends for C, C++, Objective-C, Fortran, Ada, Go, and D, as well as libraries for these lang...
2020-05-06 10:20:00
390
原创 Linux驱动中定时器的使用
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux驱动中定时器的使用/** * linux/timer.h * 定义一个struct timer_list的结构体全局变量, 即定时器 */static struct timer_list buttons_timer;// 初始化该定时器init_timer(&buttons_timer);...
2020-04-28 10:58:51
559
原创 Linux中的同步互斥
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux中的同步互斥1. 什么是同步?生活中的例子: 洗菜必须在买菜之后, 做菜必须在洗菜之后, 吃饭必须在做菜之后.软件上的概念: 指的是散落在不同线程/进程中的代码片段, 他们的执行顺序必须是有序, 因为B代码片段的执行依赖着A代码片段的结果, 同理C代码片段的执行依赖着B代码片段的结果. 那...
2020-04-28 10:23:39
376
原创 Linux中的异步通知
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux中的异步通知 当我们的应用程序需要使用硬件设备时, 需要一直查询该硬件设备是否准备就绪, 这是一个不断查询的过程, 若一直未就绪就一直查询, 非常消耗资源. 而我们Linux的异步通知就是为了解决这一个问题. 当设备准备就绪时, 主动告诉应用, 从而节省不断查询而导致的资源浪费. 应用程序工作在Linux...
2020-04-27 17:48:57
303
原创 从应用层到内核 poll()函数的分析
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux内核中poll1. 应用层调用pollstruct pollfd { int fd; /* 需要被监视的文件描述符*/ short events; /* 对文件描述符fd上感兴趣的事件 */ short revents; /* 文件描述符fd上当前实际发生的事件 */};/** * wait f...
2020-04-27 10:47:05
530
原创 Linux设备树的按键中断驱动程序
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux设备树的按键中断驱动程序1. 管教复用设置为GPIO;上拉电阻/下拉电阻使能, 具体看自己的管脚复用手册;电平转换速率控制设置为慢(有些芯片没有这个选项);2. GPIO的中断寄存器使能选择电平触发/边缘触发;选择单边缘触发/双边缘触发; (电平触发才需要设置)选择下降沿或低电平触发/上升沿或高...
2020-04-27 09:13:34
877
原创 Linux驱动中的wait_event_interruptible()与wake_up_interruptible()
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux驱动中的wait_event_interruptible()与wake_up_interruptible()DECLARE_WAIT_QUEUE_HEAD(wq) 生成一个等待队列头wait_queue_head_t,名字为wq.wait_event_interruptible(wq, condition):...
2020-04-26 17:48:09
2739
原创 Linux 设备树中的中断
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux 设备树中的中断1. Linux 设备树还没出现时的中断 以前, 对于每一个硬件中断(hwirq)都预先确定了它的中断号(virq), 这些中断号一般都写在一个头文件中. 比如: arch/arm/mach-s3c24xx/include/mach/irqs.h./* main cpu interrupts ...
2020-04-26 10:33:28
3155
原创 Linux内核对设备树的处理(下)
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux内核对设备树的处理(下)4. device_node转换为platform_device
2020-04-24 09:09:25
824
原创 在Android开发板跑一个LED驱动的历程(个人笔记)
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) 在Android开发板跑一个LED驱动的历程(个人笔记)1. 板子端, 放置驱动程序1.1 编写一个驱动程序驱动程序的编写上, 与Linux是一致的, 无需关心任何Android相关的事物. 代码如下:#include <linux/init.h>#include <linux/module.h&g...
2020-04-24 01:35:14
1651
原创 Linux内核对设备树的处理(上)
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux内核对设备树的处理0. Linux内核的启动流程简介 Linux的启动过程可以分为两部分: 架构/开发板相关的引导过程和后续的通用启动过程. 而我们Linux内核对设备树的处理, 就是处在架构/开发板相关的引导过程.Linux uses DT data for three major purposes: Li...
2020-04-23 20:54:08
691
原创 MODULE_PARM_DESC(para, mesg)
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) MODULE_PARM_DESC(para, ,mesg)1. MODULE_PARM_DESC(para, ,mesg)作用: 对模块的参数进行描述.用法: 使用modinfo查看驱动信息, 使用MODULE_PARM_DESC修饰的para就会被打印出来....
2020-04-16 11:53:31
1214
原创 linux驱动中的module_param与module_param_array
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) linux驱动中的module_param与module_param_array1. module_param(name, type, perm)宏作用: 向驱动模块提供参数, 或者说是驱动模块中的某一个变量赋值, 若没有赋值则使用默认值.参数说明:@param name 既是用户看到的参数名, 又是模块内接受参数的变...
2020-04-16 11:44:54
1264
原创 linux gpio_to_irq()源码分析
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) linux gpio_to_irq()源码分析背景说明: 在Linux设备树(linux 3.x版本引入)中, 设备的中断号不再在"irq.h"中硬编码定义, 而是在需要时自己手动去申请获得对应的硬件中断的软件中断号.( 前提是GPIO的相关模块已经被编入内核 )1. gpio_to_irq()的函数作用/** *...
2020-04-16 10:18:47
13105
原创 编译时遇到的问题
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) ubuntu1804编译全志H3时遇到的问题You must install 'makeinfo' on your build machine解: 装 texinfosudo apt-get install texinfo_GL_WARN_ON_USE (gets, "gets is a security hole ...
2020-04-14 16:00:20
3507
原创 Linux设备树的规范 - DTS
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) Linux设备树的规范 - DTS1. 语法总览 注释: 结点 = 节点Devicetree node格式:(设备树节点格式)[label:] node-name[@unit-address] { [properties definitions] [child nodes]};解释:字...
2020-04-13 10:43:19
951
原创 avpicture_fill()的使用心得
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) ffmpeg4.2.2-avpicture_fill()和sws_scale()的使用心得1. avpicture_fill()的声明/** * @deprecated use av_image_fill_arrays() instead. */attribute_deprecatedint avpicture_f...
2020-04-12 22:13:40
5728
原创 ffmpeg-截图功能实现
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) ffmpeg-截图功能实现1. ffmpeg 命令行方式ffmpeg.exe 10 -i possible.mkv test.jpg或ffmpeg.exe -ss 10 -i possible.mkv -y -f image2 -t 0.01 0.jpg或ffmpeg.exe -ss 00:00:10 -i pos...
2020-04-11 18:28:23
4412
S5PV210_iROM_ApplicationNote_Preliminary_20091126
2017-07-08
ISP_Calibration_Tool.zip
2020-11-04
MIPI-CSI-DSI-DCS-DPHY官方文档
2020-02-12
MCR_R2012a_win32_installer.exe
2020-08-29
Windows32位java包: jdk-6u45-windows-i586.exe和jre-6u45-windows-i586.exe
2020-04-10
Linux64位Java包: jdk-6u45-linux-x64.bin和jre-6u45-linux-x64.bin
2020-04-10
ortp及其依赖源码大礼包
2020-05-29
Windows64位java包: jdk-6u45-windows-x64.exe和jre-6u45-windows-x64.exe
2020-04-10
Linux32位Java包: jdk-6u45-linux-i586.bin和jre-6u45-linux-i586.bin
2020-04-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人