自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (8)
  • 收藏
  • 关注

原创 Android 设置网络代理

添加代理:adb shell settings put global http_proxy ip_address:port今天在这个ip_address上耗费了太多时间,如果是已知IP,填写IP即可,如果是域名形式的,一定要去掉http://!移除代理:adb shell settings delete global http_proxyadb shell settings ...

2019-06-25 16:49:14 3523

转载 Windows & Linux 文件格式之迷 < VI下删除文本中的^M>

关于回车与换行很久以前,老式的电传打字机使用两个字符来另起新行。一个字符把滑动架移回首位 (称为回车,ASCII码为0D),另一个字符把纸上移一行 (称为换行,ASCII码为0A)。当计算机问世以后,存储器曾经非常昂贵。有些人就认定没必要用两个字符来表示行尾。UNIX 开发者决定他们可以用一个字符来表示行尾,Linux沿袭Unix,也是。Apple 开发者规定了用.开发 MS-DO

2014-07-21 10:30:27 864

原创 LDD3笔记

之前曾经囫囵吞枣的读过一遍,很多地方不懂,到现在留在脑海的所剩无几,现在重新读一遍。本篇作为阅读笔记,记录学习过程。环境:1. OS: Ubuntu 10.04$ uname -aLinux gchen 2.6.32-46-generic #105-Ubuntu SMP Fri Mar 1 00:04:17 UTC 2013 x86_64 GNU/Linux2. 阅

2013-04-02 09:13:52 752

转载 LDD3笔记基础知识

http://zzzppp.cublog.cn/去年(2005)9月2号就买了Linux Device Drivers第三版,但一直没仔细拜读.最近决定仔细研读它以学习Linux设备驱动程序. 在这里归纳学习笔记. 不知道自己有没有恒心把它看完,总之better later than never. 就让这一系列的笔记伴随我学习ldd3的漫漫长路吧ldd3介绍的是2.6.10版的内核

2013-04-02 08:42:50 1184

转载 浅析linux内核驱动的代码风格

源出处:http://top.akaedu.org/index.php/index/bookdetail/id/2890最近在向Linux内核提交一些驱动程序,在提交的过程中,发现自己的代码离Linux内核的coding style要求还是差很多。当初自己对内核文档里的CodingStyle一文只是粗略的浏览,真正写代码的时候在很多细节上会照顾不周。不过, 在不遵守规则的程序员队伍里,

2013-04-02 08:37:30 723

转载 android 2.3 电量管理

【From: http://blog.csdn.net/z642010820/article/details/7341469】1.     介绍.... 42.     电池管理.... 42.1.      FrameWork.. 52.1.1.       监听... 52.1.1.1.     UEventObserver的实现... 62.1

2013-02-20 15:38:00 490

转载 android 2.3 电源管理

【From http://blog.csdn.net/z642010820/article/details/7341462】1.     介绍.... 42.     前言.... 43.     应用程序开发相关.... 43.1.      Api的使用... 43.2.      注意事项... 54.     驱动程序开发相关.... 5

2013-02-20 15:35:34 756

转载 解决ICS40上设置APN无权限问题

在ICS40以前的版本中,如果程序需要设置APN,只需要在AndroidManifest文件中声明这个权限即可。在40的机器上运行则会抛出以下异常:java.lang.SecurityException: No permission to write APN settings: Neither user *** nor current process has android.permissio

2013-01-05 09:51:56 943

转载 Android中打印代码的调用层次

在我们调试Android代码的时候,有些时候需要取得当前代码的调用层次(调用栈)。本人现知3种方法,一种是java传统的方法,另一种是Android提供的方法,还有第三种需借助于Exeption或Throwable。第一种,通过getStackTrace()这种是java的传统方法,即在你的代码处,通过Thread.currentThread().getStackTrace()得到

2012-06-27 10:33:23 608

转载 Ubuntu下eclipse安装ADT时遇到org.eclipse.wst.sse.core 0.0.0缺失的一个解决方案

今天在Ubuntu下用eclipse配置Android开发环境,在配置ADT时出现如下错误: 1 Cannot complete the install because one or more required items could not be found.  2 Software being installed: Android Development Tools 8.0.1.v

2012-03-26 13:59:28 754

转载 VIM查找命令

