- 博客(16)
- 资源 (7)
- 收藏
- 关注
原创 记一个OpenCV低级错误 GStreamer-CRITICAL
(main:30398): GStreamer-CRITICAL **: 10:37:19.705: gst_element_make_from_uri: assertion 'gst_uri_is_valid (uri)' failed[ WARN:0] global /tmp/opencv/opencv-4.4.0/modules/videoio/src/cap_gstreamer.cpp (1580) open OpenCV | GStreamer warning: cannot link ele.
2021-09-06 11:02:12
8863
7
原创 shell命令行 杂记
echo命令输入命令行密码:echo passwd | sudo -S命令echo命令向需要root权限的文件追加内容:sudo bash -c "echo "/home/makefile" >> /etc/ld.so.conf"make -f makefile1 #编译指定makefile文件make -n makefile1 #只显示执行...
2019-11-22 17:01:59
384
原创 编译生成动态库、链接动态库生成可执行文件
折腾了一天编译、动态库的问题,整理一下(参考:https://blog.youkuaiyun.com/flyztek/article/details/73612469):现有4个文件:app.cc--应用程序head.h--库头文件source1.cc--库源文件1source2.cc--库源文件2其中,app.cc里包含了库的头文件,并用到了库里的方法:// app.cc#...
2019-11-21 17:02:19
1394
原创 整理一下《深入理解Linux内核(2.6)》里的相关术语(持续更新)
AX 累积暂存器BX 基底暂存器CX 计数暂存器DX 资料暂存器索引暂存器:SI、DISI:来源索引暂存器,DI:目的索引暂存器堆叠、基底暂存器:SP、BPSP:堆叠指标暂存器,BP:基底指标暂存器EAX、ECX、EDX、EBX:為ax,bx,cx,dx的延伸,各為32位元ESI、EDI、ESP、EBP:為si,di,sp,bp的延伸,32位元tr 任务寄存器TSS 任务状态段 (T...
2019-09-06 10:40:09
289
原创 整理一下《深入理解Linux内核(2.6)》里的相关数据结构
一、工作队列写到一半,发现一个好贴,哈哈https://www.cnblogs.com/zzb-Dream-90Time/p/6476018.html与工作队列相关的主要数据结构是名为workqueue_struct的描述符,它包含一个有NR_CPUS(CPU最大数量)个元素的数组。每个元素都是cpu_workqueue_struct类型的描述符:cpu_workqueue_...
2019-08-30 13:37:25
316
原创 C语言:在文件夹中提取需要的json文件并读取其内容
#define JSON_DIR "/home/zozo/test/"void read_json_file(){ FILE *fp = NULL; cJSON *json; char *out; char *buf; char filterfile_str[] = "jsonfile"; char json_str[] = "json";...
2019-04-29 19:53:37
2690
原创 提取特殊日期字符串中的日期
***代表任意值,转换成0方便后续处理:void get_date(){ char date_str[18] = "2019-***-11-***"; char new_str[18] = {0}; unsigned int year, month, day, week_day; char *anystr = NULL; anystr = strstr(date_str, "*...
2019-04-23 10:22:21
1047
原创 解析小而频数据 CJson与RapidJson效率对比
经测试,解析一个100字节左右的数据连续1000次,cjson与rapidjson消耗的时间差距还是挺大的:cjson单纯用Parse()解析一个json字符串平均需要49.5us的时间, gettimeofday(&tv, &tz); logs_dbg("tv_usec before parse:%ld\n",tv.tv_usec); for(i...
2019-04-03 11:26:49
3274
转载 字符驱动之设备编号
scull 是一个字符驱动,像操作一个设备一样地操作一块内存区域。scull 的优势在于它不依赖硬件;它只操作一些从内核分配的内存。1scull 的设计 编写驱动的第一步是定义驱动将要提供给用户程序的能力(机制)。因为我们的"设备"是计算机内存的一部分,所以可自由做我们想做的事情。它可以是一个顺序的或者随机存取的设备, 一个或多个设备, 等等.2 主次编号 ...
2019-03-28 10:02:13
331
原创 Python 图像文字识别提取的两种简单方案(Windows)
百度文字识别API参考:https://www.jianshu.com/p/816cc6ef571b本地tesseract_ocr参考:https://blog.youkuaiyun.com/jclian91/article/details/80628188https://www.cnblogs.com/lizhe860/p/8969171.html最终经过对比,百度云这个API整体识别率更高~~...
2019-03-21 15:18:29
11283
原创 安装Anaconda+PyQt5+Eric6
安装过程遇到了很多问题,参考https://www.jianshu.com/p/fe0ff7c2bed5,最终安装成功(本人是64位系统)Anaconda3(Anaconda3-2018.12-Windows-x86_64.exe):https://www.anaconda.com/distribution/Eric6(eric6-19.02.1.zip):http://eric-ide...
2019-02-26 15:47:08
2500
2
原创 编写hello模块的升级版:带参数的模块 hellop
增加 2 个参数: 一个整型值,称为 howmany,一个字符串称为 whom。新模块在加载时,欢迎 whom 不止一次,而是 howmany 次。参数用 moudle_param 宏定义来声明,它定义在 linux/moduleparam.h。module_param 使用了 3 个参数: 变量名, 它的类型(不支持浮点型), 以及一个权限掩码用来做一个辅助的 sysfs 入口. 这...
2019-02-22 16:06:29
521
原创 Linux模块初始化中的错误处理
在注册内核模块时,注册可能失败,此时模块应该具有处理异常的能力:如果证实你的模块在一个特别类型的失败后完全不能加载,你必须取消任何在失败前注册的动作,这里采用goto语句:int __init my_init_function(void){ int err; err = register_this(ptr1, "skull"); /* registration takes...
2019-02-22 11:21:01
681
原创 继续编写简单的linux模块 hello
1、通过包含linux/sched.h头文件#include <linux/sched.h>可以使用下面的语句打印当前进程的进程 ID 和命令名:printk(KERN_INFO "The process is \"%s\" (pid %i)\n", current->comm, current->pid);hello.c#include <...
2019-02-22 09:23:09
268
原创 编写一个简单的linux模块 hello
今天看着《Linux设备驱动程序》,跟着编写一个简单的hello模块:hello.c#include <linux/init.h>#include <linux/module.h>MODULE_LICENSE("Dual BSD/GPL");static int hello_init(void){ printk(KERN_INFO "Hello, w...
2019-02-21 11:22:51
906
qt5教程(附标签)
2014-11-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人