自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

宁静致远

构建从理论到实现再到应用,多层次化结构化的强大知识体系!

  • 博客(6)
  • 资源 (26)
  • 收藏
  • 关注

原创 从多方面理解Android体系结构

<br />Android作为一个为当前手机系统市场带来新的活力的具有空前生命力的移动操作系统,其成功有其必然性,它定是集众高人的智慧,具有说也说不完的优点所在。若想真正了解它,掌握它,肯定需要一个不断深入学习的过程,这里不防先从下面几个角度来理解Android系统的优点。<br />一、以分层的方式来看Android<br />首先看一下官方关于Android体系结构的图:<br /><br />相信大家对上面这个图都见过很多次了,甚至已经印在脑中了,这里我也不详细赘述了,只是简单描述一下;<br />1

2011-01-26 00:55:00 4357 1

转载 数学是成就卓越开发人员的必备技能

<br />编者按:原文作者Alan Skorkin是一名软件开发人员,他在博客中分享对软件开发相关的心得,其中有很多优秀的文章,本文就是其中一篇,作者认为:成为优秀的开发人员,可以没有数学技能,但成为卓越的开发人员,不能没有。<br /><br /><br />不久之前,我开始思索数学。你也知道,到目前为止,我编写软件也有几年了。老实说,在我的工作当中,我还没有发现有关数学的需求。我要学习和掌 握许多新东西,包括语言、框架、工具、流程、沟通技巧和可以用来做你想到的任何东西的库。在我学的新东西中,数学并没有

2011-01-10 13:41:00 732

转载 把NDK集成到Eclipse

