自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

文艺小少年的博客

专注于技术学习整理的博客

  • 博客(19)
  • 资源 (1)
  • 收藏
  • 关注

原创 七、Android/Linux安全机制简单了解

一、引言:Android是一个基于Linux内核的移动操作系统。Linux是一个支持多用户的系统,Android在Linux内核提供的基于UID和GID的安全机制的基础上,又实现了一套称为Permission的安全机制,本文即来分析一下这两种安全机制二、Linux的安全机制Linux是基于UID和GID的安全机制,它包含三个基本角色:用户、进程和文件,如下图所示:Linux中的每一个用...

2020-01-30 22:54:29 435

原创 Gerrit、repo的使用

一、引言Gerrit,一种免费、开放源代码的代码审查软件,使用网页界面。利用网页浏览器,同一个团队的软件程序员,可以相互审阅彼此修改后的程序代码,决定是否能够提交,退回或者继续修改。repo是Google开发的用于管理Android版本库的一个工具,repo是使用Python对git进行了一定的封装,并不是用于取代git,它简化了对多个Git版本库的管理。用repo管理的版本库都需要使用git...

2020-01-30 21:40:14 3788

原创 Android/Linux中挂载详解以及mount命令用法

一、引言Linux中的根目录以外的文件要想被访问,需要将其“关联”到根目录下的某个目录来实现,这种关联操作就是“挂载”,这个目录就是“挂载点”,解除次关联关系的过程称之为“卸载”。注意:“挂载点”的目录需要以下几个要求:(1)目录事先存在,可以用mkdir命令新建目录;(2)挂载点目录不可被其他进程使用到;(3)挂载点下原有文件将被隐藏。二、挂载命令命令格式:mount [-fnr...

2020-01-30 18:17:13 2047

原创 Android底层开发之通过sysfs对GPIO的快速配置

一、引言本文主要讲解了两部分内容,但目标相同,在Android中操作硬件的GPIO口。一是用过DTS;二是用过sysfs。

2020-01-27 23:31:04 1308 2

原创 六、Android底层开发之增加启动任务进程

一、引言本文,我们通过修改Android操作系统源码,在原生的Android项目中增加一个我们自定义的线程,并修改init.rc(具体见我之前博客:Android源码之init.rc文件详解 ),来增加启动过程中的任务。...

2020-01-27 23:21:17 292

原创 Linux内核中设备树DTS详解及操作结点

一、引言自Linux3.x版本后,arch/arm/plat-xxx和arch/arm/mach-xxx中,描述板级细节的代码(比如platform_device、i2c_board_info等)被大量取消,取而代之的是设备树,其目录位于arch/arm/boot/dts,今天来详细分析一下设备树。二、设备树的组成设备树由1个dts文件+n个dtsi文件,它们编译而成的dtb二进制可执行文件...

2020-01-27 23:11:33 11217 1

原创 Android源码之init.rc文件详解

一、引言.rc文件是 android系统一个十分重要的文件。其是资源文件,包括比如对话框、菜单、图标、字符串等资源信息。使用.rc资源文件的目的是为了对程序中用到的大量的资源进行统一的管理。 本文来了解文件的规则。二、init.rcAndroid init.rc文件由系统第一个启动的init程序解析。是启动系统服务使用的文件。三、文件规则类型主要包含了四种类型的语句:1、Acti...

2020-01-20 23:30:46 5266 2

原创 Makefile之进阶性用法及在linux内核中的分布

一、引言make让编译的过程更加简化。你也可以用它来自动化地组织任何复杂或重复的非交互性工作。你也可以用make来更新和维护目标库文件,运行测试工具,或是向文件系统或磁带安装文件。二、Makefile特性makemake从一个你创建的叫做makefile的文件里面读取信息,它里面包括了你在编译过程将要编译哪些文件,以及如何去编译它们的信息。当你写完并测试完makefile之后,就可以不用顾...

2020-01-18 00:12:04 480 2

原创 Android源码分析之boot.img的生成与结构

一、引言前面给大家介绍过,boot.img不是普通意义上的文件镜像,而是一种特殊的Android定制格式,由文件头信息boot header,压缩的内核,文件系统数据ramdisk以及second stage loader(可选)组成,它们之间非页面对齐部分用0填充。今天来好好分析一下。二、boot.img的生成与结构boot.img的生成、配置在build目录下查找boot.img,即可...

2020-01-15 15:31:39 2030

原创 五、Andriod编译分析之Android build框架介绍

一、引言Android源码的巨大(repo下来,大概2、3G)给人以Android相当复杂的错觉。本文从Android编译系统的角度,让大家了解Android。Android编译系统(build system)集中于Android源码下的build/core下,其下有n多个*.mk文件,另外还有一些shell脚本,可谓相当庞大。而main.mk是整个编译系统的主导文件。二、Android B...

2020-01-15 11:46:05 446

原创 理解bashrc和profile与用户下命令的自定义,交叉编译器环境配置

一、引言一般的 linux 或者 unix 系统下, 都可以通过编辑 bashrc 和 profile 来设置用户的工作环境, 但究竟这两个文件都有什么作用和该如何使用呢?二、shell类型首先要弄明白什么是交互式shell和非交互式shell,什么是login shell 和non-login shell。交互模式:就是shell等待你的输入,并且执行你提交的命令。这种模式被称作交互式...

2020-01-15 09:23:37 536

原创 在kernel中添加自定义驱动、无线网卡/声卡的配置

引言

2020-01-14 15:46:49 2400

原创 安卓工程模块编译-mm命令

引言

2020-01-14 11:03:49 1932

原创 四、安卓源码分析之Android.mk

一、引言

2020-01-14 10:49:41 579

原创 简单介绍Fastboot

引言Fastboot是Android快速升级的一种方法。Fastboot的协议fastboot_protocol.txt在源码目录./bootable/bootloader/legacy下可以找到。Fastboot客户端是作为Android系统编译的一部分,编译后位于./out/host/linux-x86/bin/fastboot目录下。一、什么是fastboot(1)fastboot...

2020-01-14 00:21:27 2500

原创 git使用之template模板,gitconfig配置文件的设置及使用

一、引言多人协作开发一个项目时,版本控制工具是少不了的,git是linux 内核开发时引入的一个优秀代码管理工具,利用它能很好使团队协作完成一个项目。为了规范团队的代码提交,也方便出版本时的release note,更为了出问题时方便代码回溯,所以大家统一用一个模板提交代码是必要的。二、template模板Git中设置template非常简单,只需以下几步即可:1、在根目录建立模板文件如...

2020-01-12 23:18:40 5038 2

原创 三、Android系统的分区及img文件、移植烧写过程

一、引言本章介绍Android的几个分区,已经编译后生成的.img镜像文件,对于大家移植整个Android有一定的帮助。本人也首次接触Android,有不正确的地方,欢迎指正!二、Android的主要分区介绍1、主要分区列表Modem分区bootloader分区boot分区recoverty分区system分区data分区cache分区...

2020-01-12 22:52:27 2300

原创 二、Android源码目录结构分析梳理

一、引言本章主要分析Android项目源码的目录结构,如果大家对Android框架还不熟悉,可以查看我上一篇目录 一、安卓系统架构全面分析。二、整体结构各个版本的源码目录基本是类似,编译后的源码根目录会多增加一个out文件夹,用来存储编译产生的文件。Android7.0的根目录结构说明如下表所示。Android源码根目录描述abi应用程序二进制接口art全新的...

2020-01-12 20:47:09 824

原创 一、安卓系统架构全面分析

一、引言Android系统非常庞大,横跨了多个领域,但整体架构设计清晰。底层内核空间:以Linux Kernel作为基础。上层用户空间:由Native系统库、虚拟机运行环境、Framework框架层组成。通过系统调用(Syscall)连通系统的内核空间与用户空间。对于用户空间主要采用C++和Java代码编写,通过JNI技术打通用户空间的Java层和Native层(C++/C),从而连通整个...

2020-01-12 19:32:05 6721 3

MySQL_Tools.rar

MySQL_Tools.rar

2022-01-07

空空如也

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

TA关注的人

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