自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

黄小东的专栏

静以修身,俭以养德

  • 博客(31)
  • 资源 (2)
  • 收藏
  • 关注

转载 Nand flash基础概念

一、存储大小以一个 4Gb ( x 16) 的Nand flash chip 为例。PlaneBlockPage根据位宽, 存储大小为  256M x 16bit, 另外还包括 16M x 8 bit 的 spare 空间。根据芯片规格,分成两个 Plane。 每个 Plane 2048 Block。因此该芯片为 multi-plane

2015-01-23 13:51:32 920

转载 如何开始参与开源项目

如何开始参与开源项目?2015/01/07 | 分类: IT职场 | 0 条评论 | 标签: 开源分享到:7性能优化之PHP优化征战Objective-CSpring入门篇走进SVG本文由 伯乐在线 - cucr 翻译,Lingfeng Ai 校稿。未经许可,禁止转载!英文出处:Sayan Chowdhury。

2015-01-08 13:54:47 1202

原创 刻苦铭心2014

2014年初,它悄悄走进我的生活,因为这一年我经历太多,所以当它要走的时候,我似乎有些留恋,虽然过得很艰难,但是苦过之后,才会有甘甜的感觉。年初的时候,朋友过来找我商量合作成立公司的事情,讨论我们的商业模式和盈利模式,讨论产品形态和市场拓展,这对于我之前知之甚少的人来说,基本都是在吸取经验的过程。讨论的过程很顺利,基本没有什么困难,因为我是初次创业,许多方面都比较少涉猎,我主要负责

2015-01-08 09:58:34 1432 4

原创 函数声明带参数与不带参数区别

