关闭

Android 6.0 如何添加完整的系统服务(app-framework-kernel)

如何在Android 6.0上添加一个系统服务,APP如何通过新增的系统服务访问底层驱动。 在这学习过程中,收获颇多,并结合学习了《Embeded Android》--Karim Yaghmour 一书中的 Appendix B. Adding Support For New Hardware章节,受益匪浅,讲述了如何添加一个完整的系统 服务(app->framework->kernel)。...
阅读(10) 评论(0)

Android中JNI 的一些常用说明 JNI_OnLoad registerNatives registerNativeMethods

Android JNI和NDK关系  1、什么JNI Java Native Interface (JNI)标准是java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI 是本地编程接口,它使得在 Java 虚拟机 (VM) 内部运行的 Java 代码能够与用其它编程语言(如 C、C++ 和汇编语言)编写的应用程序和库进行交互操作。 上面过程分为2个部分: 第一、用C语言...
阅读(18) 评论(0)

Android 电源管理 -- wakelock机制

Wake Lock是一种锁的机制, 只要有人拿着这个锁,系统就无法进入休眠, 可以被用户态程序和内核获得. 这个锁可以是有超时的 或者 是没有超时的, 超时的锁会在时间过去以后自动解锁。如果没有锁了或者超时了, 内核就会启动休眠的那套机制来进入休眠. PowerManager.WakeLock 有加锁和解锁两种状态,加锁的方式有两种:     第一种是永久的锁住...
阅读(17) 评论(0)

标准输入输出、错误输出、重定向标准输出

再来看看 >& 操作符: 重定向操作符 描述 > 将命令输出写入到文件或设备(如打印机),而不是命令提示符窗口或句柄。 从文件而不是从键盘或句柄读入命令输入。 >> 将命令输出添加到文件末尾而不删除文件中已有的信息。 >& 将...
阅读(32) 评论(0)

关于struct file 结构下 private_data 数据结构z作用

这个是Linux下连接VFS文件系统框架和不同文件/文件系统底层实现之间的一个核心数据结构,虽然它只是一个指针,但是一个指针可以解决所有问题。我们回想一下用户态线程的创建结构,函数的入口同样是一个void*指针,而千言万语汇成一根指针,诗可以兴、可以观、可以群、可以怨,可以解决所有问题。 因为file是VFS框架的一个基本概念,它要支持文件操作结构,例如open/read/write/relea...
阅读(48) 评论(0)

如何分析D状态进程

在使用top查看进程状态时,我们有时候会看到D状态的进程。 w: S -- Process Status The status of the task which can be one of: ’D’ = uninterruptible sleep ’R’ = running ’S...
阅读(30) 评论(0)

open 总是失败 返回-1 android6.0 selinux策略问题

在做android 6.0 的tp 唤醒功能的时候, 在打开/dev/input/event4 总是失败 返回-1 想到打印失败的err 值 查看官方文档,open函数返回值的说明: -1 if an error occurred (in which case, errno is set appro-priately) 如果返回的是-1,那么errno就会被设置...
阅读(213) 评论(0)

Android4.4——Ubuntu 12.04的make3.8、gcc-4.4.7和g++-4.4.7安装方法

下载地址:make-3.81.tar.gz2 一、安装make-3.81 1、解压make-3.81.tar.bz2 tar -vxf make-3.81.tar.bz211 2、进入make-3.81目录并执行./configure cd ./make-3.81 ./configure1212 3、执行玩后make-3.81目录会多出一个build.sh文件,执行bu...
阅读(403) 评论(0)

linux 文件属性与权限

