Android与标准Linux对比
来源:互联网 发布:淘宝正义哥卖假货么 编辑:程序博客网 时间:2024/06/06 02:13
这篇文章布局好乱呀,有时间得整理一下。
声明本文是积累式的写法,不会为去写而写,是先总结一些写一些:
Android文件系统与linux文件系统层次结构标准(FHS)对比:
FHS Android /tmp /data/local/tmp /bin /system/bin /etc /etc -> /system/etc /lib /system/lib /var 无,可用/data/local/tmp代替先 /sys /sys /proc /proc /mnt /mnt /media 无,可用/mnt代替 /root 无,无可替代 /sbin /sbin 一般的linux程序都是按照FHS来的,如果要直接编译到Android中用,一些目录就要按照上边对应的改。Android底层功能与标准linux对比:
《Android 4.2蓝牙介绍-Android中的Bluetooth》
音频库 libalsa tinyalso《Android音频系统之音频框架-TinyAlsa》遇到一些记录一些。弄明白了这些,从底层向Android出发就方便多了。
很多文章都在说它代替了udev,这个真是一个不负责人的说法,Vold全称Volume Daemon,顾名思义,它是管理卷的,所谓卷也就是硬盘/Flash/sdcard之类的存储设备,它负责将上述的存储设备自动挂载到指定目录。
在Android中与udev相提并论的是ueventd,它是管理/dev/下设备文件的。
而Vold只会检测是否为存储设备,如果是就会挂载。
---------------------------------------
Udev的工作中包括管理/dev下设备文件和自动挂载文件系统,不过Vold全称是Volume Daemon专门的卷管理,它是没有管理/dev下的设备文件的,这个功劳不是它的,创建设备文件的是ueventd。
在Android中不能和其它linux进行一对一的对应了,因为Vold甚至还包括和上层的通信,而udev没有,管理好设备文件和挂载动态的存储设备就完了。还有一个区别是Vold是管理了所有的卷无论静态还是动态,而udev只管理动态的,管理静态的是fstab。
关于/tmp目录的问题,这个是最直接的问题了,一般的开源软件都是直接用hardcode的方法默认将临时文件放到/tmp目录中的,这点一定要注意,编译一个开源的软件到Android上时首先创建一个/tmp目录。没有/tmp目录会出现很多问题。等到测试好发布的时候要把hardcode的/tmp目录调整到自己新创建的目录一般在/data/misc/${func}/tmp一般${func}为自己的功能的名字。
Android源码目录:
/cts 兼容性测试套件
/kernel 内核
Android系统目录功能介绍
/cache分区
使用:在进行OTA升级(俗称:刷机)的时候会用到/cache/recovery目录
1.利用/cache/recovery/command会传递参数.如:update.zip的路径.
2.升级过程产生的Log文件也会放到/cache/recovery目录中.如:last_install,last_locale,last_log,一般供调试人员使用.
3.当然/cache目录也可以存放update.zip包.
4.看到其它地方说Google Play会将软件包下载到些处.
这些是我在工作中遇到的.
完整包升级:
将以下内容写入到/cache/recovery/command
boot-recovery
--update_package=/data/media/0/update.zip
--wipe_cache
reboot
执行reboot recovery 即可升级.
- Android与标准Linux对比
- Android与标准Linux Kernel的对比
- c89与c99标准对比
- Linux与Android休眠唤醒对比(1)
- Linux与Android休眠唤醒对比(2)
- Android内核 与 linux 内核对比
- (九)linux下文件io与c的标准io对比
- c++ 标准容器介绍与对比
- CMMI模型与SPICE标准对比分析
- Linux与Android休眠唤醒对比(一)
- Linux与Android休眠唤醒对比(二)
- android的权限与linux中的权限对比
- Android 内核与标准Linux内核的区别
- Freebsd与linux对比分析
- Linux与windows的对比
- Linux与Windows多线程对比
- C++标准库 std::list 与 std::vector性能对比
- 系统调用直观解释 (与标准IO的对比)
- 使用Telnet程序手工发送邮件
- Android应用复习一_布局
- NOIP2013第一题
- uva11992
- Go into, Hongxiutianxiang
- Android与标准Linux对比
- 由一个简单的String c=a+b的Java问题引发一点想法
- 【linux + lighttpd + php + zeromq】之实战训练一
- 【ACM训练计划】 《算法艺术与信息学竞赛》题目出处 (POJ等)
- 简单记事本及目录树形图的Java实现
- C++5中内存分配方法,堆 栈 静态存储区 全局/静态变量 自由存储区
- 破解手机的任意收费游戏
- 解决dns劫持,网页重定向114
- Android Handler的机制和原理(二)