Android和kernel杂散点集合
Android:
1.编译
普通的编译:
1). source build/envsetup.sh
2).lunch
3).make -jx
make kernel:只重新编译kernel部分镜像,但是不会打包更新boot.img
make bootimage-nodeps:不会编译kernel以及ramdisk,只会将out目录中现有的kernel和ramdisk.img重新打包一次生成boot.img
make ramdisk:只重新编译ramdisk镜像,生成ramdisk.img,但是不会打包更新boot.img
make ramdisk-nodeps:不会编译ramdisk,只会将out目录中现有的文件重新打包一次。out/target/product/xxx/root,比如更改了init..rc之类的文件,只需要修改out/…/root/中对应的文件,然后重新用此命令打包一次,就会生成一个包含更改过init..rc的ramdisk.img
make snod:打包system
2.查看硬件信息
查看主次设备号: cat /proc/devices
查看CPU信息:cat /proc/cpuinfo
查看内存信息:cat /proc/meminfo
查看各分区使用情况:df
查看体系结构:busybox uname -a
查看中断信息:cat /proc/interrupts
查看boot传递给kernel的参数: cat /proc/cmdline
查看分区挂在情况: mount
2.重新挂在某个分区
mount -o remount /通过mount查看到的位置 /system
3.查看和修改环境变量
在android应用程序中有如下方法:System.getenv("SECOND_STORAGE_TYPE");获取环境变量。
通过adb shell方式获取环境并修改。
adb shell
root@android:/ # export
MKSH
PATH
PS1
RANDOM
SECONDARY_STORAGE
SECOND_STORAGE_TYPE
SHELL
TERM
USER
............
root@android:/ # echo $SECONDARY_STORAGE
/storage/sdcard1
root@android:/ # echo $SECOND_STORAGE_TYPE
2
root@android:/ # export SECOND_STORAGE_TYPE=1
root@android:/ # echo $SECOND_STORAGE_TYPE
1
kernel:
mount -o remount,rw systemsystem
Android和kernel杂散点集合的更多相关文章
- Android习惯——给全部Activity添加集合管理
title: 2017-3-23 Android习惯--给全部Activity添加集合管理 public void ActivityCollector{ public static List<A ...
- Android android-common 常用功能和工具集合
本文内容 环境 android-common 项目结构 演示 android-common 参考资料 android-common 主要包括如下内容: 缓存,包括图片缓存.预取缓存.网络缓存. 公共 ...
- Android开发免费类库和工具集合
用于Android开发的免费类库和工具集合,按目录分类. Action Bars ActionBarSherlock Extended ActionBar FadingActionBar GlassA ...
- Android linux kernel privilege escalation vulnerability and exploit (CVE-2014-4322)
In this blog post we'll go over a Linux kernel privilege escalation vulnerability I discovered which ...
- Android List,Set,Map集合安全 集合区别 并发集合类性能分析
对于Android开发者来说深入了解Java的集合类很有必要主要是从Collection和Map接口衍生出来的,目前主要提供了List.Set和 Map这三大类的集合 Collection接口主要有两 ...
- 转载 Android 多线程处理之多线程用法大集合
handler.post(r)其实这样并不会新起线程,只是执行的runnable里的run()方法,却没有执行start()方法,所以runnable走的还是UI线程. 1.如果像这样,是可以操作ui ...
- android开发-小技巧篇(集合)
1.对于过多的控件,功能类似,数量又多的,可以用include方法.在实现应用中,可以把控件放入List集合中. private void initView() { // TODO Auto-gene ...
- Android 多线程处理之多线程用法大集合
handler.post(r)其实这样并不会新起线程,只是执行的runnable里的run()方法,却没有执行start()方法,所以runnable走的还是UI线程. 1.如果像这样,是可以操作ui ...
- 如何提高android串口kernel log等级
在 /device/qcom/common/rootdir/etc/init.qcom.rc write /proc/sys/kernel/printk "6 6 1 7" 第一 ...
随机推荐
- SQL存储过程编写,包含临时表
create proc R_ProductUse_M(@id1 int,@id2 int,@id3 int) as begin ---临时表1 select a.id1,b.id2,c.id3 int ...
- ABP架构
ABP架构 一.什么是ABP架构? ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称. ASP.NET Boilerplate 基于DDD的经典分层 ...
- linux安装anaconda过程
今天在centos7下安装了Anaconda,将安装过程记录如下 下载安装Anaconda 下载地址:https://repo.continuum.io/archive/index.html 打开页面 ...
- hdu5693 D game&&hdu 5712 D++ game
题目链接:5693 题目链接:5712 对于这个D game.注意消除之后两遍的序列是可以拼合到一起的!我们可以想到有区间DP的做法.我们设\(f[i][j]\)表示区间i,j可以被消除. 显然如果这 ...
- kali linux之msf信息收集
nmap扫描 Auxiliary 扫描模块 目前有557个扫描方式
- objectARX 添加线型下拉组合框空间 CAcUiLineTypeComboBox
不知道是有意还是无意,objectARX的所有文档中,居然没有CAcUiLineTypeComboBox, 而实际上这个是存在的.位于\inc\acuiComboBox.h 而在添加变量的向导中也没有 ...
- [Objective-C语言教程]决策结构(10)
决策结构要求程序员指定一个或多个要由程序评估或测试的条件,以及在条件被确定为真时要执行的一个或多个语句,以及可选的,如果条件要执行的其他语句 被认定是假的. 以下是大多数编程语言中的典型决策结构的一般 ...
- Jupyter Notebook远程服务器配置[转]
首先要生成密码,打开python终端. In [1]: from IPython.lib import passwd In [2]: passwd() Enter password: Verify p ...
- ResourceBundle和Locale
一.认识国际化资源文件 这个类提供软件国际化的捷径.通过此类,可以使您所编写的程序可以: 轻松地本地化或翻译成不同的语言 一次处理多个语言环境 ...
- JavaScript中setInterval的用法总结
setInterval动作的作用是在播放动画的时,每隔一定时间就调用函数,方法或对象.可以使用本动作更新来自数据库的变量或更新时间显示. setInterval动作的语法格式如下:setInterva ...