<br />前言<br />       最经在看Android方法的基础知识,看到一篇文章(http://www.rbgrn.net/content/348-get-your-eclipse-integrated-ndk-on)介绍如何把Android的NDK集成到Eclipse,顺便就把它翻译过来。<br />       注:<br />技术名称保留不译,比如Cygwin <br />Eclipse(英文版)的界面文本不译,比如按钮(Specify Resources)。 <br />括号内的内容,是

2011-01-09 23:58:00 843

转载 Android NDK概述

Android NDK概述<br /><br />介绍:<br /><br />Android NDK是一套工具,允许Android应用开发者嵌入从C、C++源代码文件编译来的本地机器代码到各自的应用软件包中。<br /><br />重要:<br />    Android NDK 只能被用于使用该平台的Cupcake (1.5)或是更新发布的系统映像。<br /><br />    特别指出1.0和1.1系统映像不支持NDK,这是由于在1.5发布中对toolchain和相关ABI做了改变。<br /><b

2011-01-09 23:31:00 675

原创 Android最新代码下载(windows平台直接下载)

 Android作为一个十分火爆的开源系统,在开发应用的过程中难免要了解一下它的源代码,这样的话,才能更深层次地掌握和了解其原理,才能制作出更适合自己的东西,这里我们介绍一下在Windows平台上直接下载代码(其实在linux环境下更方便下载)。     1、下载及安装Git: Android源代码是通过一个开源的分布式版本控制软件Git,在Windows平台也有相应软件,可访问:http://code.google.com/p/msysgit/ 来下载最新版本Git工具。下载完成后,即可按默认设置来安装G

2011-01-08 23:30:00 1585

原创 Android异常记录

<br />为了能够更好地积累错误经历,避免重复犯同样的错误,有必要将自己在练习或学习过程的遇到的问题作一个记录,以备日后查询,也希望对各位同仁有个提醒的作用,追求共同进步<br /> <br />1、异常信息:Caused By: android.content.res.Resources$NotFoundException:String resource ID #0x86<br />相关代码是:<br /> <br />private TextView tv_height = null;<br /> <

2011-01-03 02:12:00 2129

百度翻译-自定义-计算机专业词库.zip

在使用百度翻译时,可以将此专业词库直接导入进去,这样,使用百度翻译时就可以使用上自定义的词库了,使翻译计算机软件相关英语时,更能准确了,特别是翻译字幕srt时,可以更准确地理解国外大神们的视频内容了

2021-11-28

奔跑吧Linux内核(带详细书签高清版本)

奔跑吧 – Linux内核... 1 致敬经典...3 致 谢... 6 Linux内核奔跑卷...12 第1章 ARM体系结构... 15 第2章 内存管理... 44 本章思考题...44 2.1 物理内存初始化... 48 2.1.1 内存管理概述... 48 2.1.2 内存大小... 49 2.1.3 物理内存映射... 50 2.1.4 zone初始化... 52 2.1.5 空间划分... 56 2.1.6物理内存初始化...57 2.2 页表的映射过程... 64 2.2.1 ARM32页表映射... 64 2.2.2 ARM64页表映射... 73 2.3 内核内存的布局图... 81 2.3.1 ARM32内核内存布局图... 81 2.3.2 ARM64内核内存布局图... 85 2.4 分配物理页面... 88 2.4.1 伙伴系统分配内存... 88 2.4.2 释放页面... 101 2.4.3 小结... 105 2.5 slab分配器... 106 2.5.1 创建slab描述符... 107 2.5.2 分配slab对象... 118 2.5.3 释放slab缓冲对象... 124 2.5.4kmalloc分配函数...127 2.5.5 小结... 128 2.6 vmalloc. 130 2.7 VMA操作... 138 2.7.1查找VMA..139 2.7.2 插入VMA.. 141 2.7.3 合并VMA.. 146 2.7.4 红黑树例子... 148 2.7.5 小结... 150 2.8 malloc. 151 2.8.1 brk实现... 151 2.8.2VM_LOCK情况...156 2.8.4 小结... 165 2.9 mmap. 168 2.9.1 mmap概述... 168 2.9.2 mmap小节... 170 2.10 缺页中断处理... 173 2.10.1do_page_fault()174 2.10.2 匿名页面缺页中断... 182 2.10.3 文件映射缺页中断... 186 2.10.4 写时复制... 192 2.10.5小结...200 2.11 page引用计数... 202 2.11.1struct page数据结构... 202 2.11.2_count和_mapcount的区别...206 2.11.3 页面锁PG_Locked. 209 2.11.4 小结... 210 2.12 反向映射RMAP. 211 2.12.1父进程分配匿名页面...211 2.12.2 父进程创建子进程... 216 2.12.3子进程发生COW...219 2.12.4 RMAP应用... 219 2.12.5小结...221 2.13 回收页面... 223 2.13.1 LRU链表... 223 2.13.2kswapd内核线程...235 2.13.3balance_pgdat函数...238 2.13.4shrink_zone函数...247 2.13.5shrink_active_list函数...252 2.13.6shrink_inactive_list函数...256 2.13.7 跟踪LRU活动情况... 262 2.13.8Refault Distance算法... 262 2.13.9小结...267 2.14 匿名页面生命周期... 270 2.14.1 匿名页面的诞生... 270 2.14.2 匿名页面的使用... 271 2.14.3 匿名页面的换出... 271 2.14.4 匿名页面的换入... 272 2.14.5 匿名页面销毁... 272 2.15 页面迁移... 274 2.15.1migrate_pages()函数...274 2.15.2 页迁移的应用... 281 2.16 内存规整(memory compaction)... 283 2.16.1 内存规整实现... 283 2.16.2 小结... 292 2.17 KSM... 294 2.17.1 KSM实现... 294 2.17.2 匿名页面和KSM页面的区别... 312 2.17.3 小结... 315 2.18 2016年最火的内存漏... 317 2.19 内存管理数据结构和API331 2.19.1 内存管理数据结构的关系图... 331 2.19.2 内存管理中常用API333 2.20最新更新和展望...337 2.20.1 页面回收策略从zone迁移到node. 337 2.20.2 OOMKiller改进... 338 2.20.3 swap优化... 339 2.20.4 展望... 340 第3章 进程管理... 341 本章思考题...341 3.1 进程的诞生... 343 3.1.1 init进程... 343 3.1.2 fork. 347 3.1.3小结...366 3.2 CFS调度器... 368 3.2.1权重计算...369 3.2.2进程创建...382 3.2.3进程调度...392 3.2.4scheduler tick. 402 3.2.5组调度...404 3.2.6 PELT算法改进... 409 3.2.7小结...410 3.3 SMP负载均衡... 413 3.3.1 CPU域初始化... 413 3.3.2 SMP负载均衡... 425 3.3.3 唤醒进程... 438 3.3.4 调试... 445 3.3.5 小结... 446 3.4 HMP调度器... 447 3.4.1 初始化... 447 3.4.1 HMP负载调度... 449 3.4.3 新创建的进程... 460 3.4.4 小结... 461 3.5 NUMA调度器... 463 3.5.1 node和page的关系... 464 3.5.2 扫描进程... 465 3.5.3 NUMA缺页中断... 467 3.5.4 进程迁移... 474 3.5.3 总结... 480 3.6 EAS绿色节能调度器... 482 3.6.1 能效模型... 484 3.6.2 WALT算法... 490 3.6.3唤醒进程...505 3.6.4 CPU动态调频... 516 3.6.5 小结... 519 3.7 实时调度... 522 3.7.1低延迟例子...523 3.8 最新更新与展望... 526 3.8.1 进程管理最新更新... 526 3.8.2 展望... 526 第4 章 并发与同步... 527 本章思考题...527 4.1 原子操作与内存屏障... 530 4.1.1 原子操作... 530 4.1.2 内存屏障... 532 4.2 spinlock. 535 4.2.1spinlock实现...535 4.2.2spinlock变种...538 4.2.3 spinlock和raw_spin_lock. 539 4.3 信号量... 540 4.3.1 信号量... 540 4.3.2 小结... 543 4.4 Mutex互斥体... 544 4.4.1 MCS锁机制... 545 4.4.2 Mutex锁的实现... 552 4.4.3 小结... 558 4.5 读写锁... 559 4.5.1 读者信号量... 559 4.5.2写者锁...565 4.5.3 小结... 571 4.6 RCU.. 572 4.6.1 经典RCU和Tree RCU.. 575 4.6.2 TreeRCU设计... 579 4.6.3 小结... 601 4.7 内存管理中的锁... 603 4.8最新更新与展望...612 4.8.1 QueuedSpinlock. 612 4.8.2读写信号量优化...619 4.8.3 展望... 620 4.8.4 推荐书籍... 620 第5章 中断管理... 621 本章思考题...621 5.1 Linux中断管理机制... 623 5.1.1 ARM中断控制器... 623 5.1.2 硬件中断号和Linux中断号的映射... 627 5.1.3 注册中断... 638 5.1.4 ARM底层中断处理... 646 5.1.5 高层中断处理... 654 5.1.6 小结... 663 5.2 软中断和Tasklet. 665 5.2.1SoftIRQ软中断...665 5.2.2Tasklet.670 5.2.3local_bh_disable/local_bh_enable.675 5.2.4小结...676 5.3Workqueue工作队列...679 5.3.1 初始化工作队列... 680 5.3.2创建工作队列...686 5.3.3调度一个work.692 5.3.4 取消一个work. 703 5.3.5 和调度器的交互... 707 5.3.6 小结... 709 第6章 调试... 712 6.1 QEMU调试Linux内核... 712 6.1.1 QEMU运行ARM Linux内核... 712 6.1.2 QEMU调试ARM-Linux内核... 715 6.1.3 QEMU运行ARMv8开发平台... 716 6.1.4 文件系统支持... 718 6.1.5图形化调试...719 6.1.6 实验进阶... 722 6.2 Ftrace. 723 6.3SystemTap.740 6.3.1 ARM上运行SystemTap. 740 6.4 内存检测... 744 6.4.1slub_debug.744 6.4.2内存泄漏检测kmemleak.748 6.4.3 Kasan内存检测... 750 6.5 死锁检测... 753 6.6 内核调试秘籍... 759 6.6.1 printk. 759 6.6.2动态打印...760 6.6.3 RAMConsole. 762 6.6.4 OOPS分析... 762 6.6.5 BUG_ON()和WARN_ON()765

2018-09-04

MSXML3安装包

可以用来在Linux下通过Wine来安装

2014-05-08

Linux程序设计(第四版)源代码.zip

 本书讲述了Linux系统及其他UNIX风格的操作系统上的程序开发,主要内容包括标准Linux C语言函数库和由不同的Linux或UNIX标准指定的各种工具的使用方法,大多数标准Linux开发工具的使用方法,通过DBM和MySQL数据库系统存储Linux中的数据,为X视窗系统建立图形化用户界面等。本书通过先介绍程序设计理论,再以适当的例子和清晰的解释来阐明它的方式,帮助读者迅速掌握相关的知识。   本书适合Linux的初学者及希望利用Linux进行开发的程序人员阅读,也适合作为高等院校计算机相关专业师生的参考教材。

2012-08-30

C语言的科学和艺术经典书中源码

此书我觉得应该属于经典书,有很多思想方面的经验,有助于透过面面俱到的C语言,看其本质,书有在ANSI C标准库的基础上,加入了自己的库,有很大的参考价值,而且同作者的另一本书《编程抽象思想-C语言描述》也用到了相同的库,都可参考

2012-07-31

Linux 常用C函数(中文版HTML版)

Linux C 函数参考”的文本文件,并在此基础重新排版并制成html文件以方便广大爱好者阅读,其重要性不必多说

2011-12-08

程序设计抽象思想:C语言描述

C语言编程思想精华,一本难得的经典呀,值得收藏慢慢品味大师的思想 本书全面介绍了数据结构的基础内容,帮助学生深入了解软件工程的思想和技术。学生还可以通过对一些高级编程概念(如接口、抽象和封装)的了解,为进一步深入学习高级编程知识打下坚实的基础。本书观点清晰明了、语言风格鲜明独特,深入浅出地介绍了一些高级主题。

2011-10-25

Turbo C实用大全

本书的目的就是为初学者提供一本全面了解C语言基础、库函数和Turbo C的集成开发环境的教材,因此本书的内容编排上特别注意两个字:“易”字,通俗易懂,深入浅出,从最简单的例子着手逐步深入。第2个字“全”字,系统、完整地介绍了C语言的基本概念、基本语法。 很适合作为一个手册保留

2011-10-13

Linux内核设计与实现(第2版)

经典的内核入门书,你懂的, 《Linux内核设计与实现》相对于Daniel P. Bovet和Marco Cesati的内核巨著《Understanding the Linux Kernel》,少了五分细节;相对于实践经典《Linux Device Drivers》,又多了五分说理。可以说,本书填补了Linux内核理论和实践之间的鸿沟,真可谓“一桥飞架南北,天堑变通途”

2011-08-24

linux 2.4.0 源代码

经典版本,用来研究Linux系统源代码,配套毛德操的《Linux内核源代码情景分析》

2011-08-14

Android_3D_OpenGL ES 基础教程

Android_3D_OpenGL ES 基础教程(中文版),从3D相关的基本概念讲起,也是很好的入门资料,需要的同仁拿去

2011-07-07

android下的OpenGL ES开发教程

Android平台下OpenGL ES开发入门资料,英文版,也是官方的OpenGL ES Tutorial for Android

2011-07-07

Android源代码下载工具(windows 平台)

这是一个很实用的Windows平台上的下载Android全部源代码的小工具,本来在Windows平台下没有类似Linux下的git 的repo命令,这个小工具正好弥补了这个缺点。

2011-01-09

USB转串口For windows7&Vista驱动程序(PL2303芯片)

USB转串口For windows7&Vista驱动程序(PL2303芯片)很珍贵

2010-03-28

s3c2410处理器手册(datasheet)

s3c2410 datasheet作为官方的一个手册,内容全面,要想掌握ARM9硬件编程及应用编程,看懂这个手册将是第一步,仿照手册内容,先从简单编程来控制硬件,逐步深入,登堂入室,进入充满充满机遇的嵌入式开发领域。

2009-09-23

2009年软件水平考试必备-2007下半年试题分析与解答-嵌入式系统设计师.pdf

2009年软件水平考试必备-2007下半年试题分析与解答-嵌入式系统设计师 此文件是从辅导书《2007下半年试题分析与解答》中拆分出嵌入式系统分析师考试的部分,以方便大家,希望对备考的同志们有所帮助

2009-09-15

2009年软件水平考试必备-2006下半年试题分析与解答-嵌入式系统设计师

2009年软件水平考试必备-2006下半年试题分析与解答-嵌入式系统设计师 此文件是从辅导书《2006下半年试题分析与解答》中拆分出嵌入式系统分析师考试的部分,以方便大家,希望对备考的同志们有所帮助

2009-09-15

构建嵌入式Linux系统(part2)

业界第一本深入探讨基于Linux内核的嵌入式系统开发的权威指南。书中总结了嵌入式开发过程中的许多以前从未形成正式文档的经验之谈。

2009-09-04

构建嵌入式Linux系统(part1)

业界第一本深入探讨基于Linux内核的嵌入式系统开发的权威指南。书中总结了嵌入式开发过程中的许多以前从未形成正式文档的经验之谈。

2009-09-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除