- 博客(38)
- 收藏
- 关注
转载 ARM 协处理器指令
参考链接:ARM指令协处理器处理指令ARM支持16个协处理器,在程序执行过程中,每个协处理器忽略属于ARM处理器和其他协处理器指令,当一个协处理器硬件不能执行属于她的协处理器指令时,就会产生一个未定义的异常中断,在异常中断处理程序中,可以通过软件模拟该硬件的操作,比如,如果系统不包含向量浮点运算器,则可以选择浮点运算软件模拟包来支持向量浮点运算ARM协处理器指令包括如下三类:1用于ARM处...
2021-06-10 10:54:14
489
转载 Linux系统将设备驱动分为三种类型
参考链接:Linux系统将设备驱动分为三种类型1)字符设备字符设备是能够像字节流(比如文件)一样访问的设备,由字符设备驱动从程序来实现这种特性,通过/dev下的字符设备文件来访问。字符设备驱动程序通常至少需要实现open、close、read和write等系统调用所对应的、对该硬件进行操作的功能函数。应用程序调用system call,将会导致操作系统执行上层功能组件的代码,这些代码会处理...
2021-06-10 10:52:40
3736
翻译 DcDiag
关于dcdiag,可以在microsoft的文献资料中找到相关描述, 链接如下:DcdiagDcdiag适用于:Windows Server 2003,Windows Server 2008,Windows Server 2003 R2,Windows Server 2012,带有SP1,Windows 8的Windows Server 2003分析林或企业中域控制器的状态,并报告所有问题以帮助进行故障排除。作为最终用户报告程序,dcdiag是一个命令行工具,它封装了有关如何识别系统中异常行为的
2021-06-10 10:50:10
839
原创 dbus(二)-- 消息和消息总线
消息和消息总线应用程序A和消息总线连接,这个连接获取了一个众所周知的公共名(记作连接A)。应用程序A中有对象A1提供了接口I1,接口I1有方法M1。 应用程序B和消息总线连接,要求调用连接A上对象A1的接口I1的方法M1。在上一讲的加法例子中,上面这段话可以实例化为:应用程序example-service和会话总线连接。这个连接获取了一个众所周知的公共名“org.fmddlmyy.Test”。 应用程序example-servic中有对象“/TestObj”提供了接口“org.fmddlmyy.Test
2021-06-10 10:47:20
1750
原创 dbus(一)
dbusplus参考链接:dbus介绍dbusdbus通信与接口介绍1、dbus是什么东西?网上有一篇叫“D-Bus Tutorial”的文章,流传较广。不少介绍dbus的资料,都引用了其中的段落。其实相对于这篇文章,我建议大家直接读“D-Bus Specification”,篇幅不算长,文字也不算枯燥。D-Bus是针对桌面环境优化的IPC(interprocess communication )机制,用于进程间的通信或进程与内核的通信。最基本的D-Bus协议是一对一的通信协议。但在很多情况下
2021-06-10 10:43:06
9203
原创 busctl
busctlbusctl 中文手册busctl — 内省与监视 D-Bus 总线busctl [OPTIONS…] [COMMAND] [NAME…]命令能够识别的命令如下:list显示总线上的所有peer(依据服务名称), 这是默认命令。 默认同时显示"唯一名"(UniqueName)与"易读名"(well-known name), 但是可以使用 --unique 与 --acquired 选项进行修改。status [SERVICE]如果 SERVICE 是一个总线服务的"唯一
2021-06-10 10:39:17
6530
4
原创 add a redfish schema
add a redfish schema在redfish中添加自己的schema xml文件,需要以下几步:在py脚本中添加在index中添加添加xml文件修改hpp中的data.type使用工具验证schema1. 在py脚本中添加code在python脚本中添加以下代码。在工具去验证schema的时候可以把文件从bmc下载到pc。# build\workspace\sources\bmcweb\scripts\update_schemas.pymetadata_index.wri
2021-06-10 10:27:53
916
原创 OBMC 添加一个新的recipe
OBMC 添加一个新的recipeobmc用的是yocto进行编译。代码结构如下:[penghu4x@bmcdev-S2600WF0dsg-openbmc-openbmc$ lsbitbake meta-amd meta-google meta-lenovo meta-qualcomm meta-yadro setupbuild meta-ampere meta-hpe
2021-06-10 10:16:33
1374
原创 devtool
devtooldevtool常用命令: add、 modify、reset、build、build-image、status[penghu4x@bmcdev-S2600WF0license-manager$ devtool -hNOTE: Starting bitbake server...WARNING: Duplicate inclusion for /media/disk3/penghu4x/work/dsg-openbmc-openbmc/meta/conf/distro/include/s
2021-06-10 10:13:12
1530
原创 bitbake
bitbake参考连接:Yocto Project Reference Manual简单整理如下:和bitbake相关的命令如下:bitbake bitbake-hashclient bitbake-prserv bitbake-serverbitbake-diffsigs bitbake-hashserv bitbake-prserv-tool bitbake-whatchangedbitbake-dumpsig bitb
2021-06-10 10:04:24
486
2
转载 tar: cannot change ownership to uid ***, gid ***: Operation not permitted
参考链接:cannot change ownership to uid ***, gid ***Linux tar: Cannot change ownership to […]: Permission deniedtar命令解压时,出现 cannot change ownership to uid ***, gid ***解决办法:使用tar命令的 --no-same-permissions 参数选项或者 尝试 --no-same-owner options 参数选项tar --no-same
2021-03-01 09:46:13
6541
转载 linux的init、systemV以及systemD
什么是 init 系统服务?init(为英语: initialization 的简写)是 Unix 和 类 Unix 系统中用来产生其它所有进程的程序。它以守护进程的方式存在,其进程号为 1。 Linux 系统在引导时加载 Linux 内核后,便由 Linux 内核加载init 程序,由 init 程序完成余下的引导过程,比如加载运行级别,加载服务,引导 Shell/图形化界面等等。什么是 systemv 守护进程?System V(缩写为 SysV)在大多数 Linux 发行版中使用最广泛,在 sy
2020-12-11 14:37:49
2818
原创 linux常用库整理
lib name Function OpenSSL 为了让网络通信更安全,需要认证和加密,认证是说明你是要找的人,加密是为了让截获中间报文第三者无法得到消息内容。 为此有人设计了SSL,即套接字上的安全层,简单来说就是在TCP之上做一个安全通信层,HTTP on SSL 即是HTTPs,现在几乎所有的银行网站访问都是基于HTTPS协议的。 openssl可以实现:秘钥证书管理、对称加密和非对称加密 。 OpenSSL实现了5种信息摘要算法,分别是MD2、MD5、MDC...
2020-12-10 18:40:11
1623
3
原创 windows update 离线包下载
参考链接:Windows server 2016 & Windows 10 离线下载与离线安装补丁教程 支持批量安装(其他win系统类似)上面这个链接中描述的比较详细。以下是我的记录:在设置 -> windows 更新中检查更新,可以看到补丁包的代号.之后在Microsoft update catalog 中搜索代号,然后对照系统类型以及补丁包名称,下载补丁包。之后双击运行即可安装。...
2020-12-08 17:22:40
3368
转载 ARM Coresight
听说ARM 有个CoreSightcoresight(一)coresight简介coresight(二)coresight寄存器coresight(三)APB,ATB总线coresight(四) channel interfacecoresight(五) rom tablecoresight(六) power requestorARM Cortex-M系列的调试架构CoreSight技术简介ARM推出CoreSight SoC-600,实现下一代调试与跟踪。何谓下一代?现在你可以丢掉JTAG
2020-07-27 17:18:15
6399
转载 gcc 参数 -fPIC
问题:最近在调试代码的时候遇到一个问题:调用静态库中的函数修改全局变量出现异常(data abort)。分析:把代码反汇编,发现是在操作全局变量时使用的相对地址,手动计算发现地址偏移不正确,导致访问的地址是错误的地址,然后出现异常。解决:别人指导说修改gcc的PIC参数。查看makefile,发现在编译静态库的时候有-fPIC这个参数。去掉该参数后编译,查看反汇编代码,在操作全局变量时使...
2020-06-01 16:28:44
825
转载 AMP/SMP/BMP
参考链接:Trace32 多核系统调试多核处理器基础SMP&&BMP基于多核处理器的RTOS多核扩展分析与研究多核:操作系统3种处理模式(SMP+AMP+BMP)Linux 和 SMP(对称多处理)多核处理器将多个较低主频的处理核心集成到一个芯片内部,通过提高IPC(Instruction Per Clock)来提升处理器性能。多核处理器构架在提升性能的同时又降低了功耗,显然是嵌入式设备上处理器的理想选择。在这样的背景下,支持多核处理器的RTOS(Real Time Ope
2020-05-20 15:44:15
1690
1
翻译 CoreSight DAP-Lite
https://www.cnblogs.com/azure_seu/p/5051616.htmlhttps://developer.arm.com/docs/ddi0316/latest/preface
2020-05-18 14:27:12
3181
转载 ARM寻址方式
这里写自定义目录标题ARM处理器的寻址方式1. 立即数寻址2. 寄存器寻址3. 寄存器间接寻址4. 寄存器偏移寻址5. 寄存器基址变址寻址所谓寻址方式就是处理器根据指令中给出的地址信息来寻找物理地址的方式。ARM处理器的寻址方式目前ARM处理器支持9种寻址方式,分别是立即数寻址、寄存器寻址、寄存器偏移寻址、寄存器间接寻址、基址变址寻址、多寄存器寻址、相对寻址、堆栈寻址和块拷贝寻址。1. 立即数寻址也叫立即寻址,是一种特殊的寻址方式,操作数本身包含在指令中,只要取出指令也就取到了操作数。这个操作数叫
2020-05-17 22:25:28
1925
原创 __VA_ARGS__和##__VA_ARGS__的区别
参考链接:#、##、__VA_ARGS__和##__VA_ARGS__的作用linux中的 VA_ARGS 宏说明最近看到linux的一段代码,对__VA_ARGS__和##__VA_ARGS__有点疑惑,所以在网上查了一下。linux源码如下,函数功能就不废话了:#define module_driver(__driver, __register, __unregister, ...)...
2020-04-05 21:05:59
992
原创 USB - DFU(dfuse\stm32)、fastboot、dfu-util
usb中cdc dfu hid msc的区别cdc :communication device class,CDC是通信设备级方案,是USB 转其他的接口的一类设备,比如USB转RS232,USB转Ethernet等dfu :Device Firmware Upgrade主要使用USB接口,实现固件的上传与下载hid :humman interface device,人机接口级方案,多为不需...
2020-03-27 17:17:59
4333
1
转载 驱动开发基础 -- 并发、竞争、同步、异步
版权声明:本文为CSDN博主「诸葛一帆丶」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/ivan804638781/article/details/794723861.什么是并发 并发是指具有有处理多个任务的能力,不一定要同时。2.什么是并行 并行是指具有同时处理多个任务的能力。3.并发和...
2020-03-05 16:48:58
286
原创 affinic debugger
之前一直使用affinic debugger 调试代码。该软件可以免费使用一个月。也有去找绿化的软件,翻墙之后只是有linux版本。win版本未找到。在吾爱破解网站上也没有找到有用的信息。最近几天找到一篇相关文章,墙裂推荐:Affinic Debugger纯静态分析编写注册机1 问题因此偏移30处为year变量,32处为month变量,34处为day变量。以此类推,根据琐碎的上下文代码逻...
2020-02-18 13:54:18
565
转载 ARM 汇编基础
转载连接:1 ARM汇编以及汇编语言基础介绍2 ARM汇编中的数据类型3 ARM汇编常用指令集4 ARM汇编内存访问相关指令5 ARM汇编之连续存取6 ARM汇编之条件执行与分支7 ARM汇编之栈与函数英文原文链接:https://azeria-labs.com/arm-data-types-and-registers-part-2/本文只是转载部分内容,具体请参考原文。1....
2020-01-19 16:54:54
1792
转载 ARM指令集
转载链接:ARM指令集http://www.doc88.com/p-9826603848969.html第3章 ARM寻址方式与指令系统.pptARM指令集ARM指令的分类6种类型(53种主要助记符) :1.数据处理指令(22种主要助记符)2.跳转指令(4种主要助记符)3.Load/Store指令(16种主要助记符)4.程序状态寄存器指令(2种主要助记符)5.协处理器指令(5...
2020-01-17 16:13:42
4517
1
转载 ARM中的跳转指令
ARM中的跳转指令ARM中B、BL、BX、BLX指令的区别跳转指令用于实现程序流程的跳转,在ARM程序中有两种方法可以实现程序流程的跳转:— 使用专门的跳转指令— 直接向程序计数器PC写入跳转地址值通过向程序计数器PC写入跳转地址值,可以实现在4GB的地址空间中的任意跳转,在跳转之前结合使用MOV LR,PC等类似指令,可以保存将来的返回地址值,从而实现...
2020-01-17 09:40:59
4485
原创 nor flash xip
XIP:execute in place,即芯片内执行,指应用程序可以直接在flash闪存中取指然后译码、执行,不必再把代码读到系统RAM中,flash内执行时指Nor flash不需要初始化,可以直接在flash内执行代码,但往往只执行部分代码,比如用于初始化RAM等。cadence qspi flash controller ip的手册上有XIP模式的相关描述:XIP 模式操作本小节介...
2020-01-16 14:59:42
2793
原创 SELinux avc权限--audit2allow
SELinux avc 权限, audit2allow 使用若在log出现“ avc:”则按照调试添加权限。使用avc关键词查找权限相关logadb logcat -b all | grep "avc:"进行操作复现问题,抓取最新日志,eg:05-28 11:41:34.264 7393 7393 I auditd : type=1400 audit(0.0:383): avc: ...
2019-11-15 18:51:21
5579
1
转载 进程调度,一个调度器的自白
转载自公众号:tobe的呓语进程调度,一个调度器的自白我是一个进程调度器。我的职责是调度计算机内所有的进程,为他们分配 CPU 资源。1、批处理时代想当初,操作系统创造我时,只是打算让我用 FCFS 调度算法,简单维护下进程的秩序。但我后来的发展,远远超过了他的想象。1.1 FCFS所谓 FCFS 就是「先来先服务(First Come First Serve)」,每个进程按进入内存...
2019-11-07 19:04:00
202
转载 makefile中的foreach、patsubst等函数及自动化变量
参考链接:Makefile中foreach函数使用方法Makefile中的$@, $^, $< , $?, $%, $+, $*Makefile之patsubstwildcard ,notdir ,patsubst ,obj=$(dir:%.c=%.o)例子:建立一个测试目录,在测试目录下建立一个名为sub的子目录$ mkdir test$ cd test$ mkdir s...
2019-11-01 18:30:07
991
转载 ARM汇编与ARM GNU汇编
目录一、ARM汇编开发的两种的方式二、ARM的编译开发环境三、伪操作,宏指令,伪指令四、ARM汇编伪操作五、ARM汇编伪指令六、ARM GNU编译环境七、两种开发环境的区别参考链接:ARM编译器(一)ARM汇编与ARM GNU汇编ARM编译器(二)arm编译器ARM编译器(三) 其他一、ARM汇编开发的两种的方式ARM汇编开发指用ARM提供的汇编指令,进行ARM程序的开发。ARM汇编...
2019-10-31 19:07:54
738
原创 msm8953 uart配置
参考链接:MSM8937-MSM8953 UART配置调试指南uart驱动是使用内核驱动,无需自己编写,一般只需修改设备树。一、修改设备树设备树的配置有三部分:1.msm8953.dtsi 中添加code blsp2_uart2: serial@7af0000 { compatible = "qcom,msm-lsuart-v14"; reg = <0x7af0000 0x...
2019-10-31 15:55:21
2743
原创 aes python bin文件加密
在网上找到相关的python代码,但是并不完善,需要自己修改。一、环境搭建1.python环境3.6参考链接:ubuntu升级python版本(3.5->3.6)#获取最新的python3.6,将其添加至当前apt库中,并自动导入公钥$ sudo add-apt-repository ppa:jonathonf/python-3.6$ sudo apt-get update$...
2019-10-23 09:59:17
1296
原创 ALPU的使用
遇到一个需求,使用ALPU的加密芯片,未通过验证系统禁止启动。ALPU的使用方法参考链接: ALPU使用流程ALPU 是iic接口,需要自己编写自己的驱动,然后把驱动编译进内核。开发环境:msm8953、安卓7.1、linux3.18一、代码1.1 设备树iic设备,直接在设备树中添加节点。设备地址0x3d(7bit)。 ALPU@3d { compatible = "qcom,...
2019-10-09 16:36:02
742
转载 Linux proc详解
参考链接:Linux proc详解linux proc目录Linux Filesystem Hierarchy在Linux中存在着一类特殊的伪文件系统,用于使用与文件接口统一的操作来完成各种功能,例如ptyfs、devfs、sysfs和procfs。而procfs就是其中应用最广泛的一种伪文件系统。就文件系统这一术语而言,/ proc目录并不是真正的文件系统,它是一个虚拟文件系统,有时...
2019-09-28 13:12:31
1584
转载 android 启动过程及init.rc
目录android 启动过程1.init 进程1.1 action1.2 service1.2.1 service的class2添加启动脚本总结关于安卓启动过程,参考链接如下:Android启动过程深入分析android 启动过程以下内容属于转载,侵删!第一步:启动电源以及系统启动当电源按下,引导芯片代码开始从预定义的地方(固化在ROM)开始执行。加载引导程序到RAM,然后执行。第...
2019-09-27 10:36:59
2104
原创 输入子系统之gpio-keys
目录一、gpio-keys使用1.修改设备树2.修改内核配置3.安卓系统在.kl文件中修改键值映射4.在系统中查看gpio状态5.查看io的中断信息二、驱动分析1.report event中断top level中断-bottom level监测事件上报总结开发环境:msm8953、安卓7.1、linux3.18一、gpio-keys使用gpio-keys.c 是linux内核中的驱动文件,添...
2019-09-26 16:29:58
3767
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人