- 博客(17)
- 资源 (6)
- 收藏
- 关注
原创 [安全扩展组件]TZASC
TZASC地址空间控制器 TZASC 是一种符合高级微控制器总线架构*(AMBA)*的片上系统(SoC) 外设。它是一种高性能、面积优化的地址空间控制器,具有符合 AMBA高级可扩展接口(AXI) 协议和 AMBA高级外设总线(APB) 协议的片上 AMBA 总线接口。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pIPHsU7m-1637570897609)(C:\Users\Jiaqi.Zhang\Desktop\文档编写\ARM文档\安全\硬件相关\安全扩展组件\
2021-11-22 17:35:04 4858
原创 [ATF]导读
注:该文提炼摘抄于ARM官方手册ATF(ARM-Trusted-Firmware) 可信固件(Trusted-Firmware)为Armv7-A、Armv8-A 和 Armv8-M 架构提供安全世界软件的参考实现。可信固件提供符合相关 Arm 规范的参考可信代码库,这构成了应用处理器上的可信执行环境 (TEE) 或微控制器上的安全处理环境 (SPE) 的基础。 目前截至2021年ARM官方的可信固件一共分为两种 (1)TF-A支持 Armv7-A 和、Armv8-A 和 Armv9-A系统,包
2021-11-17 16:04:01 2437
原创 [ARM]内联汇编
内联汇编语法语法(1)asm 这块直接写做__asm__ 表示这是一段内联汇编。(2)asm-qualifiers 这里取值有三种 volatile , inline , goto: volatile的意思是易变的、不稳定的,用来告诉编译器不要随便优化这段代码,否则可能出问题。比如汇编指令“mov r0, r0”,它把r0的值复制到r0,并没有实际做什么事情,你的本意可能是用这条指令来延时。编译器看到这指令后,可能就把它去掉了。加上volatile的话,编译器就不会擅自优化。
2021-11-17 10:44:31 5351
原创 [git]相关问题解析
问题:采用8月的版本写一个模块代码,写完代码后10月了,当前项目版本比较落后,想更新到最新版本。(1)首先需要报错自己修改的内容git stash 将8月版本的修改代码保存到本地(2)打最新代码的补丁git fetch 或者 git pull(3)更新过后,查看之前暂存的修改,并返回回来git stash listgit stash apply stash{id}...
2021-11-10 14:52:25 449
原创 ATF中smc指令详解
1 ATF的smc指令调用流程在REE侧调用smc异常之后,会根据中断向量表触发cpu的同步异常sync_exception_aarch64/32,然后跳转执行到handle_sync_exception->smc_handler64/32中,最后跳转到_RT_SVC_DESCS_START_+RT_SVC_DESC_HANDLE这个工具类中执行具体的操作,最后跳转到el3_exit返回REE侧。2.1 REE侧如何调用smc指令在REE侧调用smc之前,需要对通用寄存器进行赋值传参x0-x8
2021-08-05 15:47:39 5340
原创 ARM汇编指令
1.MOV 数据传送指令MOV R1,R0 ;将寄存器R0的值传送到寄存器R1MOV PC,R14 ;将寄存器R14的值传送到PC,常用于子程序返回MOV R1,R0,LSL#3 ;将寄存器R0的值左移3位后传送到R1(即乘8)MOVS PC, R14 ;将寄存器R14的值传送到PC中,返回到调用代码并恢复标志位2.ADD 加法指令ADD R0,R1,R2 ; R0 = R1 + R2ADD R0,R1,#256 ; R0 = R1 +
2021-08-04 16:16:03 830
转载 Windows Audio无法启动 错误 0x80070005:拒绝访问 ~~~解决分享~~~
1、打开电脑搜索框/或者点击运行,输入cmd;2、点击命令提示符;3、在命令提示符中输入runas /user:administrator cmd;4、输入密码即可进入管理员的cmd权限;5.在PowerShell (管理员)里输入:net localgroup Administrators /add networkservice回车再输入:net localgroup Administrators /add localservice回车右击我的电脑-管理-服务和运用程序-服
2021-06-23 10:56:51 15431 1
原创 删除-驱动人生节能省电方案
可以在DOS下使用POWERCFG /D 后面再加鲁大师电源方案的GUID进行删除:1,WINDOWS键+R:输入CMD2,在DOS中输入:POWERCFG /LIST显示出所有的电源方案3,右键,选择标记开始把鲁大师的电源方案GUID进行标记,完成的回车4,输入:POWERCFG /D 后面右键粘贴,再回车就OK了最后你可以再用POWERCFG /LIST查看下是不是已经删除了,或者去电源方案里面看下有没有(记得如果刚刚是打开过的,要重新打开才看得到)——注:该方法来自某论坛大佬——...
2021-06-22 16:51:29 1103
原创 ZeroTier central异地虚拟自组网(客户端连接)
下载并安装ZeroTier centralhttps://www.zerotier.com/download/(2)下载并安装ZeroTier central安装完之后启动桌面右下角会出现图标右键点击图标选择join network下面三个都勾选然后输入网络ID点击join之后点击show networks会显示当前连接网络,然后等待服务端授权,之后按住win+R输入服务器的地址出现打印机界面和共享文件夹界面,在桌面创建共享文件夹快捷方式,然后连接打印机(打印机图标右键
2020-11-12 12:50:09 1281
原创 如何下载专利(国内)
下载专利过程主要分两步(1)查询自己感兴趣的专利,并获取专利号(2)使用专门网站将专利号输入到里面进行下载获取专利号http://www.soopat.com/ 进入网站输入感兴趣的内容![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109102226452.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6L## 标题y9ibG9nLm
2020-11-09 10:25:36 5488 1
原创 C++基础(番外篇)知识点:深拷贝和浅拷贝
浅拷贝同一类型的对象之间可以赋值,使得两个对象的成员变量的值相同,两个对象仍然是独立的两个对象,这种情况被称为浅拷贝。一般情况下,浅拷贝没有任何副作用,但是当类中有指针,并且指针指向动态分配的内存空间时,析构函数做了动态内存释放的处理,会导致内存问题。(主要意思就是浅拷贝值复制了成员变量的值,而成员变量为指针时,其指向的堆空间没有复制,所以在析构函数时会产生问题)深拷贝当类中有指针,并且此指针有动态分配空间,析构函数做了释放处理,往往需要自定义拷贝构造函数,自行给指针动态分配空间,该过程叫深拷贝。
2020-10-24 19:09:30 101
原创 C++基础 (6章)知识点:内联函数
概念c++从c中继承了一个重要特征那就是效率,在c语言中我们经常把一些短并且执行频繁的计算写成宏,而不是函数,这样做的理由是为了执行效率,宏可以避免函数调用的开销,这些都由预处理来完成。但是在c++出现之后,使用预处理宏会出现两个问题:(1)第一个在c中也会出现,宏看起来像一个函数调用,但是会有隐藏一些难以发现的错误。‘(2)第二个问题是c++特有的,预处理不允许访问类的成员,也就是说预处理宏不能用作类的成员函数。为了保持预处理宏的效率又增加安全性,而且还能像一般成员函数那样可以在类里访问自如,c+
2020-10-23 19:45:45 176
原创 C++基础 (5章)知识点:引用
引用引用是C++对C的扩充,通过变量名来申请并命名内存空间。重点概念:(1)引用的基本使用方法(2)引用使用时需要注意的三件事(3)引用数组(4)三种传递方法(5)引用作为返回值(6)引用指针(7)引用常量5.1引用的基本使用方法Type &ref = val;注意:(1)&在此式中不是求址符,而是起到标识作用(2)必须在声明引用变量时进行初始化(3)引用初始化之后不能改变(4)不能有NULL引用,必须确保引用是和一块合法的存储单元关联(5)可以建立对数组
2020-10-21 10:30:41 143
原创 C++基础 (4章)知识点:从C到C++语法上的区别
4.1全局变量的检测增强c语言中通过int a = 10;//定义int a; //声明c++中int a = 10;//int a; //这里会发生错误,提示 int a 重定义C++中所有的变量和函数都必须有类型c语言中的形参可以不用声明数据类型int func1(i){ printf("%d\n", i); return 0;}int func2(i){ printf("%s\n", i); return 0;}c++中不可4.3 更严格的类型转换C+
2020-10-20 13:08:15 206
原创 C++基础 (番外篇)关键字考点
4.1 全局变量的检测增强c代码:int a = 10;int a; //当做声明,不报错c++代码:int a = 10;//int a; //这里会发生错误,提示 int a 重定义4.2 C++中所有的变量和函数都必须有类型c语言中函数的形参可以不用先定义数据类型,但c++中必须定义c代码:int func1(i){ printf("%d\n", i); return 0;}int func2(i){ printf("%s\n", i); return 0;
2020-10-20 12:43:15 117
原创 C++基础 (1-3章)知识点:面向对象和面向过程,对象三大特性,命名空间
C++基础 (1-3章)知识点:命名空间面向对象和面向过程面向过程:以过程为中心的编程思想,通过分析出解决问题所需要的步骤,然后用函数把步骤一步一步实现。面向过程核心:功能分解,自顶向下,逐层细化(程序=数据结构+算法)。面向过程缺点:语言重用性低,维护困难。面向对象:以对象为中心的编程思想,将每个模块对象化只提供特定的功能,每个对象彼此独立。面向对象核心:对象=算法+数据结构,程序=对象+对象…面向对象缺点:程序复杂,运行效率相对低。对象的三大特性封装:把客官事物封装成抽象的类,
2020-10-20 09:22:49 147
原创 文件解析出数据帧
项目场景: 查找文件中 <数据头>+<数据>+<数据尾>,输出<数据>+<自定义数据尾> 问题描述:读取一个文件,从文件中查找想要的数据,根据数据头如"Cost:"和数据尾","找到中间的数据,输出到另一个文件中.``` 解决方案:#include }...
2020-09-19 13:03:31 1754
ZeroTier One.zip
2020-11-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人