YellowMax

IT以及嵌入式技术相关

排序:
默认
按更新时间
按访问量

硬核拆解动态库静态库

[Github pages] 动态库与静态库是编程中十分常见的玩意儿,但是如此常见的东西在我真正用心去了解梳理过一遍之后才发现原来这里面有这么多的门道。本文就介绍一波 Linux 平台下,特指 GCC 编译器生成的动态库与静态库的依赖于关联,甚至还拓展一波编译工具的冷门用法。虽然有一些内容看的时候...

2018-11-11 21:13:25

阅读数:22

评论数:0

V4L2框架-control的数据结构

[GithubPages] 本篇文章写一下 V4L2 里面的众多 control 的组织方式,也就是它的数据结构。主要就是新建的 control 是如何存放的,以及在需要用到的时候如何查找。里面用到了类似于「桶」的概念,没错就是「桶排序」里面的那个桶,这种比较特殊的小优化为查找速度提供了不少的帮...

2018-10-21 16:16:03

阅读数:48

评论数:0

OpenMAX数据流传递规则

[Github-pages] 在利用 OpenMax 编写的程序框架中,就不可避免地会涉及到数据流的传递,因为这个框架就是为了数据流传递而服务的。在音视频数据包的传递过程中需要遵循某种约束,比如数据包处理时间不能超过帧间隔等等。本文就讨论一下在数据流传递过程中的一些约束性规则,主要就是时间约束规则...

2018-09-23 19:24:01

阅读数:64

评论数:0

linux 进程优先级

[Github pages] Linux 中进程的优先级绝不是如想象中的那么简单,相反它的概念比较混杂,它甚至不是很符合直觉。 Linux 进程的优先级跟随调度算法的不断发展,其意义在不同的阶段也有着不同的含义,所以本来想从 Linux 的调度发展史写起,但是无奈那一部分的涉猎不是很深...

2018-09-16 18:42:02

阅读数:59

评论数:0

linux-cgroup概念及其应用

阅读原文 本文介绍 Linux 系统中的 cgroup 系统及其使用场景。说起来 cgroup 开始的时候并不是很熟悉,之前没有怎么听说过,它的最本质作用就是对跑着 Linux 系统的设备进行资源分组,让大家可以各取所需。主要是为了防止:旱的旱死、涝的涝死;一个线程作死,整个系统都受到影响...

2018-08-26 16:22:05

阅读数:53

评论数:0

V4L2框架-control

阅读原文 本文介绍在 v4l2 框架下面的 control 控制接口,这些接口通常用来实现一些特效控制、菜单控制等等。 03 - V4L2框架-videobuf2 02 - V4L2框架-media-device 01 - V4L2框架-v4l2 device 00 - V4L2...

2018-08-05 14:23:50

阅读数:237

评论数:0

为什么总是差一点儿

阅读原文 差一点儿,就差一点儿。为什么总是差一点儿? 想必很多人有很多时候也有跟我一样的疑惑,为什么这个总是差了那么一点儿,就那么一点点,已经很接近了,可是我练习了那么久,为什么还是差那么一点点。这个问题久久的困扰着我。 那些「差一点儿时刻」 大学会跟室友一起去打打篮球,开始也...

2018-07-22 15:34:16

阅读数:130

评论数:0

V4L2框架-videobuf2

阅读原文 本文介绍在 v4l2 框架之下的数据流交互的实现与使用,主要目的是实现一个能够进行用户空间与内核空间进行数据交互、数据流格式设置、数据流 buffer 申请与释放、数据流开启与关闭的 video 设备驱动。 02 - V4L2框架-media-device 01 - V4L...

2018-07-15 16:58:27

阅读数:288

评论数:0

V4L2框架-media device

阅读原文 本文对 V4L2 的运行时数据流设备管理做一个详细的介绍,包括什么叫「运行时设备管理」,它是干什么用的,怎么使用等等。本文的目标是掌握 media device 的编码使用方法以及功能运用。 01 - V4L2框架-v4l2 device 00 - V4L2框架概述 ...

2018-07-02 21:14:30

阅读数:460

评论数:0

V4L2框架-v4l2 device

本文对 V4L2 中比较容易理解的骨干结构进行介绍,涉及两个核心结构体:v4l2_device, v4l2_subdev。文章围绕这两个结构体以 Linux-4.4 内核的 omap3isp 代码为例进行相关的介绍,所谓介绍还是起到辅助作用,真真儿的还是要靠 RTFSC、WTFSC。 0...

2018-06-23 11:22:00

阅读数:338

评论数:0

生活集思录-如何创造差异化

