Alsa音频编程

一、前序 这里了解一下各个参数的含义以及一些基本概念。 声音是连续模拟量,计算机将它离散化之后用数字表示,就有了以下几个名词术语。 样本长度(sample):样本是记录音频数据最基本的单位,计算机对每个通道采样量化时数字比特位数,常见的有8位和16位。 通道数(channel):该参数为1...

2019-01-28 17:02:55

阅读数 103

评论数 0

使用QtCreator作为嵌入式Linux的IDE及可视化调试工具

Qt Creator For 嵌入式Linux搭建流程 1.安装QtCreator 2.编译Qt for embbed 3.编译gdb及gdbserver 4.使用QtCreator创建C++工程 5.远程调试嵌入式Linux中的程序 1.安装QtCreator 首先从Qt官网下载最新...

2019-01-26 13:59:01

阅读数 178

评论数 0

Linux下库相关命令

Linux下库相关命令 g++(gcc)编译选项 l  -shared :指定生成动态链接库。 l  -static :指定生成静态链接库。 l  -fPIC :表示编译为位置独立的代码,用于编译共享库。目标文件需要创建成位置无关码, 念上就是在可执行程序装载它们的时候,它们可以放在可执行...

2019-01-12 13:47:08

阅读数 44

评论数 0

libiconv1.15库裁剪

从网上下载了libiconv-1.14,编译后发现生成的库文件有1.2M之多,感觉太大了,自己认为在库中数据占很大部分,因为iconv支持世界上几乎所有常见语言的编码转换,但是我只需要UTF-8转换为GB2312,所以有必要裁剪一下。     在对libiconv-1.14裁剪时遇到了很多错误,...

2018-11-24 13:37:53

阅读数 182

评论数 0

linux configure 交叉编译 配置参数

设置编译器: --build = 软件在什么平台下编译 --host = 软件在什么平台下运行 --target = 软件为什么平台服务(仅限开发工具链) host= 后面的参数是四个部分: 架构-厂商-内核-标准库 eg. i686-pc-linux-gnu 在./configure的时候,...

2018-11-24 10:55:14

阅读数 94

评论数 0

MAKE FILE 相关

CFLAGS 表示用于C编译器的选项  CXXFLAGS 表示用于C++编译器的选项  这两个变量实际上涵盖了编译和汇编的两个步骤 CFLAGS:指定头文件(.h)的路径,如:CFLAGS=-I/usr/include -I/path/include 。 相同地,安装一个包时会在安装路径下建立...

2018-08-29 15:37:12

阅读数 44

评论数 0

Linux根文件系统制作与各种挂载方式的实现

Linux根文件系统的制作什么是文件系统计算机的文件系统是一种存储和组织计算机数据的方法,它使得对其访问和查找变得容易,文件系统使用文件和树形目录的抽象逻辑概念代替了硬盘和光盘等物理设备使用数据块的概念,用户使用文件系统来保存数据不必关心数据实际保存在硬盘(或者光盘)的地址为多少的数据块上,只需要...

2018-02-28 18:05:32

阅读数 2913

评论数 0

线程同步

1.互斥量 互斥变量用pthead_mutex_t数据类型来表示,在使用互斥变量之前,必须首先对它进行初始化,可以把它置为常量PTHREAD_MUTEX_INITIALIZER(只对静态分配的互斥量),也可以能过调用pthread_mutex_init函数进行初始化。如果动态地分...

2018-01-11 13:37:01

阅读数 81

评论数 0

线程属性

一.线程属性        线程具有属性,用pthread_attr_t表示,在对该结构进行处理之前必须进行初始化,在使用后需要对其去除初始化。我们用pthread_attr_init函数对其初始化,用pthread_attr_destroy对其去除初始化。   名称...

2018-01-11 13:35:50

阅读数 852

评论数 0

互斥锁属性

