自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (10)
  • 收藏
  • 关注

原创 [chatgpt]关于openssl建立安全连接过程问答

在上述流程中,客户端会使用服务端的公钥证书来加密一个随机生成的对称密钥,然后将加密过的对称密钥发送给服务端。总之,OpenSSL建立安全连接理论上的过程是基于木箱发送和接受认证信息和私钥,通过客户端与服务端TLS/SSL协商、握手以及数据传输的加密规则,实现安全通信。其中客户端请求建立连接,服务端确认并返回证书。3.客户端通过服务端返回的证书,向全球所有CA发送证书的信息,根据证书颁发机构的威信确定证书的合法性。需要注意的是,服务端的证书必须是受信任的证书颁发机构颁发的,这样才能保证证书的可信度和有效性。

2023-05-18 14:46:49 856

原创 linux内核原子操作

但话又说回来,完整的锁机制对一个简单的整数来讲却显得有些浪费。针对这种情况,内核提供了一种原子的整数类型,称为atomic_t,定义在<asm/atomic.h>中。一个atomic_t变量在所有内核支持的架构上保存一个int值。但是,由于某些处理器上这种数据类型的工作方式有些限制,因此不能使用完整的整数范围;也就是说,在atomic_t变量中不能记录大于24位的整数。有时共享资源可能恰好是一个简单的整数值。假定我们的驱动程序维护者一个共享变量n_op,该变量的值表明有多少个设备操作正在并发的执行。

2023-04-21 17:55:29 158

原创 C++并发锁相关并发

在做这个之前,要确定所有对这个有名信号量的引用都已经通过 sem_close() 函数关闭了,然后只需在退出或是退出处理函数中调用 sem_unlink() 去删除系统中的信号量,注意如果有任何的处理器或是线程引用这个信号量,sem_unlink() 函数不会起到任何的作用。当条件满足时,通知等待的线程以继续执行。由于有名信号量的值是保存在文件中的,所以对于相关进程来说,子进程是继承了父进程的文件描述符,那么子进程所继承的文件描述符所指向的文件是和父进程一样的,当然文件里面保存的有名信号量值就共享了。

2023-04-21 17:50:15 795

原创 C++并发数据结构设计

关键词:原子操作,无锁设计引入问题->为什么需要原子操作->原子操作实现以及原理->c++原子操作接口->c++基于原子操作的数据结构设计->原子操作什么是原子操作所谓原子操作,就是"不可中断的一个或一系列操作"。2. 硬件级的原子操作在单处理器系统(UniProcessor)中,能够在单条指令中完成的操作都可以认为是" 原子操作",因为中断只能发生于指令之间。这也是某些CPU指令系统中引入了test_and_set、test_and_clear等指令用于临界资源互斥的原因。

2023-04-20 17:25:45 483

原创 低功耗蓝牙学习笔记-GATT

在上一章节我们知道属性的组成。在实际的应用中,程序中存放的就是由多个上图属性组成的一个数据库。

2020-03-04 14:46:40 558

原创 Linux内核自旋锁【笔记】

并发的来源 当我们说并发时,是指可能导致共享资源的访问出现竞争状态的若干执行路径,并不是指严格的时间意义上的并发执行。linux系统下并发的来源主要有:中断处理路径调度器的可抢占性多处理器的并发执行 local_irq_enable与local_irq_disable 在单处理器不可抢占系统中,使用local_irq_enable与local_irq_disable是消...

2020-02-17 15:17:54 309 1

原创 低功耗蓝牙学习笔记-属性协议

什么是属性协议?属性协议(Attribute Protocol)简称ATT;属性协议既包含了关于属性的定义,也包含了属性的操作方法,既属性协议包含了通信协议的内容,属性协议通讯操作的对象是属性实例;属性协议定义了两种角色:服务器和客户端。服务器:提供数据的蓝牙设备客户端:需求数据的蓝牙设备属性协议允许称为服务器的设备将一组属性及其关联的值公开给对端的称为客户端的设备。 ...

2020-02-02 15:07:39 4231

原创 低功耗蓝牙学习笔记-L2CAP

注:本篇博客摘抄《BLE4.0 低功耗蓝牙协议总结 作者:刘权》的部分内容,该文档是学习ble很好的文档,推荐!L2CAP的全称是逻辑链路控制和适配协议。L2CAP是一个复用层,可以让低功耗蓝牙复用三条不同的信道。它也支持数据的分隔和重组功能,使得较大的报文可以在底层无线电中传输。L2CAP信道L2CAP有个很简单的概念,信道。信道是指数据包序列,连接两个设备上的一对服务。在...