阅读原文 不论是做产品还是做人,都要给自己尽量制造差异化的竞争力,差异化才是核心竞争力。本文恰是一篇自我总结,就写一写自己的经验,不求全,但求有效、实用,文章最后一节有落地实用的总结。 差异化的点 技能专精:每种工作、专业都有自己相关的专业性技能,比如:程序员专精于编程或者架构...

2018-06-18 15:02:28

阅读数:89

评论数:0

V4L2框架概述

原文链接 本文开启 linux 内核 V4L2 框架部分的学习之旅,本文仅先对 V4L2 的框架做一个综述性的概括介绍,然后接下来的文章中会对 V4L2 框架的各个子模块进行一个全面的介绍,包括每一部分的实现原理,如何使用,用在什么地方等等。预计接下来的文章大概有5篇(不带本篇)。坑已经挖...

2018-06-17 15:25:07

阅读数:597

评论数:0

生活集思录-习惯性否决

阅读原文 拒绝习惯性否决 导读:生活集思录系列都是自己的生活感悟,所思所想,读的时候就当作是听着一个不认识的人自我对话、自我反省、自我记录,千万不要带入说教的情景,神烦说教也不想去说教。以我为镜,虽不能发财,但是也许能变帅呢! 什么是习惯性否决 这里的习惯性否决不是单向的,而是...

2018-05-27 10:45:55

阅读数:57

评论数:0

生活集思录-你是否在欺骗自己

阅读原文 很多时候,我们都在不自觉中不断地欺骗自己,放任自己。 导读:相信我,每个人都在生活当中时不时的欺骗着自己,不管本人自己是否有意识到,这个现象是客观存在的。前面会有一些比较枯燥的论述,后面就会有很多实际的例子来说明。 何为欺骗 通常的定义:通过使自己或者别人相信与实际客...

2018-05-01 22:59:31

阅读数:61

评论数:0

OpenMAX编程-时钟与同步

阅读原文 导读: 音视频的同步问题一直是音视频播放过程中很重要的一部分,OpenMax的spec文档里面给出了一种推荐的音视频同步的做法,而且很多地方也正是采用的这种推荐的音视频同步方法。本文就对spec里面介绍的音视频同步方法进行拆解分析,探究其编码实现过程。 往期文章索引: 04 - ...

2018-04-22 16:51:25

阅读数:127

评论数:2

测试VS研发

原文阅读 测试与研发总是在互相吐槽的同时又保持着亲密的合作。 导读: 很多行业,譬如软件研发、机械制造、餐饮等等,都是有自己行业相关的测试标准以及配套的研发、测试部门的。研发负责一个产品从无到有的设计生产,测试则把控着产品质量的生命线。而对于程序员来说,测试与研发之间经常会有互黑吐槽...

2018-04-01 17:47:07

阅读数:89

评论数:0

生活集思录-大学门外的事情

原文链接 学习在某个方面相对来说应该是世界上最纯粹的事情了。 目前还处于是职场小白阶段,经过一段时间的忙碌,也逐渐感觉到了毕业之后的生活应该是什么样的?试用期的过渡说实话还是比较合理的,从最开始感觉和学校里面的生活好像没什么两样,到后来慢慢地显现出来细微的差异,再到逐渐切换到另一条轨道...

2018-03-25 17:20:03

阅读数:179

评论数:0

OpenMAX编程-音视频等组件介绍

本文着重介绍不同类型组件的具体构成(参数类型、特性设置等),包括audio、video、image等组件。另外对OpenMAX的一些扩展用法以及以前文章当中的缺漏进行补充。

2018-03-12 22:28:57

阅读数:209

评论数:0

OpenMAX编程-实现一个组件

往期文章索引: 02 - OpenMAX编程-数据结构 01 - OpenMAX编程-组件 00 - OpenMAX编程初识 导读: 本文聚焦于如何编程实现一个真正的组件,主题思想是介绍一个组件在编程sjo的模块组成以及如何编写,也会介绍下组件的初始化过程、组件之间的绑定过程、数据同步过...

2018-01-07 21:33:45

阅读数:448

评论数:0

memset对memcpy耗费时间的影响

源于之前几天的一个测试程序,作用是用来测试某个系统的内存访问能力,主体测试策略是分配一个缓冲区,然后使用memcpy在分配的缓冲区之间拷贝若干次,计算拷贝时间,然后在多线程的环境下运行多个拷贝程序,再次分别计算每个线程花费的时间,以此来估算系统的内存访问能力、线程调度性能以及带宽分配性能。然而,测...

2017-12-03 09:18:42

阅读数:1797

评论数:0

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