使用互斥锁(互斥)可以使线程按顺序执行。通常,互斥锁通过确保一次只有一个线程执行代码的临界段来同步多个线程。互斥锁还可以保护单线程代码。 要更改缺省的互斥锁属性,可以对属性对象进行声明和初始化。通常,互斥锁属性会设置在应用程序开头的某个位置,以便可以快速查找和轻松修改。表 4–1 列出了用来...

2018-01-11 13:34:53

阅读数 82

评论数 0

进程创建(fork,wait,waitpid)

1.pid_t fork(); (1)当一个进程调用了fork 以后,系统会创建一个子进程.这个子进程和父进程不同的地方只有他的进程ID 和父进程ID,其他的都是一样.就象符进程克隆(clone)自己一样. (2)为了区分父进程和子进程,我们必须跟踪fork 的返回值. 当fork 掉...

2018-01-11 13:33:08

阅读数 99

评论数 0

Linux 线程相关

int pthread_create( pthread_t *tid, const pthread_attr_t *attr, void*(*start_routine)(void*), ...

2018-01-11 13:27:59

阅读数 71

评论数 0

pthread_mutex_init等多线程函数的使用总结

线程按照其调度者可以分为用户级线程和核心级线程两种  用户级线程主要解决的是上下文切换的问题,它的调度算法和调度过程全部由用户自行选择决定,在运行时不需要特定的内核支持;  我们常用基本就是用户级线程,所以就只总结一下POSIX提供的用户级线程接口;  基本线程操作相关的函数:  1线程的...

2018-01-11 10:42:07

阅读数 5486

评论数 0

linux 7Z

本文主要介绍了在linux下安装7z命令的方法,同时介绍了7z命令的使用。7z压缩格式拥有众多优点,具有极高的压缩比率,如果你还不了解,请看文章:7z格式、LZMA压缩算法和7-Zip详细介绍。 reille使用的linux发行版是ubuntu,同时在Redhat上业已验证,可正常使用。 ...

2017-11-30 15:30:15

阅读数 142

评论数 0

arm交叉编译器gnueabi、none-eabi、arm-eabi、gnueabihf、gnueabi区别

arm交叉编译器gnueabi、none-eabi、arm-eabi、gnueabihf、gnueabi区别  知识经验  3年前 (2014-08-09)  45080浏览  5评论 目录 命名规则 实例 1、arm-none-eabi-gcc2、arm-none-...

2017-11-09 17:48:46

阅读数 87

评论数 0

工具链的区别

arm-eabi, arm-linux-androideabi, arm-linux-gnueabi, arm-none-linux-gnueabi工具链的区别 原创 2015年03月06日 09:10:09 1209 链接工具命名方式为: arch-...

2017-11-09 17:45:35

阅读数 375

评论数 0

Linux Socket详解 <大全> 基础知识

1. Socket基础概念: 1.1:形象类比: Socket和电话网络的概念可以做一个很好的类比: Linux 编程中所说的socket就如同一个端点,类比到电话网中,它就如同一个电话机。 而Socket地址就如同电话网中的电话号码。。 1.2:socket地...

2017-05-25 19:51:45

阅读数 667

评论数 0

poen 用法

相关函数:pipe, mkfifo, pclose, fork, system, fopen 头文件:#include 定义函数:FILE * popen(const char * command, const char * type); 函数说明:popen()会调用fork...

2017-05-25 19:31:57

阅读数 459

评论数 0

select, poll和epoll的区别

select()系统调用提供一个机制来实现同步多元I/O: #include #include #include int select (int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, stru...

2017-05-19 18:08:07

阅读数 127

评论数 0

Linux的SOCKET编程详解

Linux的SOCKET编程详解 1. 网络中进程之间如何通信 进 程通信的概念最初来源于单机系统。由于每个进程都在自己的地址范围内运行,为保证两个相互通信的进 程之间既互不干扰又协调一致工作,操作系统为进程通信提供了相应设施,如 UNIX BSD有:管道(...

2017-05-19 18:06:38

阅读数 120

评论数 0

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