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. 1:C#的三种异步的详细介绍及实现

    一.介绍异步的前世今生: 异步编程模型 (APM,Asynchronous Programming Model) 模式(也称 IAsyncResult 模式),在此模式中异步操作需要 Begin 和 ...

  2. [NetCore学习记录]第一章.使用netcore撸个简单的增删改查

    1.引言 2.解决方案各部分介绍图 3.添加数据模型 4.添加数据库上下文 5.修改配置文件 6.使用依赖关系注入容器注册数据库上下文 7.添加基架工具并执行初始迁移 1.引言 NetCore出来有一 ...

  3. ASP.NET Core URL Rewrite中间件

    URL重写是基于一个或多个预置规则修改请求URL的行为.URL重写在资源位置和访问地址之间创建了一种抽象,这样二者之间就减少了紧密的联系.URL重写有多种适用的场景: 临时或永久移动或替换服务器资源, ...

  4. Excel一对多查询(index+small+if)

    一.学习 一对多查询模式化数组公式: =INDEX(区域,SMALL(IF(条件,行号数组,4^8),ROW(A1))) 三键齐按(ctrl+shift+回车) 在具有多个符合条件的情况下,提取和匹配 ...

  5. C++的可移植性和跨平台开发

    概述 今天聊聊C++的可移植性问题.如果你平时使用C++进行开发,并且你对C++的可移植性问题不是非常清楚,那么我建议你看看这个系列.即使你目前没有跨平台开发的需要,了解可移植性方面的知识对你还是很有 ...

  6. Maximum splitting(规律,数论)

    You are given several queries. In the i-th query you are given a single positive integer ni. You are ...

  7. 2.iptables 匹配条件(基础)

    基本匹配条件 -s 用于匹配报文的源地址,可以同时指定多个源地址,每个IP地址用逗号分开,也可以指定网段 iptables -t filter -I INPUT -s 192.168.1.111,19 ...

  8. JS关闭页面弹窗提醒

    <html> <head><title>JS测试</title> <script type="text/javascript" ...

  9. The score of 'O' and 'X'

    题目描述 注意要点: 使用strlen函数注意加头文件#inlcude <cstring> 循环宏定义for循环#define _for(i,a,b) for(int i=(a);i< ...

  10. oracle nvl()函数

    oracle的nvl()函数作用是当第一个值不为null时,返回第一个值,否则返回第二个值. 当第一个值为一个运算表达式时,那么第二个的值被限定为只能是NUMBER类型或者能隐式转换为NUMBER类型 ...