自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Linux嵌入式新手学习的积累过程

Linux嵌入式新手学习的积累过程

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

原创 5: linux内核调度的机制 tasklet/workqueue/kthread_worker/kthreadx详解及示例

前言:一直就感觉linux下面的任务调度机制太丰富了,由于各种调度机制平时工作中只是要用,理解并不是那么深刻,所有有时候说不上道道来,只知道这个要用workqueue/thread, 他的优先级要设置成system_wq,system_highpri_wq, system_unbound_wq 或者SCHED_RR/SCHED_FIFO这样子,说实话,现在我也不能保证说概述的很全很准确。就期待后面可以慢慢完善,读者如果有建议补充的可以提建议,我们一起不断更新这篇文章,一起努力可以把linux 线程相关的东

2020-11-18 20:01:15 3059 1

原创 Torch Conv2d解释及常见的2D卷积示意图

2D 卷积API详解及图解

2022-12-14 18:39:05 353 1

原创 1 - VR/AR/车舱内深度感知系统应用探讨

消费级/座舱内 深度感知方案讨论

2022-08-06 21:06:25 491

转载 Linux 内核空间Kmalloc, Kzalloc, Vmalloc 之间区别

转自:https://www.cnblogs.com/sky-heaven/p/7390370.html我们都知道在用户空间动态申请内存用的函数是 malloc(),这个函数在各种操作系统上的使用是一致的,对应的用户空间内存释放函数是 free()。注意:动态申请的内存使用完后必须要释放,否则会造成内存泄漏,如果内存泄漏发生在内核空间,则会造成系统崩溃。  那么,在内核空间中如何申请内存呢?一般我们会用到 kmalloc()、kzalloc()、vmalloc() 等,下面我们介绍一下这些函数的使用.

2020-08-27 16:55:09 218

原创 4: linux 信号量在wait_event_interruptible_timeout 调用返回 -ERESTARTSYS的问题

问题概述:在做编解码开始编码时,app通过system call 调用内核态,内核态代码如下。rval = wait_event_interruptible_timeout(wait_queue, condition, 5s) ;printk( “ hello world, rval = %d\n”, rval );rval返回0表示时间片流完,condition还没有满足rval返回>0 表示时间片没流完,condition满足了,rval值即为剩余的时间片值(单位ms)但是我们在

2020-07-22 18:16:42 1188

原创 OP-TEE基本的从芯片设计到给客户的安全问题浅析

0 preface 基本概念缩写TEE Trusted Execution Environment 可信执行环境,通常用来进行数字版权管理(DRM : Digital Rights Management )、移动支付和敏感数据保护。TEE 的实现是基于 ARM TrustZone。REE(Rich Execution Environment)是所有移动设备通用的环境,运行通用的 OS,例如 Android,IOS 系统, LINUX等。OTP One-Time Programmable...

2020-07-17 16:13:59 5261 1

转载 OPTEE-OS简述

1. 为什么会出现这种技术?  为了安全,例如:保护指纹虹膜的生物特征数据2. 为了确保数据安全各家公司都做了些什么?  Arm公司提出的了trustzone技术,用一根安全总线(称为NS位)来判断当前处于secure world还是non-secure world状态,状态的切换由ATF(arm trusted firmware)来完成3. 有哪些Normal world os  Linux,Android4.有哪些secure world os  OP-TEE,Trusty.

2020-07-15 15:55:30 1221

原创 ARMv8-A架构基础之 异常级别(exception level, el)

ARM架构定义了基于处理器模式的异常模型。 对于每种异常类型,体系结构都定义了异常所采用的模式。 这种模式被称为异常的目标模式(target mode)。 然而可配置的陷入,使能和路由控制常常可以更改异常的目标模式。 ARMv8-A 的AArch32遵循此模型。当处理器发生异常时:将当前程序状态保存在目标模式的SPSR中。 保存异常的返回地址: 如果目标模式不是Hyp模式,则在目标模式的链接寄存器(LR)中。 如果目标模式是Hyp模式,则在ELR_hyp中。 进入目标模式。 除非异常目

