自定义博客皮肤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)
  • 收藏
  • 关注

原创 git实战总结-----在一系列提交中修改一个特定的commit

如何修改你已经commit的一个提交?比如HEAD commit3commit2commit1(需要修改这个提交)commit0(db7661ce4cb459da594a947977d0a86d14d40693)我上网查找并结合自己实际检验,方法如下:1.先git rebase到要修改的commit之前那个commitgit rebase

2016-06-13 10:30:09 7148 2

转载 git使用

参考:http://www.ruanyifeng.com/blog/2015/08/git-use-process.html# 获取主干最新代码$ git checkout master$ git pull# 新建一个开发分支myfeature$ git checkout -b myfeature$ git add --all$ git status$

2016-02-06 11:49:46 390

原创 rust基本语法注意事项-1

2. 相对于c,使用复合类型 元组 tuple 来存储不同类型的变量到一个集合中(另外一种就是C语言中熟悉的数组)。1. rust中的char类型是unicode码,跟c语言中的char类型有差异,要注意。3. for循环遍历集合。

2024-11-29 09:52:20 149

原创 android general boot loader(rust安装后的build过程)

3. repo init -u https://android.googlesource.com/kernel/manifest -b uefi-gbl-mainline --- GBL的code下载相对麻烦,需要能够访问AOSP,我通过公司的镜像下载的。的guide做android general boot loader下载以及build。1. bazel-bootstrap 安装参考。4. 编译成功后生成对应的efi以及test文件。2. 根据实际情况确认bazel安装成功。

2024-11-22 18:31:10 396

原创 ubuntu rust安装

为了深入学习Android Generic Boot Loader,我在我的办公ubuntu电脑上安装rust,通过文心一言我安装了rust并完成了简单的hello world程序。你可以使用Cargo来创建一个新的Rust项目,并在这个项目中编写和运行你的程序。rustup是一个方便的命令行工具,可以自动下载并安装Rust的最新稳定版本,并管理Rust的工具链。接下来,你可以使用你喜欢的文本编辑器(如nano, vim, gedit, VSCode等)来编写你的第一个Rust程序。

2024-11-21 18:21:27 625

原创 VIM 点滴积累

删除列1.光标定位到要操作的地方。2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。3.d 删除。插入列插入操作的话知识稍有区别。例如我们在每一行前都插入"() ":1.光标定位到要操作的地方。2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。3.SHIFT+i(I) 输入要插入的内容。4.ESC 按两次,会在每行的选定的区域出现插...

2020-03-12 16:11:36 244

原创 2020,迎接ubuntu------三(配置fastboot和adb环境以及QC Firehose的环境)

当usb线插入android手机,使用如下命令查询usb在手机的设备号等:667 lsusb678 dmesg | grep tty根据获取到的usb信息,创建android配置文件1. cd /etc/udev/rules.d/2. sudo vim 70-android.rulesSUBSYSTEM=="usb", ATTR{idVendor}=="22...

2020-01-14 14:42:55 1188

原创 2020,迎接ubuntu------二

逐渐迁移window上的工作需求到ubuntu下(两台电脑的好处,感谢公司)1. ubuntu上访问windows共享目录方法如下:https://blog.youkuaiyun.com/gjianw217/article/details/819426202. ubuntu上安装串口工具minicom网络参考:https://jingyan.baidu.com/article/6b182309...

2020-01-09 13:11:17 460

原创 2020,告别windows,迎接ubuntu

2020年给自己一个新的变化。公司开发使用的电脑告别windows,迎接Ubuntu。我一直使用windows远程桌面客户端登陆到ubuntu工作站做手机设计开发,到需要变化的时候了。总结一下第一天安装ubuntu遇到的问题:1. 安装Ubuntu 18.04.3 LTS系统碰到安装启动是卡在kernel检查文件系统上(squashfs error),上网找了一些解决方案,没有什么好办...

2020-01-08 12:29:23 1099

转载 VIM的列编辑

VIM的列编辑操作删除列1.光标定位到要操作的地方。2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。3.d 删除。 插入列插入操作的话知识稍有区别。例如我们在每一行前都插入"() ":1.光标定位到要操作的地方。2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。3.SHIFT+i(I) 输入要插入的内容。

