- 博客(160)
- 资源 (23)
- 问答 (1)
- 收藏
- 关注
原创 Windows 11 TPM2.0问题及解决方法
关注“郑州行疆户外”订阅号。回复“win11”,下载windows11系统。回复“问题”,查看windows11安装过程中遇到的问题及其解决方法。随着2021年6月24日,微软正式发布会上确定windons系统为windows11,也展示了最新系统的界面机器性能。只不过暂未正式发布版本,只出了一个预览版,也就是给一些电脑爱好者提前出了一个版本,暂时还不是稳定版本,所以暂时不要盲目的升级到WIndows11,避免电脑数据的丢失和电脑不嫩正常使用。示例一:TPM2.0问题TPM2.0模块
2021-06-30 14:06:40
3657
原创 Windows 11 系统下载安装 教程
关注“郑州行疆户外”订阅号,回复“win11”,获取win11系统下载链接,安装教程说明Windows11系统安装教程,这里使用VM虚拟机演示具体安装教程,如果是新手,建议大家先使用虚拟机操作一遍,以免安装过程中出错,造成比较大的麻烦。工具准备电脑一台,内存4G,存储50G以上。windows11系统预览版。虚拟机软件:VirtualBox。安装教程打开VirtualBox软件,New(新建虚拟机),根据提示选择配置(内存选择4096MB),其他的默认配置next。
2021-06-26 14:35:40
1753
1
原创 Windows 11 系统下载,正式版尚未发布
下载链接方式:关注“郑州行疆户外”程序员自己的订阅号,回复“win11”,获取win11系统下载链接发布今年5月的Build大会,微软便正式明确新一代操作系统为Windows 11,厉兵秣马6年之后的今天,于6月24日正式推出,同时也宣告了早前被传的沸沸扬扬的Windows 10X彻底宣布结束,新功能与特性将被整合在Windows 11。二、安装启动三、界面展示购买https://www.microsoft.com/zh-cn/windows/wind
2021-06-25 16:37:24
7552
5
原创 Mosquitto服务安装与使用---入门操作介绍
关于Mosquitto配置的资料网上还是有几篇的,但是看来看去,基本上都是基于Linux。基于Window的凤毛麟角,看上去貌似配置的东西相差不大,实操过程中真的烦透了,配置就是不成功,这次把自己实践过程中的东西记录一下,分享出来。一、概念梳理1、Mosquitto是一款实现了消息推送协议MQTT 3.1的开源消息代理软件,提供轻量级的、支持可订阅/可发布的消息推送模式,是设备与设备之间的短消息通信变得简单,广泛应用于低功耗传感器、手机(app消息推送是场景之一)、嵌入式电脑、微型控制器等移动设备。
2020-11-11 22:22:37
7953
原创 Linux UIO驱动实例介绍
接上一篇介绍UIO机制:https://blog.youkuaiyun.com/hpu11/article/details/109395820uio驱动详解为了用最简单的例子说明问题,我们在我们uio驱动的内核部分只映射了一块1024字节的逻辑内存。没有申请中断。这样加载上我们的驱动后,将会在/sys/class/uio/uio0/maps/map0中看到addr name offset size。他们分别是映射内存的起始地址, 映射内存的名字,起始地址的页内偏移,映射内存 的大小。 在uio驱动...
2020-10-31 17:56:36
2793
3
原创 Linux UIO机制--用户空间I / O操作方法
目录 前言关于UIOUIO 的工作原理:前言于许多类型的设备,创建Linux内核驱动程序是过分的。真正需要的只是某种方式来处理中断并提供对设备存储空间的访问。控制设备的逻辑不必一定要在内核之内,因为设备不需要利用内核提供的任何其他资源。这样的一种常见的设备类别是用于工业I / O卡的设备。为了解决这种情况,设计了用户空间I / O系统(UIO)。对于典型的工业I / O卡,只需要一个非常小的内核模块。驱动程序的主要部分将在用户空间中运行。这简化了开发并降低了内核模块中...
2020-10-30 23:49:37
3253
原创 分组加密, 算法模式(ECB CBC CFB OFB)
块加密块加密,英文Block Cyper,又称分组加密,是一种常见的对称加密,具有代表性的块加密有DES,AES,3DES等。块加密的工作模式允许使用同一个分组密码密钥对多于一块的数据进行加密,并保证其安全性。ECB模式又称电子密码本模式:Electronic code book,是最简单的块密码加密模式,加密前根据加密块大小(如AES为128位)分成若干块,之后将每块使用相同的密钥单独加密,解密同理。缺点在于同样的明文块会被加密成相同的密文块;因此,它不能很好的隐藏数据模式。在某些
2020-08-24 14:23:22
2822
原创 Linux内核模块编程,多源码Makefile编写
https://mp.youkuaiyun.com/console/editor/html/107838044在学习内核模块编程的时候遇到了一些由于Makefile书写不正确导致的问题。一个.c源文件的Makefile按照网上的大部分资料介绍那样是没有问题的,多个源文件的内核模块编程时,就出现问题了。把过程和解决方法贴出来,供大家参考,一起学习。单文件.c的编程: 单文件.c编写内核模块是常用的内核模块编写方法,对一些比较简单的功能比较使用。 test.c//test.c#in...
2020-08-06 14:34:39
1667
1
原创 SM2 签名预处理操作
转载:https://www.xuebuyuan.com/1473900.html一般情况下,计算数字签名时应执行以下操作:1. 计算原始数据的 Hash 值;2. 将 Hash 值作为输入,计算签名函数的输出。并不是对原始数据直接签名,而是对 Hash 值签名。 验证签名时应执行以下操作:1. 计算原始数据的 Hash 值;2. 将 Hash 值和签名值作为输入,计算验签函数的输出,根据输出判断签名为“有效”或“无效”。这只是一个简单描述,实际上 PKCS#1 中规定的签名...
2020-06-13 16:31:36
6963
5
原创 x86计算CPU频率示例
#include<stdio.h>#include<stdlib.h>#include<assert.h>#include<stdint.h>...
2020-01-03 15:20:35
527
原创 Linux字符驱动之主设备号与次设备号
一个字符设备或者块设备都有一个主设备号和次设备号。主设备号和次设备号统称为设备号。主设备号用来表示一个特定的驱动程序。次设备号用来表示使用该驱动程序的各设备。例如一个嵌入式系统,有两个LED指示灯,LED灯需要独立的打开或者关闭。那么,可以写一个LED灯的字符设备驱动程序,可以将其主设备号注册成5号设备,次设备号分别为1和2。这里,次设备号就分别表示两个LED灯。
2019-11-23 14:11:46
580
5
原创 Centos7搭建KVM虚拟化环境
SR-IOV 技术是一种基于硬件的虚拟化解决方案,可提高性能和可伸缩性。SR-IOV 标准允许在虚拟机之间高效共享 PCIe(Peripheral Component Interconnect Express,快速外设组件互连)设备,并且它是在硬件中实现的,可以获得能够与本机性能媲美的 I/O 性能。SR-IOV 规范定义了新的标准,根据该标准,创建的新设备可允许将虚拟机直接连接到 I/O 设备。
2019-11-21 14:48:06
4822
原创 示例:Linux设备属性节点驱动,以及cat, echo操作
在写Linux字符驱动的时候,经常涉及到一些驱动需要在/sys目录或子目录下创建,一个属性节点,以便与,不用查看驱动的版本信息,时间等等一些属性信息,以判断驱动程序加载的是否有误。
2019-06-19 09:53:50
8311
5
原创 示例:Linux应用程序遍历当前系统的PCI设备
使用应用程序遍历设备上的所有PCI设备,通过遍历这些设备,可以获取到每个设备对应的bus号,dev号,func号,以及每个PCI设备的额vendorID和deviceID 示例程序中的iopl, outl, inl是i386架构的Linux或Unix系统调用,因此示例适用平台有限。 程序的功能类似于lspci命令#include<stdio.h>...
2019-06-19 09:32:52
837
原创 Java入门总览
Java入门总览1. JDK的安装 可以去官网下载,有各种平台和各种版本的软件。 目前常用的,网上介绍多的大都是jdk1.8.0_211此版本 Linux系统和Windows系统安装起来都很方便2. 环境变量的配置 配置环境变量可以参考网上的教程,很多,只不过在配置的时候,涉及到PATH(Path)的路径,建议都使用绝对路径。3. 查看JDK的安装情况 在终端...
2019-05-29 10:52:44
161
原创 windows 命令行参数解析编程,getopt的windows版本
windows 命令行参数解析编程Linux系统下处理命令行参数的编程比较简单,使用getopt即可快速的处理。windowds系统下,没有getopt函数处理命令行参数,但是可以对getopt的源码进行简单的修改即可在windows程序进行命令行参数处理。示例如下:// getopt.h/* Declarations for getopt. Copyright (C)...
2019-05-22 14:17:27
1463
原创 Linux内核proc目录下属性文件的驱动示例
在Linux内核中常用的驱动时字符设备驱动,常常在dev目录下创建我们驱动的设备节点,但是在proc目录和sys目录下也有与我们设备去哦那个相关的属性值,以proc文件的文件属性的驱动为例。对于proc目录下的驱动编写与字符驱动的编写流程一致,并且文件的结构体也是一样的,只是创捷proc的节点的方式不太一样,他有一个目录的创建,在字符驱动中可能也是有目录的创建,只是笔者没见过而已驱动示...
2019-04-04 09:43:22
1162
1
转载 亲测转载:ubuntu环境搭建go语言开发环境
一、下载与安装go语言1. 使用apt-get install golang安装go语言,如下图所示:2. 安装完成后,可以使用命令查看go语言的版本,如下图所示,笔者安装的go语言的版本为go1.2.1二、配置go语言环境变量1. 创建一个如下图所示的目录树:2. 在.bashrc里面添加环境变量,如下图所示:(1)打开.bashrc文件(2)在该文件后,添加几行环境...
2019-01-17 11:34:43
350
原创 Windows下搭建go语言开发环境及IDE安装,MinGW编译器的安装
详细的配置和学习教程可参考go语言中文网1.下载 并且 安装 Go安装包go1.2.windows-386.msi : http://download.youkuaiyun.com/detail/shuideyidi/7718563 go1.2.1.windows-amd64.msi: http://download.youkuaiyun.com/detail/shuideyidi/7719735go...
2019-01-17 11:24:02
2078
翻译 如何使用MMC / SDC以及SPi
如何使用MMC / SDC该安全数字存储卡(以下SDC)是一个用于移动设备的事实上的标准存储卡。SDC被开发为与多媒体卡(下面的MMC)的上部兼容。在大多数情况下,SDC完井设备也可以使用MMC。还有缩小尺寸的版本,例如RS-MMC,miniSD和microSD,具有相同的功能。MMC / SDC中有一个微控制器。闪存控制(块大小转换,纠错和磨损级别 - 称为FTL)在存储卡内部完成。数据以5...
2018-11-02 11:19:52
3696
原创 MTK平台使用代码对GPIO管脚进行设置
平台:MTK6795 Android5.0目的:在MTK6795平台使用代码对MT6795的GPIO166 GPIO167 GPIO168 GPIO169管脚设置成普通的GPIO功能,输出在Android的内核源码目录kernel-3.10/include/mach/mt_gpio.h中看到/**********************************************...
2018-10-24 16:44:51
4002
原创 MTK平台SPI总线的参数意义,重点讲解的是speed和mode两个参数的讲解
解释MTK平台SPI总线参数的含义 文件kernel-3.10/drivers/misc/mediatek/spi/mt6795/spi.c是MTK的spi控制器的驱动,具体参数的设定是在chip_config文件中。chip_config就是从设备spi_device。对应的时间就是:设定的数值×9.6ns。如low_time = 10*9.6ns =96ns.,修改:mt_spi_s...
2018-10-24 16:13:22
2403
1
原创 Ubuntu下使用flash_tool烧写MTK的镜像
硬件环境:MTK的开发板或者基于MTK开发板开发的嵌入式产品软件环境:ubuntu 14.04, MTK的镜像,Android的adb驱动和fastboot工具的使用【https://blog.youkuaiyun.com/hpu11/article/details/80308278】在使用时刚开始使用便直接报错Total wait time = -1531116139.000000USB ...
2018-10-10 09:26:39
1617
转载 GRUB2开发一个引导U盘的子系统
https://blog.youkuaiyun.com/jiangwei0512/article/details/74805049
2018-09-07 17:54:07
669
转载 mmap驱动实现以及应用测试程序
程序的框架:内核虚拟内存内存 ----> 物理内存地址 ----> 应用层虚拟内存地址参考网址:http://www.cnblogs.com/lknlfy/archive/2012/04/27/2473804.html
2018-08-23 08:59:02
669
转载 PCIe设备驱动demo
PCIE(PCI Express)是INTEL提出的新一代的总线接口,目前普及的PCIE 3.0的传输速率为8GT/s,下一代PCIE 4.0将翻番为16GT/S,因为传输速率快广泛应用于数据中心、云计算、人工智能、机器学习、视觉计算、显卡、存储和网络等领域。PCIE插槽是可以向下兼容的,比如PCIE 1X接口可以插4X、8X、16X的插槽上。实现基本的PCIE驱动程序,实现以下模块:初始...
2018-08-20 19:22:17
16047
2
原创 Ubuntu 14.04 64位系统兼容32位库
ubuntu 14.04 64位系统兼容32位库:打开一个终端第一步:查看自己的系统架构dpkg --print-architecture正常会显示amd64第二步:确认你打开了多架构支持功能(多架构支持可以让你在有64位库的情况下使用32位库。)输入: dpkg --print-foreign-architectures输出是: i386如果你还没...
2018-08-03 09:27:02
5138
转载 十大经典排序算法(动图演示)
转载:https://www.cnblogs.com/onepixel/articles/7674659.html0、算法概述0.1 算法分类十种常见排序算法可以分为两大类:非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比较类排序。线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间...
2018-07-11 13:50:15
300
转载 线程安全单例模式(C++)
饿汉模式饿汉模式:即无论是否调用该类的实例,在程序开始时就会产生一个该类的实例,并在以后仅返回此实例。由静态初始化实例保证其线程安全性,why?因为静态实例初始化在程序开始时进入主函数之前就由主线程以单线程方式完成了初始化,不必担心多线程问题。故在性能需求较高时,应使用这种模式,避免频繁的锁争夺。#include<iostream>using namespace std;clas...
2018-07-04 15:33:36
249
原创 libxml2生成,解析,修改xml文件,以及使用实例
利用libxml2生成,解析,修改xml文件。1. 生成xml文件// createXmlFile.cpp#include <stdio.h>#include <libxml/parser.h>#include <libxml/tree.h>#include <iostream>using namespace std;int mai...
2018-06-24 18:42:17
6688
原创 kernel_thread() kthread_create()/kthread_run()创建内核线程的区别与使用
1. kernel_thread() 函数创建内核线程pid_t kernel_thread(int (*fn)(void *), void *arg, unsigned long flags){ return do_fork(flags|CLONE_VM|CLONE_UNTRACED, (unsigned long)fn, (unsigned l...
2018-06-21 10:47:18
7046
原创 Linux 内核启动信息的打印 --- dev_driver_string函数/dev_name函数
内核启动时,常会打印出一些信息:开头是 "驱动模块的名字: + 具体的信息"如:在运行的linux系统设备上,插入鼠标,就会打印出鼠标的相关信息;[ 402.134068] input: USB Optical Mouse as /devices/soc0/soc/2100000.aips-bus/2184000.usb/ci_hdrc.0/usb1/1-1/1-1:1.0/0003:0461:...
2018-06-14 10:51:20
4800
原创 c++中虚函数,虚函数表,虚函数表指针
在C++中随处可见封装,继承,多态。多态的实现,是基于虚函数的继承,虚函数则是基于虚函数表和虚函数表指针。用一个示例介绍虚函数表指针访问虚函数,更易于方便理解虚函数,程序中也有注释// virtual-Table.cpp#include <iostream>using namespace std;class A {public: A() { cout <<...
2018-06-07 15:19:33
1591
3
原创 嵌入式Linux优化
嵌入式linux优化,可以从三部分进行考虑: bootloader,linux,根文件系统1. bootloader uboot只是做系统启动过程中,所依赖的硬件初始化,为kernel的加载运行做准备,所以,bootloader在整个系统启动过程中只消耗1妙左右,相比较整个启动过程的10+, 20+妙可以忽略,甚至,对bootloader进行优化,毫无效果可言,简直是浪费我们宝贵的时间。2....
2018-05-31 14:31:49
1830
原创 omap3530支持gpu模块
在操作过程中如果遇到什么问题,可以直接1157207468@qq.com 或者 留言 进行沟通,如果有什么错误,也请大家进行指出。环境: ubuntu 10.04 linux-2.6.32 omap3530芯片一共含有三个核: arm核, dsp核, gpu核。arm核是最常用的,这不是我们今天说的主题,我们现在主要是说一下gpu核,将gpu的驱动添加到arm平台上,就可在omap3530上跑o...
2018-05-29 17:11:26
719
原创 Shell编程,shift参数操作
shift参数操作,是将参数从左到右逐个移动。比如:现在有$1, $2, $3, $4, $5, ....几个参数 shift操作后,$1被处理过之后,$2变为$1, $3变为$2, $4变为$3, $5变为$4, ... 就这样依次变动 shift操作后,参数还是按照上面的一个规律进行变化。Shell示例:[root@localhost ~]# cat...
2018-05-29 14:19:36
2419
原创 Shell分支语句case···esac语法
Shell编程:case ... esac多分支选择编程也多常用于菜单选择语法:case 值 in模式1) command1 command2 command3 ;;模式2) command1 command2 command3 ;;*) command1 command2 command3 ;;...
2018-05-29 13:54:55
3535
转载 Cmake使用示例----编写CMakeLists.txt文件编译C/C++程序
转自:https://www.cnblogs.com/cv-pr/p/6206921.html1.CMake编译原理CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多。CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt文件转化为make所需要的makefile文件,最后用make命令编译源码生成可执行程序或共享库(so(sh...
2018-05-15 09:05:55
5746
newlib-2.0.0.tar.gz
2020-07-18
SM3摘要密码算法.zip
2020-06-13
at.tripwire.mqtt.client.zip 亲测可用,低分共享
2020-06-02
getopt windows_src.zip
2019-05-22
JDK SE 1.6
2018-09-12
ubuntu环境qt配置交叉编译器
2018-07-13
C++两种线程安全的单例模式的实现
2018-07-05
gtk+-2.0之界面布局控件示例--alignment/fixed/table/box
2018-06-29
libxml2生成,解析,修改xml文件
2018-06-27
dvsdk_4_01_00_09_omap3530_Release_Notes.pdf
2018-05-30
实例分析C++的虚表的查看,使用,调用虚函数
2018-05-26
opencv3人脸识别正/负样本
2018-04-28
QWebiew实现简易浏览器项目实例
2018-03-22
Qt5加载百度离线地图实例
2018-03-17
Libevdev 1.2.2
2018-03-02
Xorg Evdev Driver-2.9.0
2018-03-02
Xorg Fbdev Driver-0.4.4
2018-03-02
TA创建的收藏夹 TA关注的收藏夹
TA关注的人