2020-07-14 18:40:36 6550

原创 3:锁机制

1.阅读了很多文章,将常见几种锁机制做了总结. 是否关闭cpu抢占/高度 是否关闭软中断 是否关闭硬中断 是否还原-原中断状态 spin_lock yes NO NO NO spin_lock_bh yes yes NO NO spin_lock_irq yes yes yes NO spin_lock_irqsave yes ...

2020-07-02 12:04:38 107

转载 0: linux 嵌入式 优秀好文章推荐篇(基础概念)

锁机制:1.https://www.cnblogs.com/aaronLinux/p/5890924.html(常见spin_lock)2.https://blog.csdn.net/morixinguan/article/details/69666642 (下半部)

2020-07-02 11:58:17 128

原创 2:中断中用work_queue 即 wait_queue 协作(简单工作中使用的示例)

1. 基本介绍1.1.1 :work_queue(相关接口在linux/kernel/workqueue.c和 linux/include/linux/workqueue.h中)内核驱动中,一般的小型任务(work)都不会自己起一个线程来处理,而是扔到workqueu中处理。workqueue的主要工作就是用进程上下文来处理内核中大量的小任务。所以workqueue的主要设计思想:一个是并行,多个work不要相互阻塞;另外一个是节省资源,多个work尽量共享资源(进程、调度、内存),不要造成系统

2020-06-30 11:07:17 638

原创 repo upload 或者git push 报错“remote: (W):commit subject 65 characters,use shorter first paragraph”

遇到问题:Repo upload pre-hook check report: Git (ambarella/include): Pass Git (kernel/linux-4.14): Pass Git (kernel/private): Pass Git (unit_test/private): PassTaglist: Exuberant ctags (http://ctags.sf.net) not found in PATH....

2020-06-19 17:03:04 6464

原创 1: linux 内核态下的多线程开发

方法1:通过信号量条件唤醒线程,首先可以在driver的probe函数中先创建并启动线程1. wait_queue_head_t thread_wq;init_waitqueue_head(&thread_wq); 通常先要在init函数中初始化一个thread_wq,该thread_wq 用作到时候线程唤醒的信号量队列2. 通常在probe或者在init等接口中就通过kthread_run接口去创建好线程并run,kthread_run函数不能再中断函数中调用,因为会有阻塞导致报错..

2020-06-17 15:02:02 568

原创 linux S5PV210开发板刷系统浅析

朱有鹏老师的针对S5PV210这块板子,现在对开发板进行刷系统,已备的有SecureCRT7.2串口调试助 (https://jingyan.baidu.com/article/b7001fe1bf5dee0e7282ddf7.html)闲话少说,撸起袖子。先要破坏iNand中的bootloader以从SD2启动:1:busybox dd if=/dev/zero of=/de

2020-06-17 12:16:48 252

原创 ubuntuOpenCV, Libjpegcodecs.so,提示 relocation R_X86_64_32 can not be used,recompile with -fPIC

ubuntu16.04&&OpenCV3.4.1安装(https://blog.csdn.net/cocoaqin/article/details/78163171  参考这位大侠 cocoaqin 的教程),在安装过程中,遇到Libjpegcodecs.so文件链接不成功,提示, relocation R_X86_64_32 against `a local symbol' ...

2018-08-06 09:58:38 704 1

转载 linux S5PV210开发板刷系统浅析

朱有鹏老师的针对S5PV210这块板子,现在对开发板进行刷系统,已备的有SecureCRT7.2串口调试助 (https://jingyan.baidu.com/article/b7001fe1bf5dee0e7282ddf7.html)闲话少说,撸起袖子。1:先要破坏iNand中的bootloader以从SD2启动:1:busybox dd if=/dev/zero of=/

2018-01-04 16:19:54 307

空空如也

空空如也

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

TA关注的人

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