自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (6)
  • 收藏
  • 关注

原创 HTTPS认证三:用docker搭建nginx https服务器

1、生成证书https://blog.csdn.net/egbert123/article/details/103831808 根证书 ca.crt cacrt.pem 根证书签发的服务端证书 server.crt 服务端私钥 server.key...

2020-01-04 13:36:13 787

原创 HTTPS认证一:认证原理

HTTP超文本传输协议用于在web浏览器和网站服务器之间传递信息,有以下缺点:1、通信使用明文,内容可能被窃听2、不验证对方的身份3、无法验证报文的完整性所以HTTPS就来了,其中S代表SSL或者TLS,就是在原来HTTP的基础上加上一层用于数据加密、解密、身份认证的安全层,所以:HTTP+加密+认证+完整性保护 = HTTPS加密:对称加密:加密和解密使用同一个密钥,...

2020-01-04 16:19:37 555

原创 HTTPS认证四:使用开源libcurl进行SSL双向认证

官网:https://curl.haxx.se/libcurl/c/libcurl.htmllibcurl参数说明:CURLOPT_SSLCERTTYPE:证书的格式,支持PEM, DER格式CURLOPT_SSLCERT:客户端证书的名字,加密传输下默认格式是P12,其它方式下是PEM,使用时候用./filename避免混淆,当使用client证书的时候,很大可能需要使用privat...

2020-01-04 14:35:22 3945

原创 HTTPS认证二: openssl生成证书及签名

CA根证书创建 CA 根证书(使用这个根证书签发服务器和客户端的证书)mkdir private# 生成私钥 key 文件:openssl genrsa -out private/ca.key 2048 输出Generating RSA private key, 2048 bit long modulus .......+++...........................

2020-01-04 12:50:01 585

原创 docker仓库harbor的搭建及使用

https://github.com/goharbor/harbor/blob/master/docs/installation_guide.md1、设置FQDN# 设置hostname 为kube-masterhostnamectl set-hostname kube-mastervi /etc/hosts # 域名解析127.0.0.1 localhost localh...

2019-08-07 14:28:49 243

原创 1.4.4 随机梯度下降和构建机器学习算法(介绍)

