linux系统编程
文章平均质量分 61
Aiden@semidrive
这个作者很懒,什么都没留下…
展开
-
工作队列使用心得
最近调试一个音频问题很是奇葩,在比较极端的测试条件下会造成串口丢失数据。问题是这样的当应用层频繁的播放一段短音频文件并且串口不断的在传输数据,此时串口会比较频繁的丢失一些数据。后面查找问题发现是由于频繁的播放短音频文件会导致频繁的开流关流操作,而音频的开流和关流操作会关闭中断,最致命的问题是开流关流时有个很耗时的操作(等待硬件寄存器状态)大概2ms,耗时这么久还把中断关了,这肯定会有问题的。一开始...原创 2019-12-04 14:37:54 · 281 阅读 · 0 评论 -
automake生成库
最近改一个项目,项目使用C++实现的,以前的师兄们使用的是automake进行编译,上次学习了使用automake进行编译,觉得已经会了,可是一到实践的时候就发现很多问题,特别是使用链接库的时候发现不会了。后来学习了一下,现在将使用方法记录下来,以后复习,也希望可以让遇到问题的朋友找到参考。1、使用automake生成动态链接库假设我们现在有一个项目,目录为test...原创 2019-06-28 14:07:07 · 295 阅读 · 0 评论 -
linux分区方案
菜鸟方案“/”与swap两个分区就可以应付绝大多数的应用常用方案分为3个区 1. 挂载点/;主分区;安装系统和软件;大小为30G;分区格式为ext4; 2. 挂载点/home;逻辑分区;相当于“我的文档”;大小为硬盘剩下的; 分区格式ext4; 3. swap;逻辑分区;充当虚拟内存;大小等于内存大小(本人2G);分区格式为swap 4. /boot ;引导转载 2018-01-17 09:41:03 · 61999 阅读 · 0 评论 -
ubuntu16.04开发环境搭建
1 简介Ubuntu 16.04安装完后,还需要做一些配置才能愉快的使用,包括添加软件源、安装搜狗输入法、Chrome浏览器、网易云音乐、配置快捷键、安装git等等,下面就跟着我来配置吧,just do it2 版本选择如果你是小白,不想折腾,可以直接选择安装deepin linux,中文名”深度Linux”,这个是国内目前最好用的Linux之一,开箱即用,常用软件都安装好了,甚至连最...转载 2018-01-14 17:00:02 · 17452 阅读 · 0 评论 -
Ubuntu14.04开发环境搭建
Ubuntu14.04开发环境搭建嵌入式开发过程中很重要的一环节就是开发环境的搭建,开发环境搭建的好可以很好的提高开发效率。其中关键的一部就是挂载运行程序,对于程序的挂载运行需要借助NFS服务器,下面介绍windows和linux操作系统下NFS服务器的搭建。1.1Ubuntu14.04系统安装对于ubuntu系统的安装有两种方式,一种是安装在虚拟机里(vbox或vmware...原创 2016-09-28 15:40:01 · 3227 阅读 · 0 评论 -
mmap使用
一、在lcd中的使用对于lcd显存就是常说的famebuffer,它是由内核在内核空间分配的一片空间,那么在用户空间我们如何去对它进行读写操作呢。常用的方法是通过read()、write()函数进行读写,那么有没有更便捷的方法呢?答案是肯定的,我们还可以通过mmap()对它进行映射,这样在用户空间就能像操作内存一样操作它。是不是很方便。int main(int argc, char原创 2016-12-22 14:10:02 · 544 阅读 · 0 评论 -
exfat文件系统
1、关于fat、fat32与exfat区别1.1 来源fat又称fat16,是DOS和win95时代的windows硬盘格式。fat32是win98提出的格式。exfat是Microsoft在Windows Embeded 5.0以上(包括window5.0、6.0、Windows Mobile5、6、6.1)中引入的一种适合于闪存的文件系统。1.2 fat32的优点:原创 2016-11-28 17:38:52 · 1866 阅读 · 0 评论 -
jiffies
一、作用全局变量jiffies用来记录自系统启动以来产生的节拍的总数。启动时,内核将该变量初始化为0,此后,每次时钟中断处理程序都会增加该变量的值。一秒内时钟中断的次数等于Hz,所以jiffies一秒内增加的值也就是Hz二、秒与jiffies之间的转换jiffies = seconds * Hzseconds = jiffies / Hz三、应用原创 2016-12-12 15:44:47 · 454 阅读 · 0 评论 -
关于fex的说明
Fex GuideJump to: navigation, searchContents1FEX Description2Port Definitions3application3.1[product]4system configuration4.1[ta原创 2016-11-21 11:43:44 · 4825 阅读 · 0 评论 -
pthread_cond_wait 实例
#include #include #include #include pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;pthread_cond_t cond = PTHREAD_COND_INITIALIZER;void *thread1(void *);void *thread2(void *);int i = 1原创 2016-11-16 20:05:54 · 461 阅读 · 0 评论 -
Linux下c开发 之 线程通信与pthread_cond_wait()的使用
pthread_cond_wait()/************pthread_cond_wait()的使用方法**********/ pthread_mutex_lock(&qlock); pthread_cond_wait(&qready, &qlock); pthread_mutex_unlock(&qlock);/***************转载 2016-11-16 20:00:00 · 467 阅读 · 0 评论 -
内核启动logo
创建logo图片:1、内核默认的logo图片为drivers/video/logo/logo_linux_clut224.ppmfile logo_linux_clut224.ppm先得到图片的大小,然后再用gimp等工具创建一个同样大小的png图片2、把自己创建的png图片转换为只有224色的ppm图片pngtopnm logo.png | ppmquant -fs 224原创 2015-08-17 15:29:13 · 374 阅读 · 0 评论 -
生成者与消费者
/****************************************************************************************************************面试必备 生产者:判断能否生产,若能便进入生产延时,生产完后准备进仓库,首先要获得锁,如果有锁进入仓库加锁,然后产品数增加一,最后出库解锁 消费者:判断能原创 2015-08-13 08:52:43 · 434 阅读 · 0 评论 -
gtest框架的介绍与应用
【摘要】在本文中,作者根据之前使用gtest框架进行测试的经验,总结了一些使用方式和案例。 在这些案例中,我们可以了解到gtest框架的基本使用方法以及在我们日常测试中的应用,同时也能促进我们对于百度的btest的了解。在我们之后的测试工作中,可以根据各个项目的特点以及gtest、btest等测试框架的功用,进行协调和因势利导,将更多框架产品用于我们的测试工作中,使我们的测试工作更加正规、更加高效转载 2015-08-26 17:25:07 · 9587 阅读 · 0 评论