2017-04-18 15:00:49 644

原创 Android调试usb adb进程提前

最近调试一个android手机无法开机的问题,调试的时候当手机无法开机并不断重启的时候,android的调试ADB接口还没有出来,导致无法获取到有用的调试信息。调试后,把原来的adb进程提前可以在死机的时候把ADB进程调用出来调试,修改如下:system/core/rootdir/init.usb.rc文件里修改...on boot        setprop sys.usb

2017-04-07 14:01:06 808

转载 NDK 编译和使用静态库、动态库

NDK 编译和使用静态库、动态库情况一:编译静态库情况二:编译动态库情况三:编译动态库+静态库情况四:已有第三方静态库(动态库),编译静态库(动态库) 默认所有代码和文件在$project/jni下,否则特殊说明。情况一:编译静态库文件Android.mk:LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := hel

2017-03-24 11:00:39 3522

原创 一个简单的makefile分析

makefile example:# ----------------------------------------------# commands# ----------------------------------------------C++     := g++CFLAGS  := -m64 -cLINK    := g++LFLAGS  := -m

2017-03-22 16:55:50 501

转载 shell 文件内容替换 sed用法

调用sed命令有两种形式:sed [options] 'command' file(s)sed [options] -f scriptfile file(s) 删除:d命令 $ sed '2d'   example-----删除example文件的第二行。$ sed '2,$d' example-----删除example文件的第二行到末尾所有行。

2017-03-20 16:16:36 106666 2

转载 Ubuntu下代替dos2unix命令 (转自两个文件)

转自:http://blog.163.com/xiaowei_090513/blog/static/117718359201091393735295/Ubuntu系统打开Windows下生成的文本文件,会在每行的末尾出现’^M’原因就是Windows和Linux的回车符是不同的在Windows下回车符是\r\n回车换行在Linux下回车符是\n最简单、最常用的解

2017-01-22 11:08:24 1227

原创 bat脚本深入学习---001

这几天学习一个自动批处理脚本,用到一些不常用的dos bat脚本,收获颇多。学习脚本如下:FOR /F "usebackq delims==. tokens=1-3" %%I IN (`SET Carrier[%Carrier_Index%]`) DO (  SET Carrier_Current.%%J=%%K)搜索百度,找到参考文档:http://ss6

2017-01-22 11:06:32 616

原创 32bit 和 64bit系统的变量差异

转载自http://blog.chinaunix.net/uid-15490236-id-2769366.htmlILP32和LP64 数据模式大多数unix系统的数据模式是采用LP64bit的,long和pointer是8个字节64位的,相对于32bit的4个字节。将来windows或许会采用一种数据模式LLP64,只是对于pointer采用64bit,其他的和32位

2016-10-28 11:10:12 491

转载 diff 比较两个文件夹

转摘自:http://blog.chinaunix.net/uid-14735472-id-111118.html[root@localhost ~]# diff -urNa dir1 dir2-a  Treat  all  files  as text and compare them         line-by-line, even if they do not s

2016-10-26 17:58:30 3854

转载 [转]Python使用struct处理二进制(pack和unpack用法)

转载自:http://www.cnblogs.com/gala/archive/2011/09/22/2184801.html这篇文章写的很好,所以无耻的转了。。有的时候需要用Python处理二进制数据,比如,存取文件,socket操作时.这时候,可以使用python的struct模块来完成.可以用 struct来处理c语言中的结构体.struct模块中最重要的三个函数是p

2016-09-26 13:58:16 362

转载 转摘linux shell if 参数

linux shell if 参数shell 编程中使用到得if语句内判断参数  –b 当file存在并且是块文件时返回真  -c 当file存在并且是字符文件时返回真  -d 当pathname存在并且是一个目录时返回真  -e 当pathname指定的文件或目录存在时返回真  -f 当file存在并且是正规文件时返回真  -g 当由pathname指定的文件或目

2016-09-23 15:50:53 230

原创 android selinux 积累

