自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

弹-room

软件工程 软件架构 模式设计 项目管理

  • 博客(93)
  • 收藏
  • 关注

原创 将 ChinaUnix Blog 同步于 CSDN Blog 进行中 ......

jhluroom.blog.chinaunix.net

2011-09-04 14:26:58 866

原创 我万事追求苦尽甘来,但一直解决不了如何先洗碗再享受美餐

我万事追求苦尽甘来,但一直解决不了如何先洗碗再享受美餐, 期待中...

2011-08-20 10:08:11 428

原创 RTP TRCP API

1 主要介绍简介RTP是实时传输协议的缩写,用来定义在因特网上传输音频和视频的标准包格式,在RFC 1889中予以定义。它由音频和视频传输工作组制订,并于1996年颁布。RTP和RTCP连接紧密,RTP实施实际数据的传输,RTCP则就服务质量做出反馈。RTP定义实时传输协议(RTP)为数据提供了具有实时特征的端对端传送服务,如在组播或单播网络服务下的交互式视频音频或模拟

2011-12-01 20:29:16 3087

原创 IPB帧 编码顺序 解码顺序 显示顺序

I frame :帧内编码帧 又称intra picture,I 帧通常是每个 GOP(MPEG 所使用的一种视频压缩技术)的第一个帧,经过适度地压缩,做为随机访问的参考点,可以当成图象。I帧可以看成是一个图像经过压缩后的产物。P frame: 前向预测编码帧 又称predictive-frame,通过充分将低于图像序列中前面已编码帧的时间冗余信息来压缩传输数据量的编码图像,也叫预测帧;

2011-11-29 18:57:25 3171

原创 GIF文件格式与结构

GIF是图像交换格式(Graphics Interchange Format)的简称,它是由美国CompuServe公司在1987年所提出的图像文件格式,它最初的目的是希望每个BBS的使用者能够通过GIF图像 文件轻易存储并交换图像数据,这也就是它为什么被称为图像交换格式的原因了。GIF文件格式采用了一种经过改进的LZW压缩算法,通常我们称 之为GIF-LZW算法。这是一种无损的压缩算法,压缩

2011-11-09 16:48:04 757

转载 信号量机制 优先级翻转 解决

1965年,荷兰学者Dijkstra提出了利用信号量机制解决进程同步问题,信号量正式成为有效的进程同步工具,现在信号量机制被广泛的用于单处理机和多处理机系统以及计算机网络中。信号量S是一个整数,S大于等于零时代表可供并发进程使用的资源实体数,但S小于零时则表示正在等待使用临界区的进程数。Dijkstra同时提出了对信号量操作的PV原语。P原语操作的动作是:  (1)S减1;

2011-11-03 10:10:48 2157

转载 linux共享内存

共享内存共享内存是进程间通信中最简单的方式之一。共享内存允许两个或更多进程访问同一块内存,就如同 malloc() 函数向不同进程返回了指向同一个物理内存区域的指针。当一个进程改变了这块地址中的内容的时候,其它进程都会察觉到这个更改。快速本地通信因为所有进程共享同一块内存,共享内存在各种进程间通信方式中具有最高的效率。访问共享内存区域和访问进程独有的内存区域一样快,并不需要通过系统

2011-11-03 09:25:02 592

转载 C++笔试面试宝典

1.new、delete、malloc、free关系delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要

2011-10-29 15:26:08 609

转载 算法(C++实现)

/////////////////////////// // // // 堆栈数据结构 stack.h // // // /////////////////////////// #include templateclass Stack; template class StackNode { friend class Stack

2011-10-29 14:53:11 441

转载 全面整理的C++面试题

1.是不是一个父类写了一个virtual 函数,如果子类覆盖它的函数不加virtual ,也能实现多态?virtual修饰符会被隐形继承的。private 也被集成,只事派生类没有访问权限而已。virtual可加可不加。子类的空间里有父类的所有变量(static除外)。同一个函数只存在一个实体(inline除外)。子类覆盖它的函数不加virtual ,也能实现多态。在子类的空间里,有父类的

2011-10-29 14:46:58 370

转载 如何在用户空间使用container_of宏

****************************************container_of(pointer,container_type,container_field);这个宏需要一个container_field字段的指针,该字段包含在container

2011-10-17 20:31:06 615

转载 Linux操作系统内核中工作队列的操作

