自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 资源 (2)
  • 收藏
  • 关注

原创 DAY9-USF4.0技术文档笔记

1.概述2.参考协议标准3.术语与定义4.引言6.UFS电气特性:时钟、复位、信号与电源7.复位、加电升压和断电降压12.UFS安全13.UFS功能描述14.描述符、标志与属性15.UFS机械标准。

2025-04-28 19:32:27 255

原创 DAY8-GDB调试及打桩

1.类成员函数打桩3.STL容器打桩。

2025-04-27 19:15:39 365

原创 DAY7-C++进阶学习

STL的重要实现原理,模板的声明和定义建议放到一个文件 xxx.hpp 里面或者 xxx.h,防止编译错误。

2025-04-27 16:09:50 305

原创 DAY6-UFS基本概念

3.L2 Data Link: 数据链路层,以Frame为单位,每个Frame最多打包144个Symbol,在Frame上加上头尾及纠错。UTP主要是把UniPro的segment打包成UFS直接可以识别的命令格式,让UFS自己掌握发送数据的节奏、控制自身的状态。2.L1.5 PHY Adapter:物理适配层,以Symbol为单位,每个Symbol有17个bits。1.使用差分串行传输,串行决定使用更快的时钟,差分增强抗干扰能力;LU:逻辑单元,一个可被操作系统识别和访问的逻辑存储单元。

2025-04-22 19:55:19 234

原创 Day5-UFS总结

传输协议的本质:两个收发器件,对需要传输的数据,一层一层的封装和解析,利用封装增加的额外信息,做一些数据处理,完成源地址到目标地址的数据传输功能。应用协议的本质:基于某种传输协议之上,完成一组业务,来对外提供一组服务。UFS测试程序的本质:测试对外服务的可靠性,对UFS设备做一系列操作,来验证设备功能是否正确。UFS器件:提供各种描述符,标签和属性,用来控制器件的不同功能。

2025-04-21 20:08:22 438

原创 Day4-存储技术概述

系统产品:eMMC(NAND FLASH+控制器+标准封装)、UFS、SSD、eMCP(eMMC+LPDDR)、uMCP(UFS+LPDDR)非易失性存储分为ROM类、FLASH类、新型类,FLASH类主要是NOR和NAND,主要是ROM类的升级,新型类重点关注为PCM。从数据保存的持久性来看,分为两类:易失性存储(断电不保存)–RAM、非易失性存储(断电保存)—ROM。从简单的PC电脑来看,存储涉及到CPU寄存器、内存、磁盘、EFI引导区;SSD传输协议分类:AHCI、NVMe。

2025-04-19 10:58:37 229

原创 Day3-UFS深入学习路线

5.引用在定义时需初始化,常量引用需使用const,sizeof引用结果为为引用类型的大小,但指针始终是地址空间所占字节个数(通常与int类型相同)6.C语言结构体中只能定义变量,在C++中,结构体内不仅可以定义变量,也可以定义函数,类成员函数的声明和定义放一起会默认为内联函数。默认拷贝构造函数是构造函数的一个重载形式,参数只有一个且必须是类类型对象的引用;默认构造函数只能一个,无参的构造函数和全缺省的构造函数都称为默认构造函数;参数类型不同、参数个数不同、参数类型顺序不同。1.理解存储技术背景。

2025-04-18 18:32:37 671

原创 Day2-UFS协议栈

应用层基于SCSI,数据链路层基于UniPro,物理层基于M-PHY,仅传输层为原创的UTP;应用层 :命令集、设备管理器、任务管理器传输层:UPIU疑问:服务访问点(Service Access Point,简称SAP)如何实现,具体是个啥?客户-服务端架构,UFS主机(客户)主动发起请求,UFS设备(服务)执行后并返回相应状态。并且只能主机主动发起,设备作为从机不能发起而只能被动响应。

2025-04-17 19:57:13 259

原创 Day1-初次接触UFS

经过导师初次介绍,了解工作以芯片测试为主,需坚持学习,小白大致需3-6月入门。整体学习应分为3大块,UFS协议占40%(3-4h),C++占40%(3-4h),工具或业务占20%(1-2h)。

2025-04-16 17:43:14 444

原创 DeepSeek产品日常使用选择

助您根据需求选择最佳数字伴侣。

2025-02-15 15:18:05 1284