在开发中遇到的selinux问题处理错误如下:[   11.814595] type=1400 audit(3178201.239:7): avc: denied { read } for uid=0 pid=563 comm="applypatch" name="mmcblk0p40" dev="tmpfs" ino=12934 scontext=u:r:install_

2016-07-15 14:33:50 1305

原创 python学习进阶(一)------学习contents_xml.py

在学习contents_xml.py 脚本中,发现该脚本使用到optparse lib,我们需要了解optparse的使用。通过网络博客了解到optparse库的使用参考博客:1)http://blog.chinaunix.net/uid-15007890-id-3490627.html

2016-07-15 13:58:54 2254

原创 python学习进阶(一)

由于工作需要,用到不少python脚本,但是总没有时间好好仔细而系统的学习和研究一下。后续,我将利用work间隙,在一年内把python系统的学习一下。python系统的基础知识学习,建议学习廖雪峰大神的博客,上周我学习到http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac927076

2016-07-11 17:31:20 3322

转载 转载 公钥、私钥、证书的基本概念和使用

转载http://blog.youkuaiyun.com/sealyao/article/details/5761747本文章参考了http://www.cnblogs.com/jimshen/archive/2009/11/09/1599347.htmlhttp://blog.youkuaiyun.com/allwtg/archive/2009/12/09/4969543.aspx

2015-11-26 16:09:15 653

转载 深入理解Android之设备加密Device Encryption

转载http://blog.youkuaiyun.com/innost/article/details/44519775深入理解Android之设备加密Device EncryptionAndroid从4.4开始就支持一项功能,那就是对设备进行加密。加密自然是为了安全性考虑,由于/system目录是只读的,手机里那些存储设备分区中需要保护的就剩下/data/分区和sdcard了

2015-09-24 17:45:01 2696

转载 namespace的用法

转载于http://www.cnblogs.com/CBDoctor/archive/2011/12/05/2276563.htmlC++中采用的是单一的全局变量命名空间。在这单一的空间中,如果有两个变量或函数的名字完全相同,就会出现冲突。当然,你也可以使用不同的名字,但有时我们并不知道另一个变量也使用完全相同的名字;有时为了程序的方便,必需使用同一名字。比如你定义了一个变量s

2015-09-11 11:07:51 252

转载 std::string用法总结

学习最新的android M的vold代码,遇到一些不熟悉的常用类,找到网络文章,记录一下转载http://blog.youkuaiyun.com/lanyzh0909/article/details/6957649在平常工作中经常用到了string类,本人记忆了不好用到了的时候经常要去查询。在网上摘抄一下总结一下,为以后的查询方便:string类的构造函数:

2015-09-11 10:43:29 2166

转载 Linux VFS文件系统之创建文件

转摘于http://blog.chinaunix.net/uid-15141543-id-2775958.html----------------------------#纯属个人理解,如有问题敬请谅解!#kernel version: 2.6.26#Author: andy wang----------------------------一

2015-09-02 16:00:19 1309

原创 exfat文件系统(七)------exfat_core.c详解(二)------file entry相关

在cluster heap中的exfat file entry从64M.hex中可以看出如下图显示记录其entry的信息: exfat文件系统(七)------exfat_core.c详解(二)------file entry相关 > file_entry_hex_data.png" src="https://work.lenovo.com/kb/download/attachments/

2015-09-02 15:54:01 1690 1

原创 exfat文件系统(七)------exfat_core.c详解(一)------CLUSTER HEAP(BMAP_DENTRY_T以及相关)

根据前面章节已经大致了解了exfat文件系统流程,我个人感觉可以算入门了,但是离深入理解还远着。前面,我都是纵向学习,从本章开始横向学习exfat模块文件。本章节重点解析exfat_core.c文件()。在学习中要结合我前面dump出来的exfat文件系统的hex文件对以前没有理解清楚的函数继续深入研究。        在重新看load_alloc_bitmap函数时,结合导出来的ex

2015-08-28 16:14:57 1928 1

原创 exfat文件系统-----exfat volume layout