内容源于: 鸟哥的linux私房菜 链接如下: Linux 的文件权限与目录配置 Linux 磁盘与文件系统管理 Linux 文件与目录管理 目录 Linux文件属性 [文件属性解析(SUID/SGID/SBIT)][隐藏属性] 修改文件属性 [chgrp][chown][chmod][umask] 目录与文件之权限意义 [权限对文件的意义][权限对目录...
阅读(159) 评论(0)

解决Linux中出现Too many open files

Too many open files 问题出现有两种情况: 一种是在搜索的时候出现,多半是由于索引创建完毕之后被移动过,如果创建索引的时候不出现该错误,搜索的时候也一般是不会出现的。如果出现了,有两种处理办法,一种是修改合并因子和最小合并因子,并且使用 IndexWriter.Optimize() 优化索引,这样会将索引文件数量减少到文件系统限制之内;另外一种办法是修改操作系统的打开文件数量...
阅读(129) 评论(0)

Android添加一个开机完成后执行的脚本

在调式一个模块驱动的时候加载驱动模块失败,但是在系统起来后可以手动加载成功,因此想到在android  启动完成后通过 执行脚本来加载驱动模块 1.编写相关的脚本,比如device/softwinner/common/prebuild/tools 在该目录下面, 新建一个脚本文件insmod.sh,在产品.mk文件里面 将该脚本拷贝到system/bin/目录下面 ,。 : 可以手动...
阅读(354) 评论(0)

深入分析AIL语言及init.rc文件

nit.rc简介 init.rc文件由系统第一个启动的init程序进行解析.它由”Android Init Language”语言编写而成.init.rc文件可以在你android设备根目录下找到.还记得我们上次编译的Android源码么?如果你已经编译过源码了,那么可以在out/target/generic/root/目录下找到该文件. 要想读懂init.rc文件,首先要掌握Andr...
阅读(153) 评论(0)

外接显示器分辨率调整,ubuntu14.04

Ubuntu 14.04 外接显示器分辨率调整,ubuntu14.04 文章若有价值,欢迎转载,转载请写明出处,谢谢合作http://www.cnblogs.com/rossoneri/p/4068274.html  最近按照提示更新了一下系统,安装了100多M的安装包,结果系统又读不出外接显示器的信息了,开机显示vga-1:probed a monitor but no|inva...
阅读(110) 评论(0)

Android默认系统声音/大小修改及配置

在做定制需求的时候,需要修改系统通知的声音,将其禁用掉,避免第三方应用发送通知时,声音很大,吓着用户。索性就把通知声音关掉。下面就说说关闭声音的几种方法,以及修改系统默认声音的方法。 1. 直接修改系统层默认的声音大小 在系统代码 frameworks/base/media/java/android/media/AudioService.java 的开头定义了两个数组,一个 MAX_S...
阅读(2223) 评论(1)

Android dvm的进程和Linux的进程, 应用程序的进程是否为同一个概念

DVM指dalivk的虚拟机。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。而每一个DVM都是在Linux 中的一个进程,所以说可以认为是同一个概念。 什么是android DVM:Dalvik是Google公司自己设计用于Android平台的Java虚拟机,每一个Dalvik 应用作为一个独立的Linux 进程执行。独立的进程可以防止在虚拟机...
阅读(162) 评论(0)

androd 按键列表

KEYCODE列表 电话键   KEYCODE_CALL 拨号键 5 KEYCODE_ENDCALL 挂机键 6 KEYCODE_HOME 按键Home 3 KEYCODE_MENU 菜单键 82 KEYCODE_BACK 返回键 4 ...
阅读(103) 评论(0)

linux 内核面试问题

1) Linux中主要有哪几种内核锁? 2) Linux中的用户模式和内核模式是什么含意? 3) 怎样申请大块内核内存? 4) 用户进程间通信主要哪几种方式? 5) 通过伙伴系统申请内核内存的函数有哪些? 6) 通过slab分配器申请内核内存的函数有? 7) Linux的内核空间和用户空间是如何划分的(以32位系统为例)? 8) vmalloc()申请的内存有什么特点? ...
阅读(186) 评论(0)

虚拟地址与物理地址之间的关系

转自:http://learn.akae.cn/media/ch17s04.html 4. MMU 请点评 现代操作系统普遍采用虚拟内存管理(Virtual Memory Management)机制,这需要处理器中的MMU(Memory Management Unit,内存管理单元)提供支持,本节简要介绍MMU的作用。 首先引入两个概念,虚拟地址和物理地址...
阅读(139) 评论(0)

linux驱动的异步同步通知机制

转载:http://blog.csdn.net/z1106609486/article/details/51461058 在设备驱动中使用异步通知可以使得对设备的访问可进行时,由驱动主动通知应用程序进行访问。因此,使用无阻塞I/O的应用程序无需轮询设备是否可访问,而阻塞访问也可以被类似“中断”的异步通知所取代。异步通知类似于硬件上的“中断”概念,比较准确的称谓是“信号驱动的异步I/O”。...
阅读(286) 评论(0)

linux 中断机制

转自http://my.oschina.net/fzliu/blog/33028 尽管有些设备仅通过它们的I/O寄存器就可以得到控制,但现实中的大部分设备却比这复杂一些。设备需要与外部世界打交道,如旋转的磁盘,绕卷的磁带,远距离连接的电缆等。这些设备的许多工作通常是在与处理器完全不同的时间周期内完成的,并且总是要比处理器慢。这种让处理器等待外部事件的情况总是不能令人满意,所以必须有一种方法可...
阅读(115) 评论(0)
    个人资料
    • 访问:4914次
    • 积分:123
    • 等级:
    • 排名:千里之外
    • 原创:5篇
    • 转载:15篇
    • 译文:0篇
    • 评论:1条
    文章分类
    最新评论