- 博客(7)
- 资源 (2)
- 收藏
- 关注
原创 LK(little kernel)第一行代码链接位置分析及lk启动过程
LK是(L)ittle (K)ernel的缩写,是一个功能及其强大的bootloader开源项目,但现在只支持arm和x86平台。LK的一个显著的特点就是它实现了一个简单的线程机制(thread),和对高通处理器的深度定制和使用。因此高通平台android普遍采用LK作为其bootloader。但是,LK只是整个系统的引导部分。1,lk的代码链接方式以及第一行代码的位置本文以高通平台为
2017-10-30 15:02:53 4997 1
原创 android编译系统解析,执行make bootimage后mk文件的调用顺序详解
android编译系统解析,执行make bootimage后mk文件的调用顺序详解构成android编译系统的有make文件(makefile,xxxxx.mk),shell脚本,python脚本等make文件针对三个层次1,整个编译系统的核心 android/build/core/下,如其中的main.mk文件2,针对不同厂商不同产品的make文件位于android/devic
2017-10-27 10:52:59 12376 1
原创 linux中新增一个shell命令最简单的方法
linux中新增一个shell命令最简单的方法结论:运行shell脚本之后,其中的function就自动成为了当前shell中的新增命令了。android编译时会运行. build/envsetup.sh脚本,运行后就为当前shell新增了一些命令,如:croot,lunch,mm,mmm,mma,cgrep等等。这些命令十分好用,为开发带来了极大的便利。一直以为envsetup.sh
2017-10-25 20:02:14 4121
原创 linux移植过程概述(linux移植的全局认识并非step by step的教程)
本文简述一下对linux移植过程的全局认识并非step by step的教程想让linux在一个板子上跑起来需要做什么?需要做三件事1.移植uboot适配板子 2.调试kernel中各类驱动 3.构建根文件系统。为什么需要uboot?内核虽然强大,但是不能开机自动完全从零开始启动的,内核启动还是需要别人帮忙的。uboot为kernel启动创造各种条件,帮助内核实现重定位
2017-10-24 20:11:36 1654 1
原创 linux启动第一个应用程序init && init启动android过程解析 && init.rc与inittab的关系 && android property和linux 环境变量
linux启动第一个应用程序initlinux的运行顺序为uboot传递参数到内核,内核的第一个c编写的函数为start_kernel(),start_kernel来启动内核,最后到到rest_init()函数处完成内核启动过程。rest_init()中启动第一个应用程序init,init程序的进程号为1,Linux使用了init进程来对组成Linux的服务和应用程序进行初始化。ini
2017-10-24 16:36:34 3483
原创 linux驱动由浅入深系列:usb子系统之四(android平台鼠标驱动代码分析)
android上的usb口是支持OTG(on the go)的,USB OTG既可以作为Host又可以作为Device,我们本文来看一下android手机作为Host连接鼠标的情况。OTG是如何做到既可以做Host又可以作为Device的呢标准usb接头中有四根线:vbus,gnd,dp(d+),dm(d-),android手机上的usb为miniUSB接口增加了一根id线,用来区分Hos
2017-10-18 17:30:25 2411
原创 linux/android代码中对于不同项目中conf、dts、defconfig文件的处理方法
本文以高通平台为例(代码 android oreo),介绍几种在不同项目公用一套代码时对于conf文件、dts、defconfig文件的处理方法一、不同项目共用一套代码时,其中一些conf配置文件在项目间又有差异的处理方法1,在device下给每个项目建一个单独文件夹存放不同的配置文件2,在mk文件中根据不同的项目宏进行copy例子:1,在device\qcom\msm89
2017-10-18 10:36:30 3160
setuptools-33.1.1.zip
2017-11-10
total commander 8.52a 含对应的注册Key文件
2016-05-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人