linux
Jehovah_W
这个作者很懒,什么都没留下…
展开
-
LINUX高级IO
高级IO:阻塞:系统调用io的默认行为,当打开一个低速设备或者去读一个没有数据设备,系统调用默认会以阻塞的方式虚拟终端\伪终端:control + alt + FN:切换到指定的终端打开两个终端:实现交互终端1:nihao-》发送给终端2终端2:输入数据-》发送给终端1fd1 = open(1,操作方式);fd2 = open(2);while(1){read(fd1,buf....)write(...原创 2018-03-12 21:53:21 · 181 阅读 · 0 评论 -
DAC MCP4725 i2c 驱动(linux)
mcp4725是一款低功耗,高精度 单通道,拥有EEPROM的12位的dac。由于最近项目中使用到了该芯片所以贴出来给大家参考(步进电机电机芯片半流锁定。)本贴呢非项目中使用的平台,主要是想在linux 下实现对该器件的使用,实现一个简单的i2c dac字符驱动。对于i2c 基本原理通信协议呢不做过多描述。1.mcp4725 地址mcp4725官方默认地址是一般是b'110...原创 2019-03-30 19:29:29 · 3730 阅读 · 0 评论 -
Linux下安装SQLite3
1. 安装SQLite3sudo apt-get install sqlite3 2. 安装Sqlite3编译需要的工具包如果,你需要的话可以安装该工具包。只是为了体验一把,可以不安装。该项是可选项。apt-get install libsqlite3-dev 3. 检查安装是否成功执行下面命令,会出现sqlite版本号,如3.6.22sqlite3 -version 4. 安装图形界面不喜...转载 2018-03-12 22:31:07 · 600 阅读 · 0 评论 -
sqlite3介绍
数据库:嵌入式数据库-》sqlite3安装sqlite3数据库:sudo apt-get install sqlite3*操作数据库:命令行:是以.开头的命令是sqlite3系统自带的命令.exit :退出.quit :退出.help :查看sqlite3的帮助手册.database :查看当前打开的数据库.schema :查看表结构.tables :查看当前打开的数据库的表集合在启动sqli...原创 2018-03-12 22:22:25 · 4606 阅读 · 2 评论 -
linux sqlite3
一 sqlite函数接口1.SQLITE_APIint sqlite3_open(const char *filename,sqlite3 **ppDb);/* Database filename (UTF-8) *//* OUT: SQLite db handle */功能:打开一个数据库文件参数:filename 数据库文件名ppDb 获得数据信息在内存的首地址返回值:成功返回SQLITE_O...原创 2018-03-12 22:19:39 · 242 阅读 · 0 评论 -
linux目录和文件
一、目录和文件获取文件的属性信息:stat(文件路径,文件属性结构体):通过文件路径获取到文件的属性,获取到的文件属性回填到文件属性结构体中返回值:成功返回0,失败返回-1并设置errno文件属性结构体的构成:st_dev:包含该文件的设备号st_ino:inode号st_mode:文件的类型和权限信息st_nlink:硬链接数st_uid:用户idst_gid:组idst_rdev:设备id号s...原创 2018-03-12 22:14:48 · 457 阅读 · 0 评论 -
linux 静态库和动态库的制作
静态库:会在编译时装载到文件中,占用编译时间取名方式:lib库名.a1.目标文件的获取:gcc -c yyy.c 编译出 yyy.o2.命令:ar -cr lib库名.a yyy.o头文件发布(cp)到:/usr/local/include库文件发布到:/usr/local/lib编译加上链接选项:gcc -o main mian.c -l库名-l参数必须在最后动态库:仅仅是引用,在运行时找到指...原创 2018-03-12 22:10:51 · 209 阅读 · 0 评论 -
wav音频
wav是微软开发的一种音频文件格式,注意,wav文件格式是无损音频文件格式,相对于其他音频格式文件数据是没有经过压缩的,通常文件也相对比较大些。文件格式如图所示:#include <stdio.h>#include <stdint.h>#include <stdlib.h>struct WAV_Format { uint32_t ChunkID; /* "RIF...转载 2018-03-12 22:09:13 · 1288 阅读 · 0 评论 -
linux 网络编程
socket 高级io sql数据库TCP协议分成两个不同的协议:用来检测网络传输中差错的传输控制协议TCP,是可靠的传输专门负责对不同网络进行互联网协议IP,不可靠的传输两个最有代表的协议促成了TCP/IP协议网络采用分层的思想:1.每一层实现不同的功能,对上层的数据做透明传输2.每一层向上层提供服务,同时下层提供的服务OSI开放系统互联网模型:是一个理想化的模型,尚未有完整的实现七层结构:应用...原创 2018-03-12 22:07:22 · 203 阅读 · 0 评论 -
linux线程
1、线程概念线程可以看做是一个正在运行的函数,一个进程中至少有一个函数运行,那么也就是说一个进程至少有一个线程在函数中创建出来的线程,彼此之间是兄弟关系posix线程是一套标准,而不是一套实现线程的标识:pthread_tps axm:查看线程信息pthread_equal(tid1,tid2):比较两个线程标识,相同返回非0值,不相同返回0值调用线程函数需要加上链接选项 -l pthread可以...原创 2018-03-12 22:04:57 · 175 阅读 · 0 评论 -
linux进程间通信
进程间通信:一共6种 ,信号、信号量、管道(只能亲缘进程间通信)(匿名管道 pipe、命名管道mkfifo)、消息队列、共享内存(效率最高)、套接字(网络)。信号:(一般不可靠)(signal)是一种处理异步事件的方式1.信号的概念:信号是软件层面的中断,信号的响应依赖于中断并发:同步异步:异步时间的处理:查询法,通知法信号量:(Semaphore)进程间通信处理同步互斥的机制。是在多线程环境下使...原创 2018-03-12 21:55:32 · 117 阅读 · 0 评论 -
des rsa加密解密,与c++混合使用. 第一步分python
一次偶然的机会需要开发服务器和QT版本的客户端,在其中需要用到常见的加密解密算法,其中纠结了许久,最后项目做完后做出一些总结。python 下使用Des库非常的简单1.Des加密解密from pyDes import *import binasciiret="hello world !" #需要加密的字符串secret_key = "12345678" #密钥iv...原创 2019-04-10 10:22:00 · 588 阅读 · 0 评论