自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zxr1521904712的博客

zxr1521904712的博客

  • 博客(51)
  • 收藏
  • 关注

原创 select/poll/epoll 实现详解

本文分两部分,前面着重特性及应用,后面着重内核实现。

2025-05-16 23:03:00 663 1

原创 cpu性能统计

【代码】cpu性能统计。

2025-04-25 18:53:36 240

原创 移植firefly core-1126-jd4官方sdk源码到其他rv1126板卡时 kernel启动中失去响应问题解决

在项目中采用firefly core-1126-jd4的sdk适配其他rv1126板卡遇到kernel启动中无响应。串口能看到运行到usb、mmc等模块驱动流程,但之后就打印,通过追加打印确认usb、mmc模块的init已经执行完,怀疑是执行其他某个静态编译进kernel的模块init中失去响应,但该模块失去响应前并未有任何打印,所以不确定具体是哪个模块。茫茫kernel数百上千个模块难以分析。

2025-04-17 19:15:58 568

原创 ladybug工业相机sdk安装ubuntu失败(apt/dpkg安装deb报错)

对1.17.0.109、1.20.0.79及1.21.0.86有效。

2025-04-17 17:59:27 365

原创 ARP代理

如果能让设备2的eth0在设备1请求192.168.1.40时反馈自己eth0的mac,则会诱导设备1将192.168.1.40的报文发给设备2,此时设备2再通过ip forward将报文转发给设备3,设备3对设备1发送报文同理,则以此便能实现设备1与设备3通信。设备1通过arp请求192.168.1.30的mac,实际是00:11:22:33:44:30(设备3:eth0),但由于设备2的代理影响被设备2以00:11:22:33:44:20(设备2:eth0)应答。设备1、设备3仅需配置各自ip即可。

2025-04-11 13:27:49 294

原创 NVIDIA jetson orin nano报错NvRmMemInitNvmap failed

我是在执行gst-inspec-1.0 nvvidconv时报此错,且没该element,libgstnvvidconv.so存在。原因是项目使用了自编译的kernel,可能跟预构建版理论存在差异,导致预构建的这两个ko跟自编译kernel不兼容。没/dev/nvmap, nvmap.ko nvgpu.ko加载失败。对1.17.0.109、1.20.0.79及1.21.0.86有效。

2025-02-20 16:01:57 158

原创 cache原理

映射方式优点缺点直接映射硬件简单,效率高空间利用率低,命中率低全相联映射空间利用充分,命中率高或者映射慢或者比较器等硬件资源耗费多组相联映射硬件实现、空间利用及效率折衷,综合效果好组相联映射为直接映射及全相联映射的折衷,平衡两者优缺点,组件直接映射,组内全相联映射,使收益最大;直接映射相当于一路组相联映射;全相联映射相当于只有一组的组相联映射。

2025-01-10 21:22:01 315

原创 linux零拷贝技术

read/writemmap/writesendfile系统调用2211上下文切换4422copy2110DMA2222。

2024-12-18 01:16:34 282

原创 文件系统制作

此时rootfs.img文件大小为2G,占用空间1G,其他是空洞(ls 与 du 显示大小不同)减小文件块满足<300M条件,如果当前文件>300M则减小到300M,否则不变。缩减文件系统到最小(根据实际空间占用),同时会减小文件块大小。扩展文件系统为块大小。

2024-11-12 21:40:29 226

原创 linux 加载uPD720201固件

uPD720201是瑞萨推出的怕pcie扩展usb3.0芯片,支持flash主动加载与在系统被动加载。本文介绍如何做到没接flash情况下由系统加载固件。硬件 jetson orin nano。

2024-11-07 17:05:47 880

原创 嵌入式linux PPS校时方案

refclock SHM 2 refid PPS poll 1 offset 0.0 precision 1e-7 require trust # SHM 2 表示gpsd根据NEMA+PPS发布的时间。maxdistance 1555200000# 持续同步中,源与本地最大时间跨度,超过1555200000秒将被忽略不同步本地。makestep 1 -1 # 大跨度调整时间阈值为1秒,初次同步重试次数为-1表示不限次数。chronyc sources -v 查看时间源同步状态。3. chrony配置。

