- 博客(19)
- 资源 (3)
- 收藏
- 关注
原创 CallStack Android Native system/core/include/android/log.h:120:20: error: ‘__format__‘ attribute arg
Android Native 代码加入CallStack 时,编译报错In file included from system/core/include/utils/CallStack.h:20:system/core/include/android/log.h:120:20: error: '__format__' attribute argument not supported: LogOutput [-Werror,-Wignored-attributes] __attribute__((
2020-09-04 17:22:23
271
原创 fixdep.c 分析
使用gcc -MD 生成目标时,同时会生成依赖文件例如,新建一个main.c#include <stdio.h>int main(){ printf("Hello World !"); return 0;}执行gcc -MD main.c -o main.o,生成两个文件main.o,main.d,main.d就是依赖文件的输出内容如下main.o: main....
2020-04-10 14:11:25
833
原创 u-boot-2009.11.y 根目录kbuild sed-y分析
# Default sed regexp - multiline due to syntax constraintsdefine sed-y "s:[[:space:]]*\.ascii[[:space:]]*\"\(.*\)\":\1:; \ /^->/{s:->#\(.*\):/* \1 */:; \ s:^->\([^ ]*\) [\$$#]*\([-0-9]*\)...
2019-12-21 15:57:40
282
原创 ARM架构二 ARMv5T架构简介
本文是根据ARM官方文档,翻译整理的。ARM架构特点ARM架构属于精简指令集(Reduced Instruction Set Computer (RISC))。拥有精简指令集的共有特点,另外还有自己所特有的特点。精简指令集特点:大量寄存器加载/存储结构,只操作寄存器里内容(我不确定ARM是不是只能操作寄存器里的内容)简单的寻址模式,所有地址由寄存器和指令字段决定(指令字段是什么意思,...
2019-11-30 15:11:53
2022
原创 Arm架构 一 简介
目前Arm处理器架构被分为三类A结构例如,Contex-A53 Contex-A72此类内核,高性能,为运行系统设计,拥有多种工作模式,MMUR结构专为实时性系统设计,常见于网络设备M结构低能耗,高效能,常见于Iot设备,例如Contex-M0,Contex-M3,Contex-M4ARM架构不仅限于处理器内核,还有总线和中断等ARMAMBAGICARM将架构分为...
2019-11-29 10:59:50
496
原创 echo数据到/dev/kmsg,并控制等级
Linux系统中,如果我们有root权限,可以直接echo信息到/dev/kmsg,这样在dmesg中就会出现我们的echo的信息。例如:sudmesg -w &echo test > /dev/kmsg执行以上shell指令,会输出但是这样输出的默认是W等级的,能否控制输出的等级呢?我们知道dmesg里面的内容,通过printk可以输入,那我们去查看printk源...
2019-11-21 10:29:15
4893
原创 Android P Vold分析 VolumeBase::create()中的setState(State::kUnmounted)
VolumeBase在构造时,已经将状态设置为Unmounted,为什么在create里还要再次设置呢?下面是VolumeBase的构造VolumeBase::VolumeBase(Type type) : mType(type), mMountFlags(0), mMountUserId(-1), mCreated(false), mState( ...
2019-11-20 13:33:05
1020
1
原创 Android P Vold分析 一次U盘挂载时序
一次u盘挂载时序,忽略一些细节,因为用的Visual Paradigm 试用版,水印较多,尽请见谅
2019-11-14 16:02:17
669
原创 u-boot-2009.11.y Makefile分析 (一)
make XXX_defconfig我们编译u-boot,一般第一步使用make xxx_config,现在来分析下这个makefile目标的执行首先在源码目录下Makefile中,找到这个目标%config: scripts_basic outputmakefile FORCE $(Q)$(MAKE) $(build)=scripts/kconfig $@这个目标依赖与三个目标,sc...
2019-11-11 10:24:58
213
原创 驱动编译错误
In file included from ./include/linux/module.h:18:0, from drivers/char/globalmem/globalmem.c:1:./include/linux/moduleparam.h:22:1: error: expected ‘,’ or ‘;’ before ‘static’ static ...
2019-11-05 16:17:03
689
3
原创 Error: Could not find or load main class ***
今天自己手动javac编译几个java文件,互相之间有引用,并且取了包名com.xpc.observer编译结束后,java MainClassName报错,后来发现要在com/xpc/observer的上层目录运行java com.xpc.observer.MainClassName...
2019-08-13 18:36:26
530
原创 反编译andriod dtbo.img 为dts
反编译andriod dtbo.img 为dts需要的两个工具mkdtimg在源码目录out/host/linux-x86/bin/mkdtimg mkdtimg <command> commands: help, dump, create, cfg_create mkdtimg help all mkdtimg help <comm...
2019-07-09 13:50:02
10389
原创 进入保护模式后重启
这两个在弄x86的保护模式,在bochs上程序正常,但是在真实硬件上却总是重启,最后终于找到,因为用了cli关闭所有中断,这个指令应该不会影响int n的使用,事实上,如果使用过cli,再使用int n,在硬件上就会重启,这是个bug?...
2019-06-04 14:43:25
434
原创 将Linux-0.00用nasm格式重写,并且把8259的定时器0中断替换为RTC时钟中断
参考资料https://blog.csdn.net/weixin_33737774/article/details/86952055https://my.oschina.net/findurl/blog/188123代码见我的git仓库:https://github.com/xpc19951023/linux_0.12_update.git...
2019-06-02 13:24:25
230
原创 C++11 条件变量例程 condition_variable
#include <iostream>#include <thread>#include <queue>#include <condition_variable>#include <assert.h>#define MAX_CAPACITY 20std::queue<int> commodity;//商品...
2019-05-15 11:11:01
188
原创 MFC中显示Opencv的Mat 图像,视频
// TODO: 在此添加额外的初始化代码 namedWindow("view", WINDOW_AUTOSIZE);//这段程序是将opencv窗口父窗口设置为PictureContrlo,这里设置了四个窗口, HWND hWnd = (HWND)cvGetWindowHandle("view");//hWnd和hParent只能定义一次,多次使用,否则会出现异常的现象,窗口分离 H...
2018-04-25 14:04:59
679
原创 使用std::thread时的illegal instruction错误
使用std::thread时的illegal instruction错误 在使用多线程时,出现了illegal instruction错误,经仔细排查,发现错误的原因非常可笑,是因为线程函数没写返回值。错误示例:void * function(void *arg){ printf("function\n"); sleep(5); //没有返回值}int mai...
2018-03-26 13:23:45
373
原创 EGL opengl多线程绘制
opengl多线程绘制实现效果:opengl开启两个线程,一个线程用于绘制,另一个线程用于加载纹理。实现方法:opengl是单线程的,其他线程不能访问另外线程的纹理资源,但是,如果两个线程共享上下文,就可以访问彼此的纹理资源。绘制线程:创建两个上下文//只有主要代码...context = eglCreateContext(display, config, NULL, ctxAttribs);...
2018-03-26 13:13:13
3413
1
原创 openGL纹理导致内存泄露
今天调试程序时,发现内存老是泄露,经过不断的排查,确定是因为纹理的使用问题。我的程序有一个死循环,纹理创建在死循环里,导致内存泄露,而且没有使用glDeleteTextures(1,&id);//函数释放内存而后我在析构函数中释放内存,当只使用一个纹理时,程序正常,当使用两个纹理时,程序还是错误。而后我又不断找资料,终于在这篇博客里找到问题http://blog.csdn.net/hu
2018-01-22 11:18:45
5526
1
i2ctools.rar
2020-08-04
CSerial类在vs2015中开发的简单串口通信程序
2017-01-25
VESA Embedded DisplayPort (eDP) Standard
2023-06-29
TA创建的收藏夹 TA关注的收藏夹
TA关注的人