原帖地址:http://blog.csdn.net/wesleyhe/article/details/7173845VIM命令功能f向前搜索并将光标停留在目标字符上F向后搜索并将光标停留在目标字符上;重复刚才的查找,反向重复刚才的查找t

2012-02-01 13:20:06 9899

转载 Android开发者指南(1) —— Android Debug Bridge(adb)

前言  本章内容为开发者指南(Dev Guide)/Developing/Tools/adb,这是一篇非常优秀的译稿,翻译来自"移动云_文斌",欢迎访问它的博客:"http://blog.csdn.net/caowenbin",再次感谢"移动云_文斌" !期待你一起参与翻译A

2011-08-23 11:39:04 992 1

转载 AM 命令行启动程序的方法

在Android中,除了从界面上启动程序之外,还可以从命令行启动程序,使用的是命令行工具am. usage: am [subcommand] [options]    start an Activity: am start [-D]         -D: e

2011-08-23 11:36:18 1105

原创 Git cherry-pick 和 rebase 的混合用法

之前在 git 上遇過一個問題A-B master  \  C-D-E-F-G topic問題是,我只想把 D,F 加到 master ,其他的留在 topic ,而且又不想把 history 搞得很亂,最好

2011-08-19 15:40:05 1207

转载 git merge vs rebase vs cherry-pick

git merge是用来合并两个分支的。# 将b分支合并到当前分支git merge bgit cherry-pick可以选择某一个分支中的一个或几个commit(s)来进行操作。例如,假设我们有个稳定版本的

2011-08-19 15:38:53 641

转载 [ZZ]【电子电路】上下拉电阻总结

上下拉电阻总结SkySeraph整理 2009-6上拉电阻1、当TTL电路驱动COMS电路时,如果TTL电路输出的高电平低于COMS电路的最低高电平(一般为3.5V),这时就需要在TTL的输出端接上拉电阻,以提高输出高电平的值。【TTL-CMOS匹配  输出电平】2、OC(集电极开路,TTL) 或OD(漏极开路,COMS)输出必须加上拉电阻,才能使用。假如有一个三态的门带下一级门.如果直接把三态的输出接在下一级的输入上,当三态的门为高阻态时,下一级的输入就如同漂空一样.可能引起逻辑的错误,对MOS电

2011-05-04 16:31:00 1729

转载 Linux内核相关资源

内核相关资源 1 . 开源/文档/社区/信息资源1.01 http://www.kernel.org     Linux内核主页1.02 http://www.gnu.org or http://www.fsf.org     GNU/FSF主页1.03 http://www.opensource.org     Open Source权威网站1.04 http://www.osdl.org     OSDL(Open Source Development Labs, Linus T

2011-05-03 14:41:00 7743

转载 Linux资源链接

http://www.embedworld.com/http://c-faq.com/Cross-Referencing Linux(基于lxr的linux源码阅读,emacs的etags不好使的时候用它)http://lxr.linux.no/source/优龙科技http://www.ucdragon.com/华恒公司的主页,里面有很多的相关资料,有待大家去发现http://www.hhcn.com/chinese/embedlinux-res.htmlAT91RM9200补丁下载网站h

2011-05-03 14:35:00 4492

转载 [ZZ]Git 中文教程

Git 中文教程介绍注:本文原始链接http://www.linuxsir.org/main/doc/git/gittutorcn.htmGit --- The stupid content tracker, 傻瓜内容跟踪器。Linus 是这样给我们介绍 Git 的。 Git 是用于 Linux 内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux k

2011-03-25 14:01:00 623

原创 开博

     今天开博,庆祝一下:)

2007-10-28 12:45:00 482

高质量C++C编程指南.rar

高质量C++C编程指南 这本书不用多介绍吧? 很多笔试题都会选材于此。

2009-06-20

linux操作系统下c语言编程入门.pdf

Linux下的C编程入门介绍 适合初学者!

2009-06-20

C语言嵌入式系统编程修炼.pdf

分几个模块讲述C语言的嵌入式编程! 进阶型

2009-06-20

将ClearCase的常用功能集成到Source Insight中的方法.doc

Source Insight工具对于阅读查找代码,非常方便,加入Clear Case常用功能将大大提高你的工作效率

2009-06-20

程序代码实现的陷阱.pdf