2024-10-31 15:04:21 553

原创 orin nano调试记录

pcie 4:1:0 接系统盘,pcie 7:1:0 通过CFE卡套接数据盘。

2024-08-29 15:49:32 616

原创 RV1126开发调试记录

硬件方案: 双12M IMX577分辨率 4048x3040bayer 大约18MB(视频处理中会多次以该大小分配内存块)

2023-11-08 19:15:38 2485

原创 内网NTP server

server 127.127.1.0 prefer # 关键此处的prefer。

2023-06-29 19:48:00 111

原创 ROS1 图像数据转发

软件界面 左下角Add-> By topic选中重发布的topic Image节点 -> OK。

2023-06-16 19:50:21 872

原创 2021-08-22 OpenvpnAs配置问题

这里写自定义目录标题OpenvpnAs配置问题OpenvpnAs配置问题OpenvpnAs 是Openvpn官网的服务端软件当前最新 2.9.4针对Ubuntu18 需要一下两个安装包:openvpn-as_2.9.4-8b3ce898-Ubuntu18_amd64.debopenvpn-as-bundled-clients-17.deb安装需要的依赖根据提示自行解决,安装好后提示会有管理ui的web界面。实际在普通pc安装正常,但是在服务器(32核 64线程 64GB 内存)环境安装报

2021-08-22 16:37:01 1704

原创 apt install 包名 不能补全的问题解决

bash-completion安装正确后形如apt ins** 可以自动补全为 apt install但是形如 apt install aa*** 后面不能补全解决:bash-completion脚本会在/usr/share/bash-completion/completions/目录下预设一系列以常用命令为文件名的补全脚本,其中apt/apt-get中是对于apt/apt-get命令的补全脚本。/usr/share/bash-completion/completions/apt中可以看到是利用

2021-05-24 15:00:09 988

原创 rk3288-独立uboot+kernel文档

1.考虑到灵活性,Firefly-rk3288的文件系统可以采用yocto方便获得,至于uboot和kernel则采用rockchip提供的独立包,虽然镜像使用独立源代包生成,然而一些生成工具还是使用rochchip的linux sdk比较方便。构建主机环境:$ sudo apt-get install repo git u-boot-tools device-tree-compiler mt...

2019-04-12 14:12:35 2225 1

原创 web-h264流媒体验证方案

背景:当下web端流媒体并没有权威的标准方案,在html5之前只能采用flash、vlc等插件方式实现,而此类插件面临跨平台的问题,且出于安全性方面考虑目前各浏览器逐渐放弃对此类插件的支持,html5引入了video标签使浏览器在一定程度上对视频实现原生的支持,但是目前该标签具体支持的媒体类型依赖于浏览器的实现,并且对流媒体的支持只有渐进式下载的hls方式,延迟高。解决方案:本方案基本思想是...

2018-12-28 18:32:11 3321 2

转载 linux 恢复ext4误删文件

安装工具sudo apt-get install extundelete卸载误删文件所在分区sudo umount …恢复所有sudo extundelete /dev/sdb2 --restore-all恢复文件(指定误删文件相对分区的根的路径,注意不是当前文件系统路径)sudo extundelete /dev/sdb2 --restore-file ‘xxx/xxx/xxx.x...

2018-12-20 11:22:38 964

转载 Vue2.0 搭建Vue脚手架(vue-cli)

安装node.js(自动安装npm)安装淘宝npm镜像npm install -g cnpm --registry=https://registry.npm.taobao.org安装vuecnpm install vuecnpm install --global vue-cli初始化项目vue init webpack my-project或vue init webpack-si...

2018-12-18 02:04:15 152

转载 Vue引入远程JS文件

