01 2023 档案
摘要:在Ubuntu环境上安装gstreamer apt安装gstreamer sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstream
阅读全文
摘要:Linux中断 Linux中断处理过程 1.使能中断,初始化相应的寄存器 2.注册中断服务函数,也就是向irqTable数组的指定标号处写入中断服务函数 3.中断发生以后进入IRQ中断服务函数,IRQ的中断服务函数在irqTable里面查找具体的中断处理函数,找到以后执行相应的中断处理函数 Linu
阅读全文
摘要:模型演进 抛出一个问题:线程怎样才能高效地处理多个连接的业务? 当一个连接对应一个线程时,线程一般采用[read->业务处理->send]的处理流程,如果当前连接没有数据可读,那么线程会阻塞到read操作上(socket默认情况是阻塞IO),不过这种阻塞方式并不影响其他线程。 但是引入线程池,一个线
阅读全文
摘要:什么是GMSL? GSML,中文名称千兆多媒体串行链路,是Maxim公司推出的一种高速串行接口,适用于音频,视频和控制信号的传输,通信介质支持同轴电缆以及屏蔽双绞线,使用50欧同轴电缆或者100欧屏蔽双绞线(STP)时,长度可达15m甚至更长。 核心技术时串行器/解串器,简称SerDes.首先通过串
阅读全文
摘要:在UML图中,类图、用例图、时序图是较为常用的。类图是面向对象系统建模中最常用和最重要的图,是定义其他图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。类图中最基本的元素是类、接口。软件设计师设计出类图后,程序员就可以用代码实现类图中包含的内容。 类图中具体类、
阅读全文
摘要:1.初始化本地仓库 可选,如果不指定,将使用当前目录 git init <directory> 2.添加文件到暂存区 git add <file> 添加当前目录中的所有文件: git add . 3.提交更改 git commit -m "<message>" 添加对跟踪文件的所有更改并提交 git
阅读全文
摘要:创建型模式 Abstract Factory(抽象工厂) - 对象创建型模式:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类 Builder(生成器)- 对象创建型模式:将一个复杂对象的构建 与 它的表示 分离,使它们都可以独立地变化 Factory Method(工厂方法)-
阅读全文
摘要:什么是LIN总线? LIN(Local InterconnectNetwork)总线,是基于UART/SCI(Universal Asynchronous Receiver-Transmitter/SerialCommunication Interface通用异步收发器/串行通信接口)的低成本串行通
阅读全文
摘要:系统信息 PS命令 ps -a:显示现行终端机下所有程序,包括其他用户的程序 ps u:已用户为主的格式来显示程序状况 ps x:显示所有程序,不以终端机来区分 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND 进程拥有者 进程ID CPU
阅读全文
摘要:一、什么是生产者-消费者模型 1.简单理解生产者-消费者模型 假设有两个进程(或线程)A、B和一个固定大小的缓冲区,A进程生产数据放入缓冲区,B进程从缓冲区中取出数据进行计算,这就是一个简单的生产者-消费者模型。这里的A进程相当于生产者,B进程相当于消费者。 2.为什么要使用生产者-消费者模型 在多
阅读全文
摘要:什么是设备树? 设备树文件(Device Tree),描述设备树的文件叫做DTS((Device Tree Source),这个DTS文件采用树形结构描述板级设备,也就是开发板上的设备信息。 设备树结构示意图: DTS、DTB和DTC DTS是设备树源码文件,扩展名为.dts。 DTB是将DTS文件
阅读全文
摘要:condition_variable简介 condition_variable类是一个同步原语,与std::mutex一起使用,用于阻塞一个或多个线程,直到另一个线程修改一个共享变量(条件)并通知condition_variable。condition_variable主要有wait函数和notif
阅读全文
摘要:概述 要确保用new动态分配的内存空间再程序各条执行路径都能被释放是一件麻烦的事情。C++11模板库的头文件中定义的智能指针,std::shared_ptr模板,就可以用来部分解决这个问题。 只要将new运算符返回的指针p交给一个shared_ptr对象“托管”,就不用担心在哪里写delete p语
阅读全文
摘要:简介 工作队列(workqueue)是一种转移任务执行环境的工具,当系统产生一个中断时,可以在中断处理函数里做一些紧急地操作,然后将另外一些不那么特别紧急,而且需要一定时间的任务封装成函数交给工作队列执行,这是函数的执行环境就从中断环境变成了线程环境,这就是Linux里经常提及的中断处理“下半部”。
阅读全文