|
Android操作系统是由谷歌推出的一款基于Linux平台开源操作系统。在这里我们会通过Android内核的相关内容的介绍,来具体讲解这一操作系统的基本概念,以方便大家今后的使用,并加深大家对此的因印象。
在kernel子目录下存放的就是Android的Linux Kernel了, 通过和标准的Linux 2.6.25 Kernel的对比,我们可以发现,其主要增加了以下的内容:
1. 基于ARM架构增加Gold-Fish平台,相应增加的目录如下:
kernel/arch/arm/mach-goldfish
kernel/include/asm-arm/arch-goldfish
复制代码
Gold-Fish平台采用的是ARM926T CPU作为BaseBand处理器, 该CPU主频至少为200M HZ. 采用MSM7201A CPU(ARM 11)作为主CPU, 其主频为528M HZ.
2. 增加了yaffs2 FLASH文件系统,相应增加的目录为:
kernel/fs/yaffs2
复制代码
实际上,Android包经过编译后生成的system.img和ramdisk.img文件就是yaffs2格式的包.
3. 增加了Android的相关Driver,相应目录为:
kernel/drivers/android
复制代码Android内核主要分为:
Android IPC系统: Binder
Android 日志系统: Logger
Android 电源管理: Power
Android 闹钟管理: Alarm
Android 内存控制台: Ram_console
Android 时钟控制的gpio: Timed_gpio
4. 增加了switch处理, 相应的目录为:
kernel/drivers/switch/
复制代码5. 增加了一种新的共享内存处理方式, 相应增加的文件为: kernel/mm/ashmem.c
复制代码
6. 其他的Android内核为Linux-2.6.25内核所做的补丁等等,例如BlueTooth, 在此不做详细分析
另外GoldFish平台相关的驱动文件如下:
1. 字符输出设备:
kernel/drivers/char/goldfish_tty.c
复制代码2. 图象显示设备: (Frame Buffer) kernel/drivers/video/goldfishfb.c
复制代码3. 键盘输入设备: kernel/drivers/input/keyboard/goldfish_events.c
复制代码4. RTC设备: (Real Time Clock) kernel/drivers/rtc/rtc-goldfish.c
复制代码5. USB Device设备: kernel/drivers/usb/gadget/android_adb.c
复制代码6. SD卡设备: kernel/drivers/mmc/host/goldfish.c
复制代码7. FLASH设备: kernel/drivers/mtd/devices/goldfish_nand.c
kernel/drivers/mtd/devices/goldfish_nand_reg.h
复制代码8. LED设备: kernel/drivers/leds/ledtrig-sleep.c
复制代码9. 电源设备: kernel/drivers/power/goldfish_battery.c
复制代码10. 音频设备: kernel/arch/arm/mach-goldfish/audio.c
复制代码11. 电源管理: kernel/arch/arm/mach-goldfish/pm.c
复制代码12. 时钟管理: kernel/arch/arm/mach-goldfish/timer.c
复制代码 |
|