随机梯度下降(stochastic gradient descent SGD)SGD是梯度下降算法的一个扩展机器学习中反复出现的一个问题是好的泛化需要很大的训练集,但大的训练集的计算代价也很大。机器学习中算法中的代价函数通常可以分解成每个样本代价函数的总和。 例如,训练数据的负条件对数似然可以写成J(θ)=Ex,y pL(x,y,θ)=1m∑L(x(x),y(i),θ)J(\th...

2019-01-22 22:14:25 592

原创 1.4.3 无监督学习

一个经典的无监督学习任务是找到数据的“最佳”表示,“最佳”可以是不同的表示,但是一般来说是指该表示在比本事表示的信息更简单或者更容易访问而受到一些惩罚或者限制的情况下,尽可能多的保存关于x的信息。有很多方式定义较简单的表示,常见的三种有低维表示,稀疏表示和独立表示主成分分析(PCA)线性代数一章说过,一种降维的手段k均值据类(k-mean)k-均值聚类算法将训练集分为k个靠近彼此的不同样...

2019-01-22 22:12:52 472

原创 1.4.2 监督学习算法

监督学习算法监督学习算法是给定一组输入x和输出y的训练集,学习如何关联输入和输出。概率监督学习(逻辑回归)线性回归中,能够通过求正规方差来找到最佳权重,相比而言,逻辑回归更困难,其最佳权重没有闭解。反之,我们必须最大化对数似然来搜索最优解,通过梯度下降法最小化负对数似然来搜索。# _*_ coding: utf-8 _*_"""根据两门考试成绩,判断是否通过steps:1\ dea...

2019-01-20 16:00:03 772

原创 1.4.1 机器学习基础

深度学习是机器学习的一个分支。机器学习机器学习是一门研究‘学习算法’的学问,所谓学习是指对于任务T和性能度量P,一个计算机程序能够在T上以P衡量的性能随着经验E而自我完善,那我们称这个计算程序在从经验E中学习。任务T :机器学习应该如何处理样本,样本是指机器学习系统处理的对象或者事件已经量化的特征集合。 (分类,回归,机器翻译)性能度量P:评估机器学习算法的能力。模型评估的基...

2019-01-19 14:41:18 667

原创 1.3 数值计算

数值计算通过迭代过程更新解的估计值来解决数学问题的算法,而不是通过解析过程推到出公式来提供正确解的方法。机器学习中常见的包括优化(找到最大化或者最小化函数的参数)和__线性方程组的求解__。下溢: 当接近零的数被四舍五入为零时,发生下溢。上溢:当大量级的数被近似为无穷大时,发生上溢。解决这种问题的方法之一是使用softmax函数softmax(x)i=exp(xi)∑exp(x)sof...

2019-01-15 18:26:18 295

原创 1.2 概率与信息论

import tensorflow as tfimport numpy as npimport scipy.stats as statsimport matplotlib.pyplot as plt 随机变量#tf.random_normal(shape,mean=0.0,stddev=1.0,dtype=tf.float32) #tf.truncated_normal(shape,...

2019-01-12 17:28:41 387

原创 1.1 线性代数

import tensorflow as tfimport numpy as np标量,就是一个单独的数向量,一列数矩阵,一个二维数组张量,tensorflow 中,所有变量用张量tensor表示转置,行列互变a = 10 #标量b = tf.constant(a) # 0阶张量print(a)print(b)A = [1, 2, 3] # 向量B = tf.co...

2019-01-10 11:36:23 374

原创 1、深度学习 介绍

图中就是AI,机器学习,深度学习之间的关系如果想学习人工智能,深度学习是一个重要的方面,当然也是其中之一,所以学好深度学习是必须的。在看这本花书之前,我在网易云课堂上看完了吴恩达的《machine learning》,另外网易云课堂的微专业有吴恩达的《深度学习工程师》,配合Coursera上的练习,对deep learning有一定的了解,但看总觉得很不够,所以开始啃这本《花书》。...

2019-01-09 17:32:13 249

原创 python lambda

Lambda表达式是Python中一类特殊的定义函数的形式,使用它可以定义一个匿名函数 。items = [{'name' : 'Homer', 'age': 39}, {'name' : 'bart', 'age': 20}, {'name' : 'curry', 'age': 10}]items.sort(key = lambda item : item.get("age"))pr...

2018-08-06 18:31:23 315

原创 VxWorks驱动移植基础知识

VxWorks驱动架构:一、在最新发布的VxWorks6.x版本中,devicedriver可以通过两种方式来实现1、 VxBus-enabled devicedrivers 这种架构下编写的driver为OS和设备定义了一系列标准接口来和driver交互2、as legacy(pre-VxBus) device drivers这种结构下编写的驱动没有为OS和设备提供标准接口...

2018-07-31 16:45:13 4096

原创 LTE系统各种指标概念(EVM,ACLR)

转自一个网站的文章,原文链接  http://m.elecfans.com/article/600376.html1、Rx Sensitivity(接收灵敏度) 接收灵敏度,这应该是最基本的概念之一,表征的是接收机能够在不超过一定误码率的情况下识别的最低信号强度。这里说误码率,是沿用CS(电路交换)时代的定义作一个通称,在多数情况下,BER (bit error rate)或者PER (packe...

2018-07-09 15:26:35 45824 3

转载 VC++ Excel基本操作(初始化,插入,颜色)

最近做VC++操作excel,特地转载文章,另外我自己实现了C++的excel类,需要可以私信我。-------------------------------------转载内容:-------------------------------------------------- 最近由于工作需要,不得不操作Excel,包括基本的数据输入输出、字体设置、颜色设置、单元格的合并、填充色的设置,当然...

2018-06-25 12:01:44 1113

原创 openwrt添加USB网卡驱动(SIERRA)

从SIERRA公司搞了一个7455的LTE模块和对应的DEVKIT,DEVKIT接口是USB3.0,可以通过USB3.0连接我另一个openwrt开发板,然后openwrt开发板加载相应的驱动,虚拟网卡和串口,实现了USB网卡的功能,废话不多说,下面是添加步骤:到sierra官网找到7455USB驱动并下载,地址如下:https://source.sierrawireless.com/device...

2018-04-12 11:22:21 34036

原创 Openwrt libpthread.so.0

当需要多线程编程时,需要thread库支持,否则编译时出现如下错误:PackagegctTest_server is missing dependencies for the following libraries:libpthread.so.0解决方法:在上级目录(package目录下)的Makefile中添加一句话:definePackage/gctTest_server...

2017-12-13 10:23:16 2212 2

原创 python判断网络是否通

提供两种方法:netstats.py# -*- coding: gbk -*-import myarpimport osclass netStatus: def internet_on(self,ip="192.168.150.1"): os.system("arp -d 192.168.150.1") if myarp.arp_resolve(ip,

2017-10-19 14:37:51 5657 1

原创 python正则表

python正则表达式在抓取网页,分析数据方面有特别重要的作用,下面是一些例子可以参考:# -*- coding: utf-8 -*- import re#\d 表示一位数字#在一个模式后加上花括号包围的 3({3}),就是说,“匹配这个模式 3 次”phoneNumRegex = re.compile(r'\d{3}-\d{3}-\d{4}')mo = phoneNumRegex.se

2017-09-30 18:20:40 384

原创 VxWorks内存分配分析

内存显示函数memPartShowstatic PART_ID  testMemoryPartId = NULL;void mem_test(){    char *memoryPool;    void * pMemory;    static const UINT   initialSize = 3000;    if ((memoryPoo

2017-05-07 22:36:04 6330

原创 VxWorks任务调度

VxWorks任务有五种基本状态:就绪、休眠、延时、悬置、运行就绪态是任务获取了除了CPU以外的所有资源休眠态是任务等待除CPU以外的其它资源,通常是等待信号量,也成为阻塞态延时态是通过调用taskdelay函数主动释放CPU一段时间,时间到了之后就进入就绪态悬置态是一种处于调试的状态整个系统中只有一个任务是处于运行态的,通常是由处于ready态的最高优先级的任务转化来的,

2017-04-09 19:04:17 3169

原创 进程及进程常用命令

Linux下进程的一些常用命令:1、ps 列出ps命令执行那一时刻当前终端的有关进程2、command &在一条命令后面加&,可使得command在后台运行3、jobs显示当前后台运行的程序4、Ctrl+z命令可以使得当前正在终端运行的命令放到后台运行,但是变为停止状态5、bg (jobs id)使得命令由停止态变为运行态6、kill -9 pid可

2017-04-05 21:58:43 824

原创 静态库和动态库

1、静态库是在程序编译的时候被载入到程序的目标代码中,程序运行的时候不在需要改静态库,因此体积比较大。2、动态库是在程序运行的时候载入的,程序运行的时候还需要动态库,因此所占体积比较小。不同的应用程序可以使用同一个动态库,因此,内存中只需要一份动态库。静态库的使用方法:例如将hello.c文件封装为静态库libhello.a,并链接到main.c中(1)gcc -c h

2017-04-03 11:04:42 273

原创 getopt解析函数

getopt(分析命令行参数)  相关函数表头文件        #include定义函数        int getopt(int argc,  char * const argv[ ],  const char * optstring);函数说明        getopt()用来分析命令行参数。参数argc和argv是由main()传递的参数个数

2017-04-03 11:00:32 950

原创 在Linux系统中索引的方法

1、在要搜索的目录中建立索引文件      sudo ctags -R2、在终端输入      vim -t key(key为要搜索的文件或者关键字)3、选中相应的文件4、将光标停留在要搜索的关键字上,按着ctrl+],向下搜索shift+5查看结构体定义处。更多具体的功能,可以在vim中通过输入命令help tags进一步学习

2017-04-03 10:39:03 1476

原创 VxWorks目录架构

2017-04-02 09:02:16 1951

原创 标准IO,fopen,fclose

fopen打开文件的权限如下:r只读,文件必须存在r+读写,文件必须存在w只写,文件不存在就创建,文件存在就清空文件w+读写,文件不存在就创建,文件存在就清空文件a只写,文件不存在就创建,文件存在就在文件后面追加a+读写,文件不存在就创建,文件存在就在文件后面追加1、修改默认的权限掩码:fopen ()没有设定创建文件权限的参数,通过

2017-04-01 21:56:45 458

原创 u-boot详细解析

对于Uboot移植工作,有一些技术细节可能不需要我们搞特别清楚,但是通过分析Uboot源码,可以让我们对uboot整个架构有一个清晰的认识,在进行uboot移植的过程中可以有一个清晰的思路。u-boot 源码目录平台相关ArchBoardInclude平台无关ApiCommonDiskDocDriv

2017-04-01 21:45:55 8190

原创 Makefile的编写快速入门

1、Makefile中的自动化变量$*        不包含扩展名的目标文件名称$@            目标的完整名称$%       如果目标是归档成员,则该变量表示目标的归档成员的名称$       第一个倚赖$^      所有的倚赖文件,去重$+       所有的倚赖文件,不去重$?          所有的倚赖文件,以空格

2017-03-29 21:26:56 462

原创 VIM的字符串替换命令及VIM的配置

Linux系统中最常用的文本编辑器是vim,配置一个好的vim编辑器可以让自己工作效率高效起来。一、在VIM中进行文本替换:    1.  替换当前行中的内容:    :s/from/to/    (s即substitude)        :s/from/to/     :  将当前行中的第一个from,替换成to。如果当前行含有多个                       

2017-03-27 22:18:45 434

原创 shell脚本三步走以及shell编程中常用语法

1、shell编程有三个步骤a、建立并编辑shell命令 touch file.shb、赋予执行权限 chmod 777 file.sh c、执行shell程序 sh file.sh下面是我自己写的创建shell脚本的脚本文件,感兴趣的可以尝试一下:1、shell脚本中不变量不需要定义,可以直接使用2、shell自定义变量的时候,赋值号两

2017-03-26 10:58:35 502

原创 Linux网络配置,与Windows共享,putty登录过慢

一:命令行配置方法1、配置为动态获取IP地址         $vim   /etc/network/interfaces   添加                                               auto eth0                                               iface eth0 inet

2017-03-26 10:50:05 367

转载 C程序(进程)的内存布局

这篇文章是转载博友的,链接如下http://www.cnblogs.com/dejavu/archive/2012/08/13/2627498.html在编写程序的过程中,内存是一个非常重要的概念,它涉及到系统的稳定,如果分配的好,可以避免很多bug。我有一个同事,维护的一个项目,那个机器每两小时就会莫名其妙的停止运行,后来经过仔细查看代码,发现有一块程序在不断的malloc,但从

2017-03-26 10:34:24 229

原创 内存对齐(结构体)

在定义结构体变量的时候,我们通过sizeof求取结构体的大小的时候,发现和我们自己计算的不同,例如下:sizetest1所占内存大小为8,而sizetest2所占内存大小为12,和我们理解的7都不相同,其原因就是编译器将三种类型的数据的存储方式进行了优化,使其内存字节对齐了。为什么进行内存对齐:摘抄http://blog.chinaunix.net/uid-23

2017-03-25 11:55:48 217

原创 二级指针及段错误

首先段错误产生的原因有两个:1、访问的内存地址超出了系统给这个变量分配的内存空间(越界)2、系统访问了程序的静态数据区段错误产生的过程是:1、用户程序要访问的一个虚拟地址(VA),经过MMU检查后发现是无权访问的2、MMU产生一个异常,CPU从用户态切换到特权模式,产生遗产关中断,并跳转到内核代码中执行异常服务程序。3、内核吧这个异常解释Wie段错误,并把引发段错误

2017-03-25 11:43:02 691

原创 C语言编译步骤

C语言从代码变成可执行程序的步骤:预处理 -----> 编译 -----> 汇编 -----> 链接⒈预处理:去掉注释,加载头文件,代替宏定义,条件编译需要文件:.c文件生成产物:预处理文件(以.i结尾)使用方法:gcc hello.c -E -o hello.i可以使用vim打开预处理文件来查看生成产物⒉编译:使用编译器进行C语言的语法检查

2017-03-25 11:15:49 530

原创 Linux环境变量设置

个人理解Linux的环境变量可以理解为在任何目录下,都可以找到该环境变量下对应的命令。所谓环境变量就是将一个程序所在的文件夹设为环境变量,那么可以在别的文件夹中直接使用这个程序,不用添加路径添加环境变量的方法有两种:a、临时添加环境变量:关掉当前终端后,配置的环境变量不再有效,方法是:export PATH=$PATH:/mydir/   //其中,/myd

2017-03-25 11:09:16 240

原创 Linux常用命令的操作

今天总结一下Linux中常用命令(Ubuntu环境),包括查看文件类型,安装程序,解压缩,more\less,grep,head,tail等等。1、file name.c 查看name.c的文件类型2、dpkg -s 安装包名称     查看安装状态   dpkg -l 安装包名称     查看安装包清单(倚赖)3、apt -update   刷新软件源列表

2017-03-25 10:56:55 291

simplessl.tar.gz

使用libcurl进行https双向认证的源码,请参考笔记使用 https://blog.csdn.net/egbert123/category_9642346.html

2020-01-04

TDD-LTE基本信令流程.pdf

TDD-LTE基本信令流程,有需要可考虑下载,比较好的学习材料

2018-04-16

3GPP长期演进(LTE)技术原理与系统设计.pdf

学习LTE的好材料,书本扫描件,有需要可选择下载。。。

2018-04-09

lte轻松进阶

lte进阶必读书籍之一,以讲故事的形式讲解LTE关键技术。

2017-10-12

vim配置文件.rar

vim编辑器的配置包及配置说明,让自己的vim编辑器更好用,自动缩进,命令自动补齐等。

2017-03-27

空空如也

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

TA关注的人

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