原创 torch.Tensor和torch.tensor

IN:torch.tensor([2.,3.2])Out: tensor([2.0000, 3.2000])IN:torch.Tensor(2,3)Out:tensor([[-7.5731e-29, -2.7648e+38, nan], [ 4.0672e-31, 2.4467e-12, 4.0995e-39]])注意:小写tensor一般用于接受实际类型。大写Tesnor用于接受shape类型,虽然可用于接受list但为了便于区别和记忆,常用tensor代替

2021-11-29 12:52:14 1331

原创 c++宏编写单例模式的3种写法

饿汉:一开始就实例化对象懒汉:调用(需要)才去实例化对象写法一,可用于懒汉和饿汉线程安全singleton.h#ifndef SINGLETON_H#define SINGLETON_H#include <mutex>#define DECLARESINGLETON(class_name) \private: \ static class_name *_instance; \public: \static class_name *instance() \{ \

2021-06-08 14:03:30 649

原创 c++项目实战----->qt动态链接库的使用

Window平台:利用qt编写动态链接库:

2021-01-14 13:19:47 772

原创 linux Poco::Exception :I/O error: Too many open files 解决方法

1.利用ps -A|grep 找到程序的pid号2.lsof -p pid 即可查看那个tcp占用了太多资源,再对其进行优化处理

2020-12-15 16:37:07 505

原创 Ubuntu16.04 redis和可视化工具的安装

在线安装sudo apt-get updatesudo apt-get install redis-server 1.执行service redis status 可以查看redis服务的状态为running,说明安装完成系统自动启动了服务。2.开启远程连接:找到/et/redis/redis.conf文件修改如下 ,注释掉 127.0.0.1 #bind 127.0.0.1。3.设置密码(不建议设置):找到/et/redis/redis.conf文件修改如下 ,添加...

2020-12-15 16:28:50 422

原创 c++项目实战--->Ubuntu系统设置qt程序守护进程

设置工具:systemctlsystemctl是一个systemd(system daemon,linux下的一种init软件)工具,主要负责控制systemd系统和管理系统服务。作用将程序注册为systemd service进程管理交由系统管理,实现程序的异常退出重启和开机自启动。编写systemctl管理的服务脚本,一般以.service结尾配置文件一般分为3个区块(Unit、Service、Install),每个区块包含若干条键值对。以PowerPlantManagerd.s

2020-10-19 17:07:18 888 1

原创 Ubuntu16.04+QT---poco库的使用之http网络通信

1.poco库的安装和编译见上篇:https://blog.youkuaiyun.com/qq_40167046/article/details/1091197632.QT的poco配置.pro文件,添加poco的配置## POCO配置 ### poco的头文件等都在这个目录下,到include一级即可,不需要再下去到 /poco/# 其实不需要加这句,因为该路径是默认添加的INCLUDEPATH += /usr/local/include# 配置1,动态库CONFIG(debug,

2020-10-18 15:51:49 1488 2

原创 Ubuntu16.04--poco和boost库编译和安装

poco法1:如果有版本的需求则不推荐sudo apt-get install libpoco-dev# 也可利用新立德软件管理包安装法2:编译poco源码(推荐)官网下载:https://pocoproject.org/或者:https://download.youkuaiyun.com/download/qq_40167046/12939299安装所需的依赖:sudo apt-get install openssl sudo apt-get install libssl-de

2020-10-16 17:52:17 1446 1

原创 c++项目实战---->QT过滤文件并删除多余文件

接上篇c++项目实战---->QT文件日志输出// 控制日志文件数量static void control_filesnum(){ QDir dir(parameter.log_folder_path); if (!dir.exists()) { return; } QStringList filter; filter << "*.log"; dir.setNameFilters(filter); // 设置文件过滤

2020-09-17 16:22:51 630 1

原创 c++项目实战---->QT文件日志输出

1.QCoreApplicationQt库针对不同的应用程序类型,提供了不同的类来表示。比如,QCoreApplication表示Qt控制台程序,QApplication 和 QGuiApplication 表示GUI程序。它们之间的关系为QCoreApplication 继承自最顶层的QObject,QGuiApplication 又继承自QCoreApplication,QApplication又继承自QGuiApplication。int main(int argc, char *argv[])

2020-09-17 15:37:42 556 1

原创 数据库-->mysql学习笔记4之事务