程序代码实现的陷阱 Helianthus 2006/01/05 09:43 如果把编写代码看做是在河水的上游倾倒垃圾,而将测试代码找出BUG 看做是在河水的下游来治理 污水的话,那么毫无疑问治理污染河流的首要环节应该是在上游尽最大可能的控制垃圾的倾倒数量,而不 是在下游热火朝天的治理污水却全然不顾有人在上游肆意的倾倒垃圾。 前言 通常来说,好的软件一定有一个好的结构设计。但是反之结论却是不能成立的,因为一 个好的软件结构设计并不一定能带来好的软件产品,这中间依赖很多其他的因素,例如代码 性能,代码的健壮性以及代码的可维护性。正如Frederic Brooks 博士在他那本著名的软件工 程著作《神秘的人月》中所说的那样,如果将一段普通程序转变成产品中的代码的话,那是 需要付出多达9 倍的时间的。这中间的原因有很多方面,因为普通的一段程序通常仅仅是为 了实现某一个功能或是达到对某种预测的验证,只要强调这段程序结果正确了就可以结束 了;但是对于产品代码来说,仅仅实现了功能性的要求是远远不够,因为一个软件产品中往 往存在大量的功能性模块,如果在某个功能模块执行之后造成了足以影响其他模块正常工作 的负效应,那么我们把导致其他模块不能正常工作的这样的功能模块称之为脏模块,因为它 在完成了自己的功能后污染了整体的软件运行环境,做了一些不该做的事情。可以说,软件 工程师通过各种调试手段将软件中各种形形色色的Bugs 找出来然后发Patches 的过程,其 实就是在根据需求逐渐的将一个不稳定的产品中各种Dirty 的模块转变成Clean 模块的过程。 然而,随着软件质量控制意识的加强以及软件工程的发展,我们逐渐意识到在软件开发 的早期将各种Bug 解决掉所需的时间成本是最低的,因为在产品后期再来解决Bug 的话, 随着软件模块数量增多,环境复杂度的增加,需要将问题定位到某一个具体功能模块所需的 时间开销基本上是很大的(当然和调试人员的基本素质是有关的)。这可能就是很多软件质 量控制的流程中都比较强调要在软件模块设计的过程中引入Review 的过程,在代码编码实 现后首先也必须由别人负责Review 后再进入模块的单元测试,在单元测试结束后再进入产 品的集成测试。这样的好处无疑是很显然的,在模块集成入产品前首先保证该模块是一个 Clean 的模块,这样在产品集成过程中就可以放心的将对问题的各种怀疑集中到各个相关的 模块接口之上,而不是漫无目的的对所有模块内部都怀疑,这样做的一个严重的后果就是随 着模块内部代码的分支增多,我们将无所适从,因为程序分支的指数增加将迫使我们打消这 样的念头。 这篇文章的目的不是和大家探讨软件工程中对软件质量的控制的,本文的写作目的主要 是试图从如何提高代码实现质量的角度上来探讨一下各种各样的代码陷阱问题,因为我们在 开篇就说过,一个好的思想最终是需要一个好的代码质量来实现的,在代码的编码阶段就能 够提前避免各种代码陷阱,无疑会加速模块的开发进度,而且也会大大降低产品的后续维护 工作量的。当然,除了软件代码的实现陷阱外,我们还会讨论一些具体的软件调试技术以及 工程中需要注意的各种细节问题,希望本文能够给那些刚刚进入或是期望进入软件中的兄弟 姐妹们有个提醒。本文中所有的陷阱的例子都是从实际的项目中得来的,为了更好的说明问 题,在某些例子中可能会根据实际的需要引入部分汇编程序,其目的是为了将问题说明得更 加清楚。记得有一位计算机专家这么说过“计算机程序语言只是一种用来表达人们思想的工 4 具而已”,也就是说我们没有必要在各种语言的好坏上争论不休,当然也不能认为只有自己 常用的语言就是最好的,我们需要在熟练掌握一两种语言的基础上再了解其他的语言即可。 编程语言是发展很快的,我们试图紧跟每一种语言是不切实际,也没有太大的必要。常规的 做法只需要把底层的汇编语言(了解计算机CPU 的体系结构)和自己喜欢的一种高级语言 就可以了,至于为自己喜欢的语言去和别人打口水仗就没有必要了。其实各种高级语言之间 本身并没有那么大的差异性。就像在使用汇编语言写程序的时候,你所获得的速度优势是以 你必须自己协调各个寄存器的使用,等到了C 语言这个级别,分配寄存器,各个局部变量 在堆栈中具体的地址在哪里,如果操作它们,使用哪一条指令来等效实现C 语言的抽象语 法所需要的指令等等之类非常繁杂的事情现在基本上都是由C 语言的编译器全部解决了掉, 这样做的好处就在于能够把人的精力从前面那些繁杂的,规律性很强的事务中解放出来,集 中精力去思考高层的设计问题。再上升到C++语言的时候,又引入了更多新的机制,其目 的和前面一样,是希望尽量把一些重复性很强的东西固定化,由编译器负责替你默默的把这 些事情全部做完,这样的话就充分利用了程序的优势。在这一点上,就好像有一个内嵌在编 译器中的CheckList 一样,每次都会忠实的按照预定的执行次序顺序执行一些程序化的操作, 这样就避免了人手工做这种事情可能会出现漏洞的可能性。比如说C 语言中你可能要写很 多的Initialize 和Finalize 的函数,这下好了,C++里面不再需要你象写C 语言那样在声明和 撤销某一个数据单元的时候再显式的调用Initialize 函数和Finalize 函数,这些烦琐的事情不 再需要你去关心了。当然C++的优势并不仅仅局限在这一点上了,但是从很多语言的发展路 径上我们还是能够很清晰的看到这一点。就是因为C 语言(C++中依然存在)中对内存使用 常常会出现泄漏的问题(人们常常会在分配使用完内存之后常常忘记释放内存),JAVA 语言 中就实现了一个所谓比较智能化的内存回收机制。但是当我们将各种语言美丽的标签统统去 掉之后,我们就会发现其实所有的程序语言在本质上是一样的。语言也是发展的,每一种新 的语言的产生都在试图解决老语言中存在的问题,但是随着时间的流逝,新的语言也会慢慢 产生出很多其他新的问题,而这些新的问题又会催生出更新一代语言的产生。这是一个递归 的过程,也从一个侧面反映出人们试图追求完美境界的美好愿望。但是不管语言怎么变化, 对于那些有志于在程序设计方面有所追求的朋友们来说,了解底下处理器的硬件体系结构, 清楚CPU 是怎么运行的,掌握汇编语言是非常重要的,就像那句话说的那样“当我开始学 会用心去看这个世界的时候,突然间我发现整个世界是如此的清楚”。在本文各个部分,我 们会分别展示很多陷阱,应该说很多陷阱其实和语言是不相关的,也就是说这种陷阱的例子 并不仅仅局限于我们在例子中展示的这种语言里面。其他的语言中也会存在同样的问题,可 能不同的是在这些语言中具体的表现形式可能会有所不同而已,但是我们只需要仅仅把握住 问题的实质和解决问题的方法就可以了。 下面我们就开始从产品中代码的各个阶段(代码的编写,代码的编译,代码的调试和 代码的集成)来和大家交流一下我们可能会遇到的各种陷阱,同时也会把部分避免这些陷阱 的技术和大家一起分享。如果把完成一个优秀的软件作品看做是必须通过一片到处是危险, 到处是陷阱的原始森林的话,那么我们就能理解为什么仅仅准备好必要的技术装备是远远不 够的,成功走出这些陷阱更需要的是丛林猎手的经验和生存技能。好的,现在让我们开始这 段充满挑战的旅程,希望每一位朋友在经过这些必要的训练之后都能称为一名好的丛林猎手 (Jungle Hunter)。

2009-06-20

软件工程思想.pdf

第一章“软件工程基本观念”; 第二章“程序员与程序经理”; 第三章“项目计划与质量管理”; 第四章“可行性分析与需求分析”; 第五章“系统设计”; 第六章“C++ 面向对象程序设计”; 第七章“测试与改错”; 第八章“维护与再生工程”。 附录“大学十年”可以充当饭后的水果。

2009-06-20

Microsoft Office快捷键大全.htm

Word XP/2003快捷键大全 Excel XP/2003快捷键大全 PowerPoint XP/2003快捷键大全 Access XP/2003快捷键大全 FrontPage XP/2003快捷键大全

2009-06-20

空空如也

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

TA关注的人

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