说说下面两段代码的差异:代码一void fun(){printf("hello\n");}int main(){   fun(1,2);    return 0;} 代码二void fun(void){printf("hello\n");}int main(){   fun(1,2);

2015-01-07 14:20:47 6601

原创 检测系统是否大小端

int checkEnd(){  int i = 0x1234;  char *p = &i;  printf("p = %x\n",*p);  if( *p == 0x12 ){printf("big end\n");  }else{printf("little end\n");  }  return (*p == 0x12);}

2015-01-07 14:12:33 642

原创 求100的阶乘各位数之和

int factorial_ten(int n);int main(){factorial_ten(100);return 0;}int factorial_ten(int n){   int i;   double sum = 1;   for(i=1;i   {sum *= i;    }   printf("su

2015-01-07 14:01:31 1354

转载 Android AIDL——实现机制浅析

1.基于前面写的aidl使用,这段时间准备研究ActivityManager框架,对aidl进行了更深入的研究,因为android框架大量使用了进程通信机制,所以,在研究androidframework前认真研究一下AIDL的实现机制十分有必要的  2.前面讲了aidl是 Android Interface definitionlanguage的缩写,它是一种进程通信接口的描述,通过sdk

2015-01-06 23:33:49 626

转载 android进程间通信:使用AIDL

from: http://blog.csdn.net/saintswordsman/article/details/5130947欢迎阅读本文,你能关注本文,你知道你需要进程间通信、需要AIDL(以及Binder),那么可以默认你对这些概念已经有了一些了解,你(大致)知道它们是什么,它们有什么用,所以为了节约大家的眼力和时间,在此我不复制粘贴网上泛滥的博客或者翻译冗长的andr

2015-01-06 17:12:59 625

原创 FindBugs Java代码审查工具

简介编辑尽管如此,好的静态分析工具仍然是工具箱中的无价之宝。在这个由两部分组成的系列文章的第一部分中,高级软件工程师 Chris Grindstaff 分析了 FindBugs 如何帮助提高代码质量以及排除隐含的缺陷。代码质量工具的一个问题是它们容易为开发人员提供大量但并非真正问题的问题——即 伪问题(false positives)。出现伪问题时,开发人员要学会忽略工具的输出或者放弃

2015-01-05 23:34:47 6289

原创 lint 代码审查工具

基本介绍lint是最著名的C语言工具之一,是由贝尔实验室SteveJohnson于1979在PCC(PortableC Compiler)基础上开发的静态代码分析,一般由UNIX系统提供。与大多数C语言编译器相比,lint可以对程序进行更加广泛的错误分析,是一种更加严密的编译工具。最初,lint这个工具用来扫描C源文件并对源程序中不可移植的代码提出警告。但是现在大多数lint实用程序已经变

2015-01-05 23:30:27 2038

转载 当程序员老去

程序员日常工作  确认通过审查方案的目标,输入数据,分析师,监事,和客户的输出要求的项目要求。安排项目要求在编程序列分析要求;准备工作流程图和使用计算机知识的能力,题材,编程语言和逻辑图。编码工作流程的信息转换成计算机语言的项目要求。通过输入编码信息的计算机程序。确认程序操作进行测试,修改程序序列和/或代码。准备写操作指令供用户参考。保持历史记录,通过记录方案的制定和修订。维护客户的信心和

2015-01-03 20:46:26 714

原创 ubuntu 12.04编译vlc详细过程

本文介绍ubuntu下android-vlc编译的过程,主要记录了编译过程中碰的到问题及解决方案,如果可以为其他人编译vlc提供帮助,将是我的荣幸。一 编译环境搭建:1.下载配置NDK环境:使用版本android-ndk-r9下载地址:http://www.126disk.com/fileview_1441036.html2.下载配置SDK环

2015-01-03 11:24:48 5853 6

转载 VLC源码分析二

一、 VLC使用VLC的功能很强大,它不仅仅是一个视频播放器,也可作为小型的视频服务器,更可以一边播放一边转码,把视频流发送到网络上。最简单的,从界面打开一个文件播放,也可以在命令行下使用,如C:\ProgramFiles\VideoLAN\VLC>vlc.exe test.ts获取内置的帮助,会写到vlc-help.txt:C:\ProgramFiles\VideoLAN\VLC>v

2014-12-29 16:31:44 2217

转载 VLC源代码分析一

一、 VLC简介VLC的全名是VideoLan Client,是一个开源的、跨平台的视频播放器。VLC支持大量的音视频传输、封装和编码格式,完整的功能特性列表可以在这里获得http://www.videolan.org/vlc/features.html,下面给出一个简要的不完整的列表:操作系统:Windows、WinCE、Linux、MacOSX、BEOS、BSD访问形式:文件、DV

2014-12-29 16:28:45 9563

转载 spin_lock & mutex_lock的区别

spin_lock & mutex_lock的区别?本文由该问题引入到内核锁的讨论,归纳如下为什么需要内核锁?多核处理器下,会存在多个进程处于内核态的情况,而在内核态下,进程是可以访问所有内核数据的,因此要对共享数据进行保护,即互斥处理有哪些内核锁机制?(1)原子操作atomic_t数据类型,atomic_inc(atomic

2014-12-29 15:31:53 742

转载 JAVA反射机制

JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。JAVA反射(放射)机制:“程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言”。从这个观点看,Perl,Python,Ruby是动态语言,C++,Java,C#不是动态语言

2014-12-29 15:25:05 662

转载 Java动态代理

Java动态代理详解说到动态代理,顾名思义就是动态的代理(真是废话)。关于代理:想必大家都并不陌生,GOF的23种设计模式之一(结构型模式)。这里暂不多做介绍,有兴趣的可以关注我关于设计模式的文章。什么是动态代理:说起动态,其实不如先说什么是静态。所谓静态代理,个人理解为自己手写的代理类,或者用工具生成的代理类,或者别人帮你写的代理类(没说一样...)。总之,就是程

2014-12-29 14:43:56 1076

转载 临界区(Critical section)与互斥体(Mutex)的区别

1、临界区只能用于对象在同一进程里线程间的互斥访问;互斥体可以用于对象进程间或线程间的互斥访问。2、临界区是非内核对象,只在用户态进行锁操作,速度快;互斥体是内核对象,在核心态进行锁操作,速度慢。3、临界区和互斥体在Windows平台都下可用;Linux下只有互斥体可用。1、临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。2、互斥量:为协调共同对

2014-12-26 18:25:24 680

原创 程序员之35岁

经常看到有文章提到程序员到35岁后很少有从事研发,整日没日没夜的编码。不免整得自己开始担忧起前程来,毕竟自己也到了而立之年,难道再做几年到这个年龄后就要失业,因为现在没干到管理的岗位上,估计挺多到时做个SE。就因为这些担忧,所以我开始想着要跳槽涨薪,不然职业年龄已过还没赚到买房的钱,该怎么在这个高消费的城市站稳脚跟。我想很多在职场的朋友,都会有我的这种想法,对行业还没深入熟悉,就已经到了职业之末了

2014-12-26 16:42:47 663

原创 毕业5年考虑未来发展方向

从上大学到大学毕业后的几年时间里,我都是比较迷茫,不知道该将职业定位为什么方向,有时看到互联网兴起,就想去拥抱互联网。有时看到芯片原厂很红火,就想踏实专研芯片技术,在大多数人眼里,做系统级的开发都是大牛!也许总是觉得其他的方向都是好的,所以总觉得自己干的行业没那么好,总想着要转型,但,至今也没有什么改变。期间面试过多家公司,有互联网的,有芯片原厂的,但总觉得自己缺少相关经验,底气不足,因此结果也不

2014-12-26 16:41:35 830

转载 插入排序算法

插入排序Insertion sort      插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。 插入排序方法分直接插入排序和折半插入排序两种,这里只介绍直接插入排序,折半插入排序留到“查找”内容中进行。     图1演示了对4个元素进行直接插入排序的过程,共需要(a),(b),(c)三次插入。        sta

2014-12-26 16:40:25 621

原创 引用编程珠玑开篇介绍

基础的重要性(程序员之路)       这篇引自编程珠玑的,是很多程序员应该品读的,是很多程序员在工作过程中会经常遇到的。很多时候缺少扎实的基础就会引出许许多多的BUG,可能这些都是很基本的东西,但我们往往忽略最多的可能也是基础。基础打好了,任何难题都可以迎刃而解。相反,基础没打好,是很容易出现急躁不安,只会寻求百度,谷歌一类的单一的解决办法,从事的是拷贝的工作,并没有多大的技术含

2014-12-26 16:39:12 978

转载 计算机经典书籍

1.计算机科学概论计算机科学概论2.计算机数学基础高等数学线性代数概率论与数理统计离散数学及其应用离散数学教程(北大版)什么是数学具体数学:计算机科学基础3.C语言谭浩强C程序设计C primer plusThe C programming languageC和指针C专家教程C陷阱与缺陷c语言解惑C标准库你必须知道的4

2014-12-26 16:36:47 640

转载 转:要么滚回去,要么拼命

以前在墨尔本的一个室友,突然打电话给我,在我这里马上要凌晨3点的时候。他让我猜他现在在哪里,我说不是在墨尔本嘛,你还能去哪。他很神秘地说,不是哦,我现在在西班牙。然后我一下子就愣住了。因为很久之前我在一个人人相册里看到有关西班牙的照片的时候,曾经跟他说,西班牙那么漂亮自己将来一定要去一次。我没有想到的是,在我就要把自己曾经一闪而过的想法忘记的时候,他的电话就这么来了。到最后,站在我最想去的地方的人

2014-12-26 16:34:27 1261

转载 PTS PCR DTS

PTS PCR DTS 详解 MPEG-2 TS/PS同步原理一、引言     MPEG-2系统用于视音频同步以及系统时钟恢复的时间标签分别在ES,PES和TS这3个层次中。在ES层,与同步有关的主要是视频缓冲验证VBV(Video Buffer Verifier),用以防止解码器的缓冲器出现上溢或者下溢;在PES层,主要是在PES头信息里出现的显示时间标签

2014-12-26 16:33:01 916

转载 nand flash中oob ,ecc,bbt

0.NAND的操作管理方式     NAND FLASH的管理方式:以三星FLASH为例,一片Nand flash为一个设备(device),1 (Device) = xxxx (Blocks),1 (Block) = xxxx (Pages),1(Page) =528 (Bytes) = 数据块大小(512Bytes) + OOB 块大小(16Bytes,除OOB第六字节外,通常至少

2014-12-26 16:31:56 1574

转载 不安全的C函数

C 中大多数缓冲区溢出问题可以直接追溯到标准 C 库。最有害的罪魁祸首是不进行自变量检查的、有问题的字符串操作(strcpy、strcat、sprintf 和 gets)。一般来讲,象“避免使用 strcpy()”和“永远不使用 gets()”这样严格的规则接近于这个要求。今天,编写的程序仍然利用这些调用,因为从来没有人教开发人员避免使用它们。某些人从各处获得某个提示,但即使是优秀的开发人

2014-12-26 16:30:55 1960

转载 Android系统Recovery工作原理之使用update.zip升级过程分析

转载自  http://blog.csdn.net/mu0206mu         这篇及以后的篇幅将通过分析update.zip包在具体Android系统升级的过程,来理解Android系统中Recovery模式服务的工作原理。我们先从update.zip包的制作开始,然后是Android系统的启动模式分析,Recovery工作原理,如何从我们上层开始选择system up

2014-12-26 16:27:36 3791

转载 TS流分析

from: http://blog.csdn.net/zxh821112/article/details/17587215一 从TS流开始        数字电视机顶盒接收到的是一段段的码流,我们称之为TS(Transport Stream,传输流),每个TS流都携带一些信息,如Video、Audio以及我们需要学习的PAT、PMT等信息。因此,我们首先需要了解TS

2014-12-24 17:01:58 930

原创 高频头调试

松下高频头mn88473+mxl603调试折腾了几天,最终完成了mn88473的调试,头疼了这么多天,最后发现是硬件的问题。先说说tuner mxl603,其实很简单,mxl603初始化成功后,验证I2C是否OK,如果OK,锁频后是否有RF中频输出。可以打印Rx power看看是否有中频,一般正常值是-2800dB,表示28个dB。有中频输出后,就看看DEM

2014-12-24 13:54:51 2950

转载 C1X系列:type-generic macros

C1X系列:type-generic macros 承蒙转载,请保持本文的完整性,请匆用于商业用途。type-generic macros在新的C1X草案又称为Generic selection,根据它的提案和最新C1X草案,可将type-generic macros翻译成泛型宏或者通用类型宏。 type-generic macros是一种编译期技术,它允许开发

2014-12-24 13:52:44 719

VLC源码分析

详细介绍vlc编译,vlc各个模块介绍,vlc整体框架介绍

2014-12-29

mpeg2系统编码中文版

详细介绍TS包,音视频系统编解码,介绍系统编码句法和语法

2014-12-24

空空如也

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

TA关注的人

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