2020-01-23 15:09:56 1784 2

原创 低功耗蓝牙HCI交互实例解析

准备工具 协议解析工具Wireshark,下载地址https://www.wireshark.org/download.html。 hci_dump.pklg文件,该文件由btstack示例程序运行时产生,此处可直接下载hci_dump.pklg。 说明(以下内容摘抄自韦东山的《BLE协议.docx》)运行BTStack程序时,会生成hci_dump.pklg文件,可...

2020-01-20 11:12:24 1198

原创 低功耗蓝牙学习笔记-HCI层

声明:BLE低功耗蓝牙系列博客来自个人的学习总结,其中肯定会包含很多错误,如果发现欢迎帮忙指正。BLE内容比较多,我现在还没有完全学完,好在其分层设计,所以可以每学完一个部分就可以做相应的总结。需要说明的是该系列博客的大部分内容来自《低功耗蓝牙开发权威指南》这本书,还会包含韦东山蓝牙系列课程的部分内容。该系列博客可以提供些什么?该系列博客是对BLE相关的知识点做归纳总结,注释个人在学习过程中的观...

2020-01-20 10:01:28 2031

原创 btstack源码分析-btstack_main(我方已到达战场)

历史的帷幕徐徐落下,新的时代即将到来,从此人类踏入了新纪元...在btstack/example目录下,每个文件都是一个示例程序,每个示例程序都有一个btstack_main函数,每个示例程序可以扮演client、service、可以是包含电池服务的外围设备或心跳服务的外围设备等等。本文分析以le_data_channel_client.c为例,其btstack_main定义如下:i...

2020-01-18 16:42:44 1654

原创 btstack源码分析-扬帆起航(主函数后传)

通过上一章,我们知道,主机向控制器发送了复位命令,发起第一次传输:btstack_chipset_intel_download_firmware ... // get started state = 0; state_machine(NULL); ...随后控制器将返回响应(事件)到主机,此时主函数已有执行:// gobtstack_run...

2020-01-18 11:55:28 890 1

原创 低功耗蓝牙学习笔记-链路层

声明:BLE低功耗蓝牙系列博客来自个人的学习总结,其中肯定会包含很多错误,如果发现欢迎帮忙指正。BLE内容比较多,我现在还没有完全学完,好在其分层设计,所以可以每学完一个部分就可以做相应的总结。需要说明的是该系列博客的大部分内容来自《低功耗蓝牙开发权威指南》这本书,还会包含韦东山蓝牙系列课程的部分内容。该系列博客可以提供些什么?该系列博客是对BLE相关的知识点做归纳总结,注释个人在学习过程中的观...

2020-01-06 19:36:57 1034

原创 btstack源码分析-主函数

