Welcome 微信登录

首页 / 操作系统 / Linux

Oprofile在Android中的应用

Oprofile在Android中的应用

1 oprofile 相关介绍 Oprofile 是用于 Linux 的若干种评测和性能监控工具中的一种。它可以工作在不同的体系结构上,包括 IA32 、 IA64 和 AMD Athlon 系列。它的开销小,将被包含在( Linux ) 2.6 版的内核中。 Oprofile 可以帮助用户识别诸如循环的展开、高速缓存的使用率低、低效的类型转换和冗余操作、错误预测转移等问题。它收集有关处理器事件的信息,其中包括 TLB 的故障、停机、存储器访问、位于 D...
ARM-Linux驱动--RTC(实时时钟)驱动分析

ARM-Linux驱动--RTC(实时时钟)驱动分析

硬件平台:FL2440(S3C2440)内核版本:Linux 2.6.28主机平台:Ubuntu 11.04内核版本:Linux 2.6.39交叉编译器版本:arm-linux-gcc 3.4.11、实时时钟概述实时时钟(RTC)单元可以在断电的情况下使用纽扣电池继续计时工作。RTC使用STRB/LDRB ARM操作传输二进制码十进制数的8位数据给CPU。其中的数据包括秒、分、时、日期、天、月、年的时间信息。可以执行报警功能。2、实时时钟操作下面是RTC模...
Android 手机定位慢的解决方法

Android 手机定位慢的解决方法

Android手机定位 做移动互联网就不太可能不碰手机端的开发。上周为了项目需要,俺也挽袖子抡胳膊开始写起了android程序,还好有java基础,倒也上手快,写了几个小程序,主要都是关于定位方面的。网上也搜得到一些相关的文章和教程,但给出的例子效果不太好,而且感觉只有其表,却不明其理。因此写出此文,分享一些我的经验。虽然是以android为主,但是我想对其它平台的开发也应该有些帮助。这篇文章侧重于制定一个合理的定位方案。手机定位的方式先科普一些基础知识吧...
Linux下编译安装GCC

Linux下编译安装GCC

最近研究网络编程,最后发现还是unix/linux下相关资源比较多,研究起来方便,所以最近在安装相关开发环境,第一步当然是安装gcc。用rpm包安装,我想很多人会,没什么好说的。这里介绍从源代码编译安装,我的安装平台为Fedora11-x86_64。首先当然是下载相关源代码了。我下载了gmp-4.3.2.tar.bz2,mpfr-2.4.2.tar.bz2,gcc-4.4.3.tar.bz2这三个包。gcc大家都认识,gmp,mpfr这两个是gcc依赖的,...
Python学习笔记之yield

Python学习笔记之yield

Python编程语言作为一款比较新的程序应用语言,其中有很多方法是开发人员需要慢慢熟练掌握的。比如今天为大家介绍的Python yield就是一个比较特殊的应用。yield的英文单词意思是生产,刚接触Python的时候感到非常困惑,一直没弄明白Python yield的用法。只是粗略的知道yield可以用来为一个函数返回值塞数据,比如下面的例子:defaddlist(alist): foriinalist: yieldi+1取出alist的每一项,然后把i...
Python 收发Email的实现

Python 收发Email的实现

关于Email的基础知识就不说,直接进入python主题。一 发送Email简单邮件传输协议(SMTP)大家应该都很熟悉了,在python中也有一个smtplib的模块来实现发送邮件的功能,一般的过程是:1 连接到邮件服务器2 登陆(如果需要的话)3 发出服务请求(比如发送)4 退出在SMTP中我们主要用到的方法是:sendmail(from,to,msg[,mopts,ropts]) 是把msg从from发给to,ESMTP设置(mopts)和收件人设置...
Android进程间通信(IPC)机制Binder简要介绍和学习计划

Android进程间通信(IPC)机制Binder简要介绍和学习计划

我们知道,在Android系统中,每一个应用程序都是由一些Activity和Service组成的,一般Service运行在独立的进程中,而不同的Activity有可能运行在同一个进程中,也可能运行在不同的进程中。这很自然地想到,不在同一个进程的Activity和Service是如何通信的呢?毕竟它们要协作在一起来完成一个完整的应用程序功能。这就是本文中要介绍的Android系统进程间通信机制Binder了。我们知道,Android系统是基于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. 什么是内存池 ...
<< 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 >>