解决方法第一版代码(直接在操作 Dom )如下:export default {mounted() {const s = document.createElement(‘script’);s.type = ‘text/javascript’;s.src = ‘https://g.alicdn.com/dingding/dinglogin/0.0.2/ddLogin.js’;docum...

2018-12-18 01:59:54 1630

原创 ubuntu 普通用户以root权限运行程序

sudo chown root appsudo chmod u+s app为了使用qtcreator root权限调试:sudo chown root /usr/bin/gdbsudo chmod u+s /usr/bin/gdb

2018-11-14 17:14:47 11185

原创 gstreamer appsink+appsrc 画面分割

#include &amp;lt;gst/gst.h&amp;gt;#include &amp;lt;stdio.h&amp;gt;#include &amp;lt;gst/gstbuffer.h&amp;gt;#define VIDEO_WIDTH 1920#define VIDEO_HEIGHT 1080#define VIDEO_FORMAT “RGB”#define PIXEL_SIZE 4GstElemen.

2018-11-12 17:15:42 2064

原创 qtgstreamer移植arm

准备:cd QtGstreamer源码 mkdir build &amp;amp;amp;amp;&amp;amp;amp;amp; cd buildarm.cmake文件内容如下(用于定义cmake交叉编译相关):message(STATUS “arm”) include (CMakeForceCompiler) set(CMAKE_CROSSCOMPILING TRUE) set(QT_VERSION “5”) set...

2018-09-03 02:36:16 2432

原创 交叉编译boost到arm-linux

在网上中看别人家编译boost到arm清一色都异常简单,./bootstrap.sh,修改gcc , ./bjam搞定,怎么我的各种版本交叉编译工具都试了要么不识别-m64要么找不到c++头文件,难道这就是传说中的别人家的编译,搞了半天这里有一巨坑… 同样是project-config.jam文件,咱家得这么做… 多亏yocto给了提示。 if ! gcc in [ feature.valu...

2018-09-02 22:00:15 3533 2

原创 gstreamer应用

1.播放本地文件 gst-launch-1.0 playbin uri=file:///opt/niliu.mp4 2.打dot图 export GST_DEBUG_DUMP_DOT_DIR=/opt/gstreamer/ dot -Tpng -o 0.00.02.484080226-gst-launch.PAUSED_PLAYING.png 0.00.02.484080226-gst-l...

2018-08-27 17:45:47 1537

原创 firefly-rk3288 yocto构建镜像

1. 总体介绍主机平台:x64 ubuntu 16.04 LTS 本文档详细介绍rk3288 bsp开发细节,涵盖源码获取,编译生成,主要改动点等内容。 方便起见,首先罗列出所参考资料的站点(以下流程原理都可在下面链接找到更专业解释): rockchip芯片软硬件资料站点主页: http://opensource.rock-chips.com/wiki_Main_Page rockc...

2018-06-27 19:17:19 4580 1

原创 am335x linux 调试uart

在dts配置好uart3后进入系统使用echo/cat命令操作/dev/ttyS3无反应,使用软件配置串口波特率后偶尔能收发一两次。使用stty -F /dev/ttyS3 -a 发现串口配置总是会自动恢复成115200波特率,且rows、colums参数不为0。使用ps -elf |grep agetty 命令发现后台把ttyS3设置成了控制台,此时删除启动的配置脚本即可:rm /etc/s

2018-03-26 16:02:21 1542

原创 am335x+wm8960音频基于linux 4.9.41移植

1.配置内核驱动-&gt; Device Drivers                                                                                                                                                              -&gt; Sound ca...

2018-02-28 16:00:46 2766 1

原创 am335x使用qtvirtualkeyboard

    qt5.7的qtvirtualkeyboard在ubuntu上编译安装后可用,在板子上则不行,直接以系统方式调用根本调不出来,而如果以应用内嵌方式虽然点击TextField后能弹出输入窗口却不能输入文字,每次点击虚拟字母按键都会弹出"intupt method is not set"的提示。解释:ubuntu启动QGuiApplication会加载xcb-qpa插件作为图形后端对接程序,该...

2018-02-28 15:37:18 1485

转载 在C/C++程序中打印当前函数调用栈

前几天帮同事跟踪的一个程序莫名退出,没有core dump(当然ulimit是打开的)的问题。我们知道,正常情况下,如果程序因为某种异常条件退出的话,应该会产生core dump,而如果程序正常退出的话,应该是直接或者间接的调用了exit()相关的函数。基于这个事实,我想到了这样一个办法,在程序开始时,通过系统提供的atexit(),向系统注册一个回调函数,在程序调用exit()退出的时候,这个回

2018-01-13 00:02:52 2611

原创 ubuntu apt-get本地源配置

PC-A Ubuntu不能联网,PC-B Ubuntu环境齐全,此时可以利用PC-B做apt源供PC-A通过本地apt-get install安装软件PC-B:sudo vi /etc/exports 添加如下内容/var/cache/apt/archives/        *(rw,sync,crossmnt,no_subtree_check)重启nfs服务 /etc/

2018-01-08 22:03:05 6734

原创 qt问题记录

1.错误警告: iccp known incorrect sRGB profile对所用png格式资源采用更严格的方式转换格式:$sudo apt-get install libpng16-16 imagemagick$find . -type f -name "*.png" -exec convert {} -strip {} \;  2.qtcreator无法输入中文:...

2018-01-03 01:23:21 281

原创 MYSQL_5.7.20移植ti-am335x

需要软件:mysql-boost-5.7.20.tar.gzncurses-5.9.tar.gzboost_1_59_0.tar.gz(只需源码,不需编译,不需安装到板子)步骤:下载ncurses-5.9.tar.gz到/opt/ncurses/$cd /opt/ncurses$tar xvf ncurses-5.9.tar.gz$cd ncur

2017-12-21 09:16:59 985

原创 飞凌OK335xd-linux-4.9.41 移植

ti官方目前提供的内核最新是4.9.41,内核源码有三种方式获得,ti内核独立包,sdk包,ti的arago-yacto,这里内核采用ti的sdk包,文件系统采用ti的arago-yocto。1.获取ti-processor-sdk-linux-am335x-evm-04.01.00.06-Linux-x86-Install.bin,解压到/opt/目录,下载gcc-linaro-6.2.1-

2017-12-20 18:09:54 1990

原创 天嵌TQ_E9卡片电脑移植飞思卡尔 android_N7.1.1_1.0.0

系统:14.04 64-bit version 以下步骤如果出现网络链接不通的情况请自行使用VPN翻墙再次尝试。1.建立ubuntu环境安装必要软件:$ sudo apt-get install uuid uuid-dev$ sudo apt-get install zlib1g-dev liblz-dev$ sudo apt-get install liblzo2-2

2017-11-06 15:44:17 1106

原创 jQuery 选择器

单价数量 5 2 6 3单价数量5263以下函数计算每一行单价数量乘积并相加得出总价。script type="text/javascript">$(function sum(obj){                    var tbodys = $('#te

2017-03-05 17:13:41 346

原创 天嵌TQ_E9卡片电脑移植飞思卡尔yocto L4.1.15_1.0.0_ga 第五篇 LCD+触摸屏移植

经过前面的移植,我们的板子已经可以成功进入linux,但是这个时候看不到画面的,还需要进一步调通LCD显示和触摸屏驱动。1.uboot环境变量。为了LCD能显示需要如下设置uboot变量:     $setenv mynetargs 'setenv bootargs console=${console},${baudrate} ${smp} video=${myvideo} root=

2017-02-12 02:50:01 1493 1

原创 Arm+linux+qt 应用调试技巧

本文简单说明调试arm+linux上层应用一般化技巧抛开逻辑错误不谈,计算机上层软件开发中碰到的问题主要是段错误、内存泄露、cpu占用,本文对段错误的问题的处理做些简单经验介绍。对于入行新人调试段错误也颇有难度,这里主要介绍一些段错误处理的简单技巧。Linux平台最常用且强大的调试工具主要还是gdb,当我们的开发板比如arm的应用崩溃该当如何?可做如下对待:1.运行前通过如下指令解

2016-10-25 14:21:51 2276

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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