Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

Android深入浅出之Binder机制

Android深入浅出之Binder机制

一说明Android系统最常见也是初学者最难搞明白的就是Binder了,很多很多的Service就是通过Binder机制来和客户端通讯交互的。所以搞明白Binder的话,在很大程度上就能理解程序运行的流程。我们这里将以MediaService的例子来分析Binder的使用:ServiceManager,这是Android OS的整个服务的管理程序MediaService,这个程序里边注册了提供媒体播放的服务程序MediaPlayerService,我们最后...
Android Binder设计与实现 – 设计篇

Android Binder设计与实现 – 设计篇

摘要Binder是Android系统进程间通信(IPC)方式之一。Linux已经拥有管道,system V IPC,socket等IPC手段,却还要倚赖Binder来实现进程间通信,说明Binder具有无可比拟的优势。深入了解Binder并将之与传统 IPC做对比有助于我们深入领会进程间通信的实现和性能优化。本文将对Binder的设计细节做一个全面的阐述,首先通过介绍Binder通信模型和 Binder通信协议了解Binder的设计需求;然后分别阐述Bin...
浅谈Service Manager成为Android进程间通信(IPC)机制Binder守护进程之路

浅谈Service Manager成为Android进程间通信(IPC)机制Binder守护进程之路

上一篇文章Android进程间通信(IPC)机制Binder简要介绍和学习计划简要介绍了Android系统进程间通信机制Binder的总体架构,它由Client、Server、Service Manager和驱动程序Binder四个组件构成。本文着重介绍组件Service Manager,它是整个Binder机制的守护进程,用来管理开发者创建的各种Server,并且向Client提供查询Server远程接口的功能。 相关阅读:Android进程间通信(IP...
浅谈Android系统进程间通信(IPC)机制Binder中的Server和Client获得Service Manager接口之路

浅谈Android系统进程间通信(IPC)机制Binder中的Server和Client获得Service Manager接口之路

在前面一篇文章浅谈Service Manager成为Android进程间通信(IPC)机制Binder守护进程之路中,介绍了Service Manager是如何成为Binder机制的守护进程的。既然作为守护进程,Service Manager的职责当然就是为Server和Client服务了。那么,Server和Client如何获得Service Manager接口,进而享受它提供的服务呢?本文将简要分析Server和Client获得Service Mana...
Android系统进程间通信(IPC)机制Binder中的Server启动过程源代码分析

Android系统进程间通信(IPC)机制Binder中的Server启动过程源代码分析

在前面一篇文章浅谈Android系统进程间通信(IPC)机制Binder中的Server和Client获得Service Manager接口之路中,介绍了在Android系统中Binder进程间通信机制中的Server角色是如何获得Service Manager远程接口的,即defaultServiceManager函数的实现。Server获得了Service Manager远程接口之后,就要把自己的Service添加到Service Manager中去,...
开源C++函数库Boost内存池使用与测试

开源C++函数库Boost内存池使用与测试

Boost库是一个可移植的开源C++函数库,鉴于STL(标准模板库)已经成为C++语言的一个组成部分,可以毫不夸张的说,Boost是目前影响最大的通用C++库。Boost库由C++标准委员会库工作组成员发起,其中有些内容有望成为下一代C++标准库内容,是一个“准”标准库。 Boost内存池,即boost.pool库,是由Boost提供的一个用于内存池管理的开源C++库。作为Boost中影响较大的一个库,Pool已经被广泛使用。 1. 什么是内存池 ...
Linux QT摄像头采集图像

Linux QT摄像头采集图像

Linux下利用各种装备是一件令人兴奋的事情。在Unix的世界里,用户与硬件打交待总是容易的。最近笔者在Linux下搞了摄像头的开发,有一点感引发于这里。Linux中垄断一个装备等闲都是敞开(open),读取(read)和关闭(close)。利用Read的大多是一些字符型装备,然而对于揭示屏可能摄像头这种字符装备而已,挨个字的读写将使贴切系调用变得频繁,众所周之,系统调用对于系统而已是个不小的开支。于是有内存照射(mmap)等物,本例中将解说在Linux下...
OK6410之Linux-2.6.39.2内核的移植心得

OK6410之Linux-2.6.39.2内核的移植心得

对于嵌入式Linux,本人基本属于还不入流的一类,本来也没打算自己去移植Linux内核的,毕竟基本移植再加搞定所有驱动移植是一个很需要时间的过程,但是由于飞凌的售后技术客服服务实在让我无语了,由于买开发板时,飞凌官方给的是LINUX2.6.28内核,当时用起来还是蛮不错的,至少满足我的NFS_ROOT挂载启动,好方便开发,前几天无意看到官网的OK6410的Linux内核更新到了LINUX2.6.36,于是尝尝鲜嘛,可哪知NFS启动死活就不成功,在飞凌论坛上...
Android开发基础:自定义下拉列表样式(spinner的用法)

Android开发基础:自定义下拉列表样式(spinner的用法)

spinner下拉菜单是Android中常用的控件之一。今天我们通过一个demo来理解下拉菜单的制作方法。在此之前,首先要理解adapter的用法及含义。adapter是view和data之间的桥梁,adapter将数据封装后显示到view上。ArrayAdapter是最简单的Adapter,此外还有SimpleAdapter和SimpleCursorAdapter。 使用simpleAdapter的数据用一般都是HashMap构成的List,list的每...
Android封装WebService的简单调用并且实时更新新UI

Android封装WebService的简单调用并且实时更新新UI

最近做一个电力项目的客户端,要求是全部使用webservice调用他们的服务端的数据,然后展现出来。所以我就封装了一个调用webservice的类,这个还是比较的简单的类,没有多牛的地方。其中,项目中一个模块就是实时获取运营总览的一些情况,这又用到handler。下面就是相关代码,代码还有许多要完善的地方,请指出。publicclassHandlerService{privateStringjsonUrl;//webservice查询地址 privateS...
Android的线程利器之AsyncTask

Android的线程利器之AsyncTask

java自带的线程已经慢不错的了,在Android里又进了一步。一开始,在java传统的Thread和Runnable里加上了handler就已经蛮不错的了,handler作为信息调配的中转站,让人用的很输入,线程就只管去计算,分配的事就不要你做了。我写的东西有点杂乱无章,呵呵。再后来就到了高级一点的HandlerThread,把资源费配的Handler和线程Thread放在了一起,我比较喜欢的是,重新启动一个线程非常的方便。newHandlerThrea...
Android多点触摸实现

Android多点触摸实现

其实多点触摸并没有想象中的那么神奇。处理2个手指一般就已经够用,放上3个手指显得有点滑稽,依赖更多手指进行操作绝对不是一个好的主意。理论上 Android可以处理 多达256 个手指的触摸,大概只有章鱼哥能享受这种技术带来的便利。就编程人员来说,编写多点触摸和单点触摸的方式几乎一模一样。其奥秘在于MotionEvent不仅可以封装单点触摸的消息,也可以封装多点触摸的消息。在处理单点触摸中,我们用到MotionEvent.ACTION_DOWN、ACTION...
Android 开发之如何使用Eclipse Debug调试程序详解

Android 开发之如何使用Eclipse Debug调试程序详解

1.在程序中添加一个断点如果所示:在Eclipse中添加了一个程序断点在Eclipse中一共有三种添加断点的方法第一种: 在红框区域右键出现菜单后点击第一项 Toggle Breakpoint 将会在你右键代码的哪一行添加一个程序断点 (同样的操作方可取消程序断点)第二种: 在红框区域双击鼠标左键将会在你双击代码的哪一行添加一个程序断点 (同样的操作方可取消程序断点)第三种 :在光标停留的地方使用快捷键 Ctrl + Shift + B 将会在光标停留的这...
<< 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 >>