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杂散点集合的更多相关文章

  1. Android习惯——给全部Activity添加集合管理

    title: 2017-3-23 Android习惯--给全部Activity添加集合管理 public void ActivityCollector{ public static List<A ...

  2. Android android-common 常用功能和工具集合

    本文内容 环境 android-common 项目结构 演示 android-common 参考资料 android-common 主要包括如下内容: 缓存,包括图片缓存.预取缓存.网络缓存. 公共 ...

  3. Android开发免费类库和工具集合

    用于Android开发的免费类库和工具集合,按目录分类. Action Bars ActionBarSherlock Extended ActionBar FadingActionBar GlassA ...

  4. 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 ...

  5. Android List,Set,Map集合安全 集合区别 并发集合类性能分析

    对于Android开发者来说深入了解Java的集合类很有必要主要是从Collection和Map接口衍生出来的,目前主要提供了List.Set和 Map这三大类的集合 Collection接口主要有两 ...

  6. 转载 Android 多线程处理之多线程用法大集合

    handler.post(r)其实这样并不会新起线程,只是执行的runnable里的run()方法,却没有执行start()方法,所以runnable走的还是UI线程. 1.如果像这样,是可以操作ui ...

  7. android开发-小技巧篇(集合)

    1.对于过多的控件,功能类似,数量又多的,可以用include方法.在实现应用中,可以把控件放入List集合中. private void initView() { // TODO Auto-gene ...

  8. Android 多线程处理之多线程用法大集合

    handler.post(r)其实这样并不会新起线程,只是执行的runnable里的run()方法,却没有执行start()方法,所以runnable走的还是UI线程. 1.如果像这样,是可以操作ui ...

  9. 如何提高android串口kernel log等级

    在 /device/qcom/common/rootdir/etc/init.qcom.rc write /proc/sys/kernel/printk  "6 6 1 7" 第一 ...

随机推荐

  1. SQL存储过程编写,包含临时表

    create proc R_ProductUse_M(@id1 int,@id2 int,@id3 int) as begin ---临时表1 select a.id1,b.id2,c.id3 int ...

  2. ABP架构

    ABP架构 一.什么是ABP架构? ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称. ASP.NET Boilerplate 基于DDD的经典分层 ...

  3. linux安装anaconda过程

    今天在centos7下安装了Anaconda,将安装过程记录如下 下载安装Anaconda 下载地址:https://repo.continuum.io/archive/index.html 打开页面 ...

  4. hdu5693 D game&&hdu 5712 D++ game

    题目链接:5693 题目链接:5712 对于这个D game.注意消除之后两遍的序列是可以拼合到一起的!我们可以想到有区间DP的做法.我们设\(f[i][j]\)表示区间i,j可以被消除. 显然如果这 ...

  5. kali linux之msf信息收集

    nmap扫描 Auxiliary 扫描模块 目前有557个扫描方式

  6. objectARX 添加线型下拉组合框空间 CAcUiLineTypeComboBox

    不知道是有意还是无意,objectARX的所有文档中,居然没有CAcUiLineTypeComboBox, 而实际上这个是存在的.位于\inc\acuiComboBox.h 而在添加变量的向导中也没有 ...

  7. [Objective-C语言教程]决策结构(10)

    决策结构要求程序员指定一个或多个要由程序评估或测试的条件,以及在条件被确定为真时要执行的一个或多个语句,以及可选的,如果条件要执行的其他语句 被认定是假的. 以下是大多数编程语言中的典型决策结构的一般 ...

  8. Jupyter Notebook远程服务器配置[转]

    首先要生成密码,打开python终端. In [1]: from IPython.lib import passwd In [2]: passwd() Enter password: Verify p ...

  9. ResourceBundle和Locale

    一.认识国际化资源文件   这个类提供软件国际化的捷径.通过此类,可以使您所编写的程序可以:          轻松地本地化或翻译成不同的语言          一次处理多个语言环境          ...

  10. JavaScript中setInterval的用法总结

    setInterval动作的作用是在播放动画的时,每隔一定时间就调用函数,方法或对象.可以使用本动作更新来自数据库的变量或更新时间显示. setInterval动作的语法格式如下:setInterva ...