在学习exfat的源代码过程中,发现需要再对exfat的volume的layout再做一次详细的分析。1.在pc上完全格式化64G sd卡2.创建test/wangxf14.txt文件和wangxf目录这两个测试目录和文件。3. 在pc上我们能够使用chkdsk来分析exfat的基本数据:D:\project\p1\exfat>chkdsk f:文件系统

2015-08-26 14:27:09 2079

原创 exfat文件系统(六)------exfat_get_block详解

从上一篇的exfat文件系统(五)中,我们可以了解到exfat文件系统的读写都需要一个重要的函数exfat_get_block,而对exfat_get_block的功能的作用需要从mpage_readpage的函数来理解,从学习中,我们可以发现exfat_get_block的主要功能是检查page上所有的物理块是否连续。以下详细分析学习和研究过程。        在学习mpage_readpa

2015-08-19 10:16:20 3055

原创 文件系统中写边界支持(Write Barrier Support)

参考学习博客http://www.cnblogs.com/whyandinside/archive/2012/06/24/2560099.html中的Write Barrier Support中总结到:write barrier support是为了enforce an ordering constraint on memory operations 在linux kern

2015-08-14 10:11:53 1002

转载 Android中UID与PID的作用与区别

转载于:http://www.cnblogs.com/perseus/articles/2354173.htmlPID:为Process Identifier, PID就是各进程的身份标识,程序一运行系统就会自动分配给进程一个独一无二的PID。进程中止后PID被系统回收,可能会被继续分配给新运行的程序,但是在android系统中一般不会把已经kill掉的进程ID重新分配给新的进程,新产

2015-08-11 14:01:39 449

转载 emmc FITRIM/discard命令在android系统中提升write performance的运用

转摘于 http://blog.youkuaiyun.com/fybon/article/details/30232681SSD/emmc 存储设备discard命令的使用意义及使用方法,请参考xfs官网上的这篇文章,描述详细。 http://xfs.org/index.php/FITRIM/discardFITRIM/discard我的理解是:discard命

2015-08-11 13:37:59 3010

转载 Linux下使用popen()执行shell命令

转摘:http://www.cnblogs.com/caosiyang/archive/2012/06/25/2560976.html简单说一下popen()函数函数定义#include FILE * popen(const char *command , const char *type );int pclose(FILE *stream);函数说明  

2015-08-10 11:35:56 1073

原创 exfat文件系统(五)------文件read和write

在开始阐述exfat的fread过程时,先推荐一盘linux的read的博客(http://blog.youkuaiyun.com/guopeixin/article/details/5962489),我从这篇文章中学习到很多东西,以便我快速的掌握exfat read流程。 exfat的read过程,跟VFS的generanel的过程完全一致(从代码逻辑上看跟ext4的流程一致),在开源代码中只是对V

2015-08-03 16:46:47 2278

原创 exfat文件系统(四)-----FsMountVol

针对FsMountVol进行详细描述。在exfat_super.c的exfat_fill_super函数中,调用了exfat mount核心的FsMountVol函数来读取分区信息并初始化相关数据。FsMountVol控制流程如下控制流程图中需要用的一个重要的函数指针数据是exfat_fs_func如下:static FS_FUNC_T

2015-07-30 09:50:54 1801

原创 exfat文件系统(三)

上一章强调了exfat_fs_mount在linux mount的时候会调用到,本章节将详细描述这个函数的执行过程。       在安装exFAT(mount)的时候,存放exFAT文件系统的磁盘分区上的大部分数据结构的信息都会被拷贝到RAM(操作系统内存)中,从而使得内核避免了许多后续的操作,变得简单。由于exFAT磁盘数据结构都保存在exFAT磁盘分区的块中,所以当需要经常更新一些

2015-07-29 16:24:35 4301

原创 exfat文件系统(二)

获取到exfat-nofuse代码后,先看看代码中自带的README.md文档,check发现该开源代码是在linux系统中以命令modprobe exfat方式load the driver manually,然后使用标准的mount加载exfat文件系统。modprobe exfat的控制主要是运行代码exfat_super.c中module_init(init_exfat

2015-07-29 15:11:44 2506

空空如也

空空如也

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

TA关注的人

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