本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn1. 前言工作队列(workqueu

2011-10-17 20:24:22 593

转载 Linux系统启动的标准流程

系统的启动是指从计算机加电到显示用户登陆提示的整个过程。我们将在这里对整个流程以及关系到的一些内容做讨论。过程主要可以分为两个阶段:载入内核和准备运行环境,我们分别进行讨论。本部分的讨论只基于i386硬件架构,但大部分内容是有共通性的。载入内核(将内核载入内存,并将控制权传递

2011-10-17 20:21:15 436

转载 使用 kexec 快速重启 Linux

即使您的工作不要求您每天多次重新启动您的 Linux 机器,等待系统启动也实在是一件枯燥的事情。因而有了 kexec。本质上讲,kexec 是一个让您可以重新启动到一个新 Linux 内核的快速重新引导功能部件 -- 不必通过引导装载程序。更快速的重新启动即使对于正常运行时间并不

2011-10-17 20:18:48 774

转载 系统是如何将int 0x80中断 与 system_call 联系起来的?

因为我们把int 0x80中断时需要执行程序的地址设置为system_call.s的代码了. 在实地址模式下,中断的地址称为中断向量.而在保护模式下,则使用功能更强大的中断门(陷阱门)描述符的概念. 门描述符中除了包括"中断向量”的信息外,还包括一些属性信息。对于0.11

2011-10-17 20:16:09 1396

转载 linux下分配G级物理内存的方法-alloc_bootmem()

2.6.22.9的内核使用alloc_bootmem函数在内核代码  init/main.c文件中asmlinkage void __init start_kernel(void){ char * command_line; exte

2011-10-17 20:12:31 1348

转载 内核抢占会发生的几种情况

内核抢占会发生的几种情况: 1、中段程序返回,眀返回在内核空间之前2、内核代码再一次具有可抢占性的时候3、内核中的任务显示的调用schedule()函数4、内核中的任务阻塞

2011-10-17 20:10:38 614

转载 用户抢占发生的几种情况

用户抢占发生的几种情况: 1、从系统返回到用户空间2、从中段程序返回到用户空间

2011-10-17 20:09:53 510

转载 Linux内核中task_struct的中文介绍(2.4内核的)

1. 调度数据成员(1) volatile long states;表示进程的当前状态: TASK_RUNNING:正在运行或在就绪队列run-queue中准备运行的进程,实际参与进程调度。 TASK_INTERRUPTIBLE:处于等待队列中的进程,待资源有效时

2011-10-17 20:08:45 392

转载 为linux添加系统调用

也就是为linux增加一个api函数。   1: cd /usr/src/linux/kernel   2: vi sys.c 并添加如下一个函数:   asmlinkage int sys_mycall(int num) { return num;}   3.

2011-10-17 20:05:07 466

转载 共享中断

Linux可以让多个设备共享一个中断号,而且共享同一中断的中断处理程序形成一个链表,内核对每个中断处理程序都要执行,那么,没有产生中断的设备本该靠边站的,它的中断处理程序也被执行了。 实际上:共享的处理程序与非共享的处理程序在注册和运行方式上比较相似,但差异主要有以下三处

2011-10-17 20:03:52 1178

转载 操作系统--虚拟内存、逻辑地址、线性地址、物理地址

逻辑地址(Logical Address) 是指由程序产生的与段相关的偏移地址部分。例如,你在进行C语言指针编程中,可以读取指针变量本身值(&操作),实际上这个值就是逻辑地址,它是相对于你当前进程数据段的地址,不和绝对物理地址相干。只有在Intel实模式下,逻辑地址才和物理地址相

2011-10-17 20:00:41 581

转载 LINUX内核-等待队列

一、定义:/include/linux/wait.hstruct __wait_queue_head {spinlock_t lock;struct list_head task_list;};typedef struct __wait_queue_head wa

2011-10-17 19:53:45 449

转载 BootLoader与Linux内核的参数传递

在嵌入式系统中,BootLoader 是用来初始化硬件,加载内核,传递参数。因为嵌入式系统的硬件环境各不相同,所以嵌入式系统的BootLoader 也各不相同,其中比较通用的是U-Boot,它支持不同的体系结构,如ARM,PowerPC,X86,MIPS 等。本文着重介BootL

2011-10-17 19:52:13 414

原创 QT webkit plugin 开发示例

一、Fancybrowser 浏览器开发1、webkitplugininterface.h#ifndef WEBKITPLUGININTERFACE_H#define WEBKITPLUGININTERFACE_H#include class WebKitPl

2011-09-18 10:55:20 2241 1

原创 Qt OpenGL三维绘图

简介OpenGL是为三维绘图提供的标准应用编程接口。OpenGL处理的仅仅是三维绘图方面,而很少或是根本不提供图形用户界面编程方面的支持。OpenGL*应用程序的用户界面必须由其它工具包创建,比如在X平台下的Motif,在Windows平台下的微软基本类库(M

2011-09-12 17:03:22 2094

原创 Qt经典出错信息之undefined reference to `vtable for classn

这个出错信息太常见了,用过Qt两个月以上的朋友基本上都能自己解决了,因为太经典了,可以给新手参考。出错信息一般类似:undefined reference to `vtable for classname MyWidget`,在执行make命令后出现。出错原因

2011-09-12 17:00:43 664

原创 Directfb程序编译

DFB程序有两种编译方法,下面我们以编译当前目录下的main.c函数为例进行说明:1. 使用pkg-config进行编译gcc `pkg-config --libs directfb` main.c 到PKG_CONFIG_PATH目录下去查找

2011-09-12 16:57:51 622

转载 DirectFB 综述

目标最小的内存占用最大可能的硬件加速支持高级图形操作,如 multiple alpha blending mode无内核修改无依赖库 (除了 libc)满足 MHP 的需要图形操作DirectFB 支持以下图形功能,可硬件实现(若c

2011-09-12 16:57:02 790

原创 DirectFB代码导读

DirectFB是一个庞大的系统,对它进行彻底分析要花不少时间。幸好多数情况下,只要弄清楚它的基本架构,再重点读一些关键的代码,也就差不多了。前几个月为了完善DFB的窗口管理器,我花了一些时间去研究DFB的架构。把其中一些经验写到这里,供有兴趣的朋友参考。总的说来,DFB

2011-09-12 16:55:11 603

原创 DFB图片显示程序

0. 每个DFB程序都需要一个IDirectFB主接口,大部分程序还需要一个最上层的,用于显示图片或视频的IDirectFBSurface,前者一般命名为dfb,后者一般叫primary,当然也有不喜欢这样取命字的。1.将要显示的图片及其相关信息通过createimage

2011-09-12 16:51:37 1499

原创 Git和Repo取得Android源代码

Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的分布式版本控制软件,它不同于Subversion、CVS这样的集中式版本控制系统。在集中式版本控制系统中只有一个仓库(repository),许多个工作目录(working copy

2011-09-12 16:48:47 434

原创 Android 启动过程分析

1. Boot系统初始化, 具体过程参见(system\core\init\Init.c)中的main函数,这时候,手机或者模拟器出现的画面是一个console,显示“ANDROID”msg。2. 初始化成功后,就开始mounting系统,具体参见(system\core

2011-09-12 16:47:52 557

原创 Android /System 目录结构介绍

\system\app这个里面主要存放的是常规下载的应用程序,可以看到都是以APK格式结尾的文件, 在这个文件夹下的程序为系统默认的组件,自己安装的软件将不会出现在这里,而是\data\文件夹中。\system\app\AlarmClock.apk 闹钟\sy

2011-09-12 16:47:02 724

原创 ANDROID 底层 NDK 开发

有关ANDROID--底--NDK开发的相关资料可以参考“【eoe特刊】第七期:NDK”,这一期刊,我个人认为这一期是写的很好。

2011-09-12 16:45:51 501

原创 Android HAL 研究开发 FOR LED

Led.h    hardware\modules\include\Mokoid#include ……….struct led_module_t { struct hw_module_t common;};struct led_control_device_t

2011-09-12 16:44:50 526

转载 Android 的 HAL 技術

Android 的 HAL 技術, #1: 簡介與發展現況jollen 發表於 October 8, 2009 2:05 AMAndroid 的 HAL(硬體抽像層)是 Google 因應廠商「希望不公開源碼」的要求下,所推出的新觀念,其架構如下圖。雖然 HA

2011-09-12 16:37:21 694

原创 Android 使用 aidl 文件创建服务示例

android中的服务与其他软件的服务可能有些不同,它用来实现在后台执行长期的任务,并且与前台界面解耦.现在来实现一个HelloWorld级的服务以及使用这个服务,创建一个服务的步骤如下:1.编写aidl文件,在这个文件中提供了服务所提供的方法的接口,文件的扩展名为aidl,

2011-09-12 16:35:35 531

原创 Android AIDL 分析 例子 源码

在Android中, 每个应用程序都可以有自己的进程. 在写UI应用的时候, 经常要用到Service. 在不同的进程中, 怎样传递对象呢? 显然, Java中不允许跨进程内存共享. 因此传递对象, 只能把对象拆分成操作系统能理解的简单形式, 以达到跨界对象访问的目的. 在J2E

2011-09-12 16:18:26 359

转载 Android 应用程序快速启动的秘诀

Android系统框架和上层应用是类java(不是正统的sun java)开发的,实现了自己的java虚拟机dalvik,既然用java虚拟机和java开发,一般都会认为效率低下。其实不然,在基本主流的智能手机的软件平台上,android的执行速度是最快的。那么and

2011-09-12 16:10:17 410

空空如也

空空如也

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

TA关注的人

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