**事务**概念:一个最小的不可分割的工作单元。事务能够保证一个业务的完整性。作用:多条sql语句,同时成功或者同时失败。提供反悔的机会。--自动提交? @@autocommit=1--手动提交? commit;--事务回滚? rollback?手动开启一个事务BEGIN;或者START TRANSACTION;事务的四大特征ACIDA 原子性:事务是最小的单位,不可再分割。C 一致性:事务的基本要求。I 隔离性:事务1和事务2 之间是具有隔离性的。D 持久性:

2020-08-12 11:52:58 141

原创 数据库-->mysql学习笔记3之范式和查询

**1.数据库的三大设计范式**第一范式:1NF 数据表中的所有字段都是不可分割的原子值;(拆字段)第二范式:2NF 必须满足1NF的条件下,除主键外的每一列都必须完全依赖于主键,而不能只与主键的某部分相关(主要针对联合主键);(拆表)第三范式:3NF 必须先满足2NF,除主键外其他列不能有传递依赖关系。(拆表)**2.SQL查询语句**查询student表中所有记录SELECT * FROM student;查询指定字段SELECT sname,ssex,class FROM s

2020-08-11 16:24:20 190

原创 数据库-->mysql学习笔记2之约束与表结构

1.MYSQL建表约束主键约束primary key; 唯一确认一条不为NULL的记录自增约束AUTO_INCREMENT;一般和主键配合使用唯一约束unique;被修饰的字段不能重复非空约束NOT NULL; 修饰的字段不能为空 NULL默认约束default;外键约束(主表,副表)--班级CREATE TABLE classes( id int primary key, name VARCHAR(20) );--学生表CREATE TABL

2020-08-10 17:51:46 167

原创 数据库-->mysql学习笔记1之创建等基本操作