主函数分析(port/windows-winusb/main.c):int main(int argc, const char * argv[]){ main_argc = argc; main_argv = argv; btstack_memory_init(); ... #if MAX_NR_HCI_CONN...

2020-01-04 17:30:01 1221

原创 通过SSH2接口实现sftp client文件上传

/* * Sample showing how to do SFTP write transfers. * * The sample code has default values for host name, user name, password * and path to copy, but you can specify them on the command line like...

2019-12-28 18:46:34 3316

原创 BLE低功耗蓝牙学习笔记-概述

声明:BLE低功耗蓝牙系列博客来自个人的学习总结,其中肯定会包含很多错误,如果发现欢迎帮忙指正。BLE内容比较多,我现在还没有完全学完,好在其分层设计,所以可以每学完一个部分就可以做相应的总结。需要说明的是该系列博客的大部分内容来自《低功耗蓝牙开发权威指南》这本书,还会包含韦东山蓝牙系列课程的部分内容。该系列博客可以提供些什么?该系列博客是对BLE相关的知识点做归纳总结,注释个人在学习过程中的观...

2019-12-16 21:37:41 1846

原创 qml程序发布操作方法

Qt Creator创建工程后,编译出的可执行文件只能在本机运行。但我们的目标是我们写的程序可以被更多人使用,下面分享下QT项目/QML项目如何发布!作者环境:Win7 + Qt5.9.0Qt Creator直接编译生成的.exe文件是不可以直接点击运行的:提示找不到库,原因是在Qt Creator调试运行时,已经帮我们设置好环境变量,让程序运行时可以正确找到对应的库文件。所以我们...

2019-10-03 13:21:49 1452

原创 qml实现文本二进制互转工具

下载windows环境,文本二进制互转工具下载:https://download.csdn.net/download/lewanhah01/11831813界面及功能首先实现的界面效果如下:二进制转文本( img.bin -> img.bin.txt)而文本转二进制是上面的反操作。实现首先是main入口函数(main.c)#include <QGuiAp...

2019-10-03 11:55:02 899

原创 《每天一道笔试题》(1)

上海华为的一道关于指针方面的编程题int A[nSize],其中隐藏着若干0,其余非0整数,写一个函数int Func(int* A, int nSize),使A把0移至后面,非0整数移至数组前面并保持有序,返回值为原数据中第一个元素为0的下标。(尽可能不使用辅助空间且考虑效率及异常问题,注释规范且给出设计思路)思路:首先能想到的就是进行排序,但前面已经有说明全是整数(可能包含负数)...

2019-09-29 18:39:37 132

原创 linux挂载多个文件系统

存储介质为nandflash,分区信息如下:# ls /dev/block/ -aldrwxr-xr-x    3 root     root           240 Dec 31 19:00 .drwxr-xr-x    8 root     root           900 Dec 31 19:00 ..drwxr-xr-x    2 root     root      ...

2018-12-05 16:57:44 1986

原创 input-event-daemon

input-event-daemon - input event handling daemon检测特定按键并执行用户指令input-event-daemon [ [ --monitor | --list | --help | --version ] | [--config=FILE] [--verbose] [--no-daemon] ]...

2018-12-05 16:33:45 2629 1

原创 makefile学习笔记

多个源文件编译目标:cc=gcctarget=appobjs=test1.o test2.o test3.oCFLAGS= -I/opt/usrlib1/include -I/opt/usrlib2/include #指定头文件路径LDFLAGS= -L/opt/usrlib1/lib -L/opt/usrlib2/lib -Os -las...

2018-09-12 10:58:13 213

原创 Qt 数据库之 QSqlRelationalTableModel

QSqlRelationalTableModel *model; model-&gt;setTable("employee"); //设置操作的表model-&gt;setEditStrategy(QSqlTableModel::OnManualSubmit);  //QSqlTableModel::OnManualSubmit是枚举类型,在这里的意思是:模型中的所有更改将被缓存,直到...

2016-02-03 17:43:18 2367

原创 Qt 数据库(一)

下面是Qt数据库操作的实例,是从其他的博客的整理归纳!仅供参考!/*包含一些必要的头文件*/#include&lt;QApplication&gt;#include&lt;iostream&gt;#include&lt;QtSql&gt;#include&lt;QSqlDatabase&gt;int main(int argc,char *argv[]){    QApplic...

2016-02-03 11:30:22 233

btstack-master.zip

btstack-master源码,也应该可以直接github上下载到,但我也不是从那里下载的,拷贝自韦东山蓝牙课程提供的文档,提供给需要的人!

2020-02-04

hci_dump.pklg

该文件由btstack示例程序(le_data_channel_client.c)运行时产生,可供主机和控制器交互数据的分析。

2020-01-20

TxtBinConverter.rar

基于qml和c++开发的windows平台文本/二进制互转工具,支持文本文件转为二进制文件,同时支持二进制文件转文本文件,使用过程中如果发现问题,欢迎联系[email protected] !

2019-10-03

alsa-lib wav文件播放代码示例

alsa-lib wav文件播放代码示例,wav文件的解析和alsa-lib接口调用

2018-08-20

字符转bin文件工具

txt数组转换成bin文件,是二进制文件转txt文件的反向操作

2018-08-20

图片转数据软件

把图片转换成数组或是镜像文件,从而可以实现烧写和显示操作。

2015-11-08

Linux c 函数查询

Linux c 函数包含基本的函数,使用方便,配合有相应的例子,是linux应用开发的好助手

2015-06-21

mini2440usb下载工具

mini2440usb下载工具,这个网络上找的工具对了win7 使用mini2440的用户来说应该是有用的,安装方法请百度

2015-03-14

stc程序烧录软件

解压压缩包,点击安装

2014-08-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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