android 内核内存管理,Android内核相关内容总结
要想充分掌握Android这一操作系统的应用,首先需要我们从Android内核的相关内容开始了解。在这里就为大家详细介绍一下相关的知识。
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 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
Android内核的相关内容就为大家介绍到这里。
【编辑推荐】
【责任编辑:曹凯 TEL:(010)68476606】
android 内核内存管理,Android内核相关内容总结相关推荐
- linux内存管理的主要概念是虚拟内存,有关linux内存管理机制的相关内容,linux物理内存和虚拟内存,深入了解Linux内存运行 ......
在linux中空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然. 这是Linux内存管理的一个优秀特性,区别于Windows的内存管理. 主要特点: 无论物理内存有多大,L ...
- [书]操作系统真象还原 -- 第9章 内核(中断、内核内存管理、内核线程)
GITHUB: https://github.com/trb331617/os_elephant/tree/master/chapter_9 运行截图: 在内核main函数中创建了2个内核线程,并基于 ...
- 【Linux 内核 内存管理】内存映射相关数据结构 ③ ( vm_area_struct 结构体成员分析 | shared 成员 | anon_vma_chain 成员 | anon_vma 成员 )
文章目录 一.vm_area_struct 结构体成员分析 1.shared 成员 2.anon_vma_chain 成员 3.anon_vma 成员 二.vm_area_struct 结构体完整源码 ...
- Linux内核内存管理(3):kmemcheck介绍
Linux内核内存管理 kmemcheck介绍 rtoax 2021年3月 在英文原文基础上,针对中文译文增加5.10.13内核源码相关内容. 5.10.13不存在kmemcheck的概念,取代的是k ...
- Linux内核内存管理(1):内存块 - memblock
Linux内核内存管理 内存块 - memblock rtoax 2021年3月 在英文原文基础上,针对中文译文增加5.10.13内核源码相关内容. 1. 简介 内存管理是操作系统内核中最复杂的部分之 ...
- Linux内核内存管理(2):固定映射地址(fixmap)和输入输出重映射(ioremap)
Linux内核内存管理 固定映射地址(fixmap)和输入输出重映射(ioremap) rtoax 2021年3月 在英文原文基础上,针对中文译文增加5.10.13内核源码相关内容. Print ke ...
- Linux内核内存管理架构
内存管理子系统可能是linux内核中最为复杂的一个子系统,其支持的功能需求众多,如页面映射.页面分配.页面回收.页面交换.冷热页面.紧急页面.页面碎片管理.页面缓存.页面统计等,而且对性能也有很高的要 ...
- linux 内核内存管理
物理内存 相关数据结构 page(页) Linux 内核内存管理的实现以 page 数据结构为核心,其他的内存管理设施都基于 page 数据结构,如 VMA 管理.缺页中断.RMAP.页面分配与回收等 ...
- Android之内存管理-内存监测-内存优化
推荐文章:Android进程与内存及内存泄漏 Android之内存管理 1.1 Dalvik Dalvik虚拟机是Android程序的虚拟机,是Android中Java程序的运行基础.其指令集基于寄存 ...
最新文章
- 2021年大数据Spark(四十五):Structured Streaming Sources 输入源
- 《网站设计 开发 维护 推广 从入门到精通》—— 2.3 页面设计创意思维
- PHP生成CSV之内部换行
- linux 逻辑运算符and,布尔逻辑运算符
- Training little cats
- 【Python】从键盘输入一个大于1的整数N,判断是否为素数
- numpy 中的 broadcasting(广播)机制
- 存储过程传递参数时出现类型转换错误!如:varchar转换为int时出错
- phpquery类php,phpquery 最基础的例子
- git 设置用户只需要输入一次账号密码
- 100道Python经典练习题.pdf(附答案)
- 简单的路由器设置下一条(小白像)
- erp系统与mes集成:制造业信息化发展中必不可少的阶段
- 2022-01-19:青蛙过河。 一只青蛙想要过河。 假定河流被等分为若干个单元格,并且在每一个单元格内都有可能放有一块石子(也有可能没有)。 青蛙可以跳上石子,但是不可以跳入水中。 给你石子的位置列
- 刷完这50个标准库模块:没人比我更懂Python了
- Linux中 ps命令详解
- weblogic中间件WLS(bea_wls_internal)组件敏感信息泄露漏洞整改
- vue重复路由报错解决
- 微信公众号开发之自动消息回复
- php数据映射到echarts中国地图
热门文章
- 抄袭路虎极光多年的陆风X7 终于迎来法院裁定:即刻停止生产
- “有人拿十几万很开心地走了” 滴滴裁员名额员工竟然抢破头 官方回应...
- “寒门状元之死”刷屏后备受质疑 创作团队终于回应了...
- 编译安装sqlite-3.6.20【原创】
- thoughtworks笔试整理【转载】
- vim可以用来编译python吗_Linux下编译Vim以支持python2.x
- 运行gclient一直没反应_IC厌氧反应器的调试-温度影响
- 我的docker随笔36:定制jenkins镜像
- win8信息服务器不可用怎么办,win8系统下开机提示OneDrive选项此服务现在不可用请稍后再试怎么办...
- 合并两个有序链表 java_合并两个有序链表