
Linux 应用开发之杂碎
Linux 应用开发之杂碎
rjszcb
不断学习变成牛
展开
-
Linux应用,之接入到阿里云MQTT物联网平台
linux接入到阿里云。后面有空,我要玩一下。原创 2024-08-02 22:10:55 · 141 阅读 · 0 评论 -
Linux驱动,之定时器timer(一)
linux驱动,之定时器timer(一),这个是非常重要的,这个后面有时间再讲。原创 2021-07-03 11:21:31 · 346 阅读 · 0 评论 -
GPS的UTC时间,计算年月日,时分秒
GPS的UTC时间,计算年月日,时分秒,gps的格式有多种,gps是可以自己计算年月日,时分秒的可以直接从数据段获取,但是也可以用utc,时间来计算utc单位是秒,包含年的时间,我的这款gps是从2000年开始计时的,接收到的utc,就是从2000年开始计算的秒,下面是计算年月日,时分秒的公式。static char caculate_year_month_day(long utc,int *year,int *month,int *day){ long DayofYear = 0; char原创 2022-02-23 11:31:04 · 4153 阅读 · 0 评论 -
Linux系统调用
转载自:https://www.ibm.com/developerworks/cn/linux/kernel/syscall/part1/appendix.htmlLinux系统调以下是Linux系统调用的一个列表,包含了大部分常用系统调用和由系统调用派生出的的函数。其中有一些函数的作用完全相同,只是参数不同。(可能很多熟悉C++朋友马上就能联想起函数重载,但是别忘了Linux核心是用C语言写的,所以只能取成不同的函数名)。还有一些函数已经过时,被新的更好的函数所代替了(gcc在链接这些函数时会发出警转载 2020-11-08 22:21:37 · 168 阅读 · 0 评论 -
linux系统,监控进程运行状态并自动重启崩溃后的进程的多种方法
换句话说,init 守护进程是系统上所有进程的父进程。soc的内部是有看门狗的,可以通过看门狗,检测soc,某个进程是否卡死,跑飞,如果没有及时喂狗,说明程序异常,强制重启系统。ps -aux可以看到进程的运行状态,init是个守护进程,对僵死进程进行回收,那么肯定有种方法,可以重启进程。一般大产品,如汽车,是不能完全依赖这种技术方案的,会外接一个mcu,来监控soc,通过soc发送心跳包,1。有的公司,会写monitor守护进程,监视各个进程的运行状态,异常时,自动重启,但是这种,通过一个进程。原创 2024-10-11 14:09:01 · 1949 阅读 · 0 评论 -
Linux 提供了多种定时器机制,允许应用程序执行定时任务
注册信号触发处理函数,定时器触发时,发送SIGALRM信号,hander处理函数接收后,处理。Linux 提供了多种定时器机制,允许应用程序执行定时任务。setitimer 是其中之一,它允许设置定时器来在指定的时间间隔内定期触发信号。原创 2024-08-22 09:14:50 · 229 阅读 · 0 评论 -
Linux 支持程序在运行时动态加载和卸载共享库,动态链接库
Linux支持动态链接库(共享库)的概念,允许程序在运行时动态加载和卸载共享库。这有助于减小可执行文件的大小,共享代码,提高代码的可重用性。通过这个函数,搜索要调用的函数名,返回函数指针。原创 2024-08-22 09:08:41 · 322 阅读 · 0 评论 -
linux 应用层调用shell指令api.之popen 和system
popen 和system测试。原创 2023-11-21 16:43:25 · 303 阅读 · 0 评论 -
yffs2,jffs2、ext4,ubi根文件镜像的格式的区别和优缺点
yffs2,jffs2、ext4,ubi根文件镜像的格式的区别和优缺点,不同的介质,如nand,norflash,inad,emmc,不同的格式正在酝酿。原创 2021-07-14 15:07:25 · 1138 阅读 · 1 评论 -
linux C代码调用shell命令方法
主要有三种方法:exec函数簇,system函数以及popen函数,其中需要注意的是,exec函数簇的函数执行成功后是无返回的,一般需要和fork()函数同时使用。在使用时需要另外的fork一个进程。 popen() 函数通过创建一个管道,调用 fork 产生一个子进程,执行一个 shell 以运行命令来开启一个进程。这个进程必须由 pclose() 函数关闭,而不是 fclose() 函数。exec函数簇:函数原型:#include <unistd.h> extern char **原创 2021-06-21 15:57:11 · 997 阅读 · 0 评论 -
HiPQTools工具HiPQStitchingTool标定(二)
一、挑件海思文档重要描述1、拼接原理:使用HiPQTools工具HiPQStitchingTool进行图像拼接,就要先进行标定,确定相机之间的位置关系,和畸变校正,前面写的文章中,介绍了,使用opencv的surf特征匹配和最佳缝合线算法,进行处理,然后离线计算获得参数,查表法进行图像拼接存在局限性,只能适合静态的放置相机,和纹理丰富的场景,安防监控,不适合运动的场景,比如车载运动的全景场景。全景拼接的基本方法是将各路采集的图像按照对应的镜头模型投影到虚拟球面,进行拼接融合,然后再通过设置的投影方原创 2022-01-04 13:20:35 · 3759 阅读 · 12 评论 -
C语言开机后或第一次满足条件不再执行高级写法
g_char = SX_FALSE;int main(int argc, char *argv[]){ HI_S32 s32Ret = 0; int fd0 = -1; char *filename0 = NULL; char buf[10]={0}; int audioret = -1; filename0 = "/dev/tlv320aic31"; SX_U32 ts0 = get_sys_ms(); SX_U32 oldMs = ts0; SX_U32原创 2021-11-10 17:15:15 · 656 阅读 · 0 评论 -
linux 应用层,执行shell脚本命令
linux 应用层,执行shell脚本命令1、system如:system("./root/ko/reloadko.sh");在我的根文件系统下,存在一个脚本文件,reloadko.sh,重新卸载,加载音频驱动。这个脚本在root/ko目录下,当然,这些ko驱动也要放在ko目录下,否则,运行不了,找不到。或下面的命令:hisi的支持的对gpio操作的shell命令system("himm 0x12345678 0");system函数:函数原型:#include <stdlib原创 2021-11-18 17:24:09 · 656 阅读 · 0 评论 -
Hi3521DV100 编译环境和SDK安装
一、安装交叉编译工具链\Hi3521DV100R001C01SPC040\ReleaseDoc\ReleaseDoc\zh\01.software\board\目录下找到指导文档,PDF文件1.3.2 安装交叉编译工具链将hisi提供的SDK包解压开,在Hi3521DV100R001C01SPC040/arm-hisiv500-linux,有一个压缩包,解压开得到交叉编译工具包执行命令,sudo ./arm-hisiv500-linux.install,进行安装,安装完将会看到在PATH=/o原创 2021-06-22 14:20:04 · 781 阅读 · 1 评论