1.查询SELECT * from adminWHERE Admin_Id = 1 ;2.创建数据库CREATE database test;3.创建数据表CREATE TABLE pet ( name VARCHAR(20) NOT NULL default '' COMMENT '宠物姓名', owner VARCHAR(20) NOT NULL default '', species VARCHAR(20), sex CHAR(1) NULL, birth DATE de

2020-08-10 16:57:28 150

原创 cjson ---> 字符数组初始化

char text1[]="{\n\"name\": \"Jack (\\\"Bee\\\") Nimble\", \n\"format\": {\"type\": \"rect\", \n\"width\": 1920, \n\"height\": 1080, \n\"interlace\": false,\"frame rate\": 24\n}\n}"; char text2[]="[\"Sunday\", \"Monday\", \"Tuesday\", \"We

2020-07-30 18:27:18 391

原创 c/c++指针 ----> cJson源码阅读 day3-2

c 文件操作/* dofile("../../tests/test1"); */void dofile(char *filename){ FILE *f; long len; char *data; f = fopen(filename,"rb"); fseek(f,0,SEEK_END); len = ftell(f); fseek(f,0,SEEK_SET); data=(char*)malloc(len+1); fread

2020-07-30 18:20:38 176

原创 c/c++指针 ----> cJson源码阅读 day3-1

- strcpy和memcpy的区别通常在复制字符串时用strcpy,而需要复制其他类型数据时则一般用memcpy

2020-07-30 17:29:07 320

原创 c/c++指针 ----> cJson源码阅读 day2-2

- parse_string函数(\"解析的难点)static const char *parse_string(cJSON *item,const char *str){ const char *ptr = str + 1; char *ptr2; char *out; int len = 0; unsigned uc,uc2; if (*str != '\"') // 非字符串 { ep = str; retur

2020-07-29 14:46:00 163

原创 c/c++指针 ----> cJson源码阅读 day2-1

- memset()函数/*memset库string.h中的函数.原型是 extern void *memset(void *buffer, int c, int n) buffer:为指针或是数组,c:是赋给buffer的值,n:是buffer的长度.将buffer中前 n 个字节用 c 替换并返回 buffer.*/static cJSON *cJSON_New_Item(void){ cJSON* node = (cJSON*)cJSON_malloc(sizeof(c

2020-07-29 14:37:28 183

原创 c/c++指针 ----> cJson源码阅读 day1

知识点1【指针】

2020-07-28 11:32:01 215

原创 模板4之统计淘宝商品销量(正则表达式、JSON、递归)

import requestsimport reimport openpyxldef open_url(keyword): payload = {'q':"关键字参数","sort":"关键字参数"} url = "网址url" headers = { "user-agent": "F12可获得" } res = requests.get(url,params=payload,headers=headers) return resdef get_space_end(leve

2020-06-18 18:08:59 495

原创 模板3之爬取网易云音乐热门评论(post)

import requestsimport jsonimport openpyxldef get_hot_comments(res): comments_json = json.loads(res.text) # json格式转化为python格式 hot_comments = comments_json['hotComments'] with open('hot_comments.txt','w',encoding='utf-8') as file: for each in hot_co

2020-06-18 11:46:42 305

原创 模板2之爬取城市房价

import requestsimport bs4import reimport openpyxldef open_url(url): headers = { "user-agent": "F12可获得" } res = requests.get(url,headers=headers) return resdef find_data(res): data = [] soup = bs4.BeautifulSoup(res.text,"html.parser") conte

2020-06-18 10:01:28 137

原创 模板1之爬取豆瓣电影排行榜

伪代码,当模板import requestsimport bs4import redef open_url(url): headers = { 'user-agent': '网页F12去找' } res = request.get(url,headers=headers)return resdef find_movies(res): soup = bs4.BeautifulSoup(res.text,'html.parser') # 电影名 movies = [] t

2020-06-17 19:54:14 350

原创 正则表达式和JSON

正则表达式一、导入re模块pip install re查看是否安装:pip listimport re二、常用符号“.” : 可代替所有除"\n"之外的任一字符。“*”:表示它前面的一个子表达式0次到无限次。“?”: 表示它前面的子表达0次或1次“” : 配合其他字符使用“\d” : 表示一位数字“()” : 提取括号内容三、爬虫所需1.将网页标题爬取下来:’(.*?)’2.\w: 单词数字字符 ,"+":匹配前一个字符1次或无限次JSON一、导入JSON.

2020-06-17 19:17:44 464

原创 现代计算机网络ch4 P2P

一 混合式P2P网络(第一代)二 无结构P2P网络(第二代)三 结构化P2P网络(第三代)四 Chord协议五 Kademlia协议六 Bitcoin以及区块链...

2020-01-06 03:34:04 200 1

原创 现代计算机网络ch3拥塞控制

一 基础二 拥塞控制基本概念三 排队算法:FIFO,FQ,WFQ四 流量整形:漏桶、令牌桶算法五 TCP拥塞控制机制(慢启动、拥塞避免、快速重传、快速恢复)六 拥塞避免:ECN显式拥塞控制,RED随机早检测,TCP VegesECN显式拥塞控制TCP VegesRED随机早检测DECbit...

2020-01-05 23:50:43 171

原创 现代计算机网络ch-2 IPv6

一 IPv4和IPv6差异二 IPv6地址分类和特点1.保留地址2.Unicast、Anycast和Multicast地址3.可聚类全局Unicast地址三 IPv6地址自动配置的两种方式,stateless过程1.存在一个能将地址和其他配置信息分发到DHCP客户端的服务器2.不需要服务器,无状态自动配置。stateless过程:首先,获取主机所连接的链路上具...

2020-01-05 16:35:54 263

原创 现代计算机网络ch3-2组播

一 基础二 IGMP

2020-01-05 12:11:11 126

原创 现代计算机网络ch1-1体系结构

1.什么是网络?网络的作用:连接不同设备,交换信息;特点:针对特定信号,连接特殊设备;计算机网络最大的特点:通用性,传输的是通用数据,连接的通用的计算机。1.1什么是计算机网络计算机网络是互联的通用计算机的集合,具有互联和自治的特点;分布式系统和网络的区别:a.分布式系统展现给用户的是一个同意的整体系统;b.对用户来说,分布式系统只有一个模型或范型,例如万维网(www)、集群;...

2020-01-05 11:27:14 275

三种最佳宏块匹配算法.rar

matlab实现的三种算法,最佳宏块匹配,完整程序,不含测试视频,要自己找主程序MVsearch中要求的YUV格式的视频帧,

2019-11-29

poco-1.9.0-all

关于ubuntu16.04中poco库的编译,所需的poco1.9.0版本,官网也可下载,此链接只是方便下载速度较慢的。

2020-10-16

空空如也

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

TA关注的人

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