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

首页 / 操作系统 / Linux

Android系统插入OTG后不休眠

Android系统插入OTG后不休眠

这两天一直忙着搞插入OTG死机的问题。有时候机器上面插入个U盘,鼠标,或者硬盘,如果这个时候没有接充电器的话,有很大的概率机器直接死机了,而且必须插入充电器才能开机。实测电池电压基本为0,原来是电池过流保护了。由于采购的电池保护点过低(1.5A的时候就挂了),只能想办法把输出电流降到最低了,尝试过很多方法,调低背光亮度可以有效解决在正常使用中死机,但是插入OTG死机的问题一直没有得到解决。硬件部同事说在插入OTG的时候,充电芯片上仍然有500mA的电流输入...
Linux发行版内核与标准内核编译经验

Linux发行版内核与标准内核编译经验

由于所有的系统不管bsd还是Linux其核心就是kernel,它负责进程调度,内存分配,驱动程序,安全子系统,网络,文件系统等所有核心关键任务,所以本人对内核有着狂热的折腾精神,编译过netbsd,openbsd,freebsd,debian,Oracle Linux.CentOS就差没去定制编译windows内核了呵呵,经过多次的失败与成功总结了不少的经验,特此分享给大家:1,所有的bsd的系统内核编译很简单,无非就是找到GENREIC内核配置文件,看N...
Android中shape绘制背景图

Android中shape绘制背景图

今天无意发现了Android中很好的一款绘制背景图片的xml布局吧!shape。使用shape可以很好的替代以前自己四处找背景图片啦!一张图大家看看效果这张背景就是使用shape绘制的哦。几行代码就可以搞定,个人感觉比使用图片好多了。新建一个shape的xml在drawable文件夹下。建立android xml的时候选择drawable,下面就有一个shape的选择。gradient为颜色的渐变,corners为边缘的圆角。<?xmlversion...
Java 文件读取写入的编码问题

Java 文件读取写入的编码问题

关于编码解码的知识背景:内 编码 --->> 目容 <<----解码 标编码解码跟翻译语言一样。内容是本质的东西,无论怎么编码,它所表达的内容不能变。而无论怎么编码解码,表现形式都是字节数组,它的值会随着编码解码方式的不同而不同。编码解码要做的,就是对这些byte数组进行操作,将它还原成我们需要的内容。对于一段汉字的编码解码,汉字本身就是内容文件,我们需要将他们用数字的形式表示,即编码为对应的二进制串(目标)常见的字符集:ANSI ...
Java:方法的虚分派(virtual dispatch)和方法表(method table)

Java:方法的虚分派(virtual dispatch)和方法表(method table)

背景知识:java 字节码基本框架,jvm基本框架多态的机制。Virtual Dispatch首先从字节码中对方法的调用说起。java的bytecode中对方法的调用实现分为四种情况:1.invokevirtual 为最常见的情况,包含virtual dispatch机制;2.invokespecial是作为private和构造方法的调用,绕过了virtual dispatch;3.invokeinterface的实现跟invokevirtual类似。4....
Java类的装载(Loading)、链接(Linking)和初始化(Initialization)

Java类的装载(Loading)、链接(Linking)和初始化(Initialization)

Loading 加载按如下三步执行1.通过类的全名产生对应类的二进制数据流。(注意,根据early load的原理,如果没找到对应类文件,只有在类实际使用时才抛出错误.)2.分析并将这些二进制数据流转换为 方法区(JVM的架构:方法区、堆,栈,本地方法栈,pc寄存器)特定的数据结构(这些数据结构是实现有关的,不同JVM有不同实现)。这里处理了部分verification(对正确性的检验),比如 .class文件的magic number , 文件是否过长或...
Java动态性: 类加载时的延迟初始化

Java动态性: 类加载时的延迟初始化

误区:值得注意的是,需要搞清楚 对符号引用的解析 和类的初始化的区别。《Java类的装载(Loading)、链接(Linking)和初始化(Initialization) 》一文中提到了, 链接的最后一步是resolution , 即对符号引用的解析,但这不是必须的,可以等到相应的符号引用第一次使用时再解析。而类的初始化是在链接之后的(注意了,根据不同JVM有不同的实现方式,在类初始化的时候,可能已经完成了所有的符号引用的解析,也可能没有),本文所写的就是...
Java类的实例化探究

Java类的实例化探究

java类的实例化(instantiation)具有显性的和隐性的区别。一般编程时,我们锁使用new的方法实例化,这是最简单直接的显性实例化。另外还有三种实例化,分别为反射机制中的newInstance()方法,类的clone()方法 和 解串行化使用的ObjecInputStream中的getObject()方法。而隐性的实例化则出现在java程序的整个生命周期中,包括String 、 Class ,StringBuffer 或者StringBuilde...
Linux Input子系统(上)--概述

Linux Input子系统(上)--概述

输入设备总类繁杂,包括按键,键盘,触摸屏,鼠标,摇杆等等,它们本身都是字符设备,不过内核为了能将这些设备的共性抽象出来,简化驱动的开发,建立了一个Input子系统。Input子系统分为三层,从下至上分别是输入设备驱动层,输入核心层以及输入事件驱动层。这三层中的输入核心层和输入事件驱动层都是内核已经完成了的,因此需要我们完成的只有输入设备驱动层。考虑输入设备主要的工作过程都是 动作产生(按键,触屏……)-->产生中断-->读取数值(键值,坐标……...
Linux下DM644x设备驱动I2C之总线驱动

Linux下DM644x设备驱动I2C之总线驱动

Linux DM6441下I2C设备驱动的开发和常用的Linux I2C的驱动开发一样,主要包括总线Bus驱动,以及相应的设备驱动开发。总线驱动和CPU的关系较为密切,涉及到相关硬件的操作。本文以Linux2.6.1和Dm6441简单解析一下整个驱动的编写架构。1. 总线驱动涉及到总线驱动的相关代码在drivers/i2c/bussses下面,该目录下是各CPU的I2C模块涉及到的内容,这里我们选择i2c-davinci.c文件总线驱动中Init函数i2c...
Objective-C语法之内存管理

Objective-C语法之内存管理

1、Objective-C内存管理简介: Objective-C需要自己考虑内存的管理,对于从Java, C#等语言转向Objective-C平台的程序员新手来说,这是个很大的挑战。幸运的是,如果熟悉了Objective-C的内存管理机制,手工管理内存也没有那么可怕。Objective-C的内存管理介于C/C++和Java C#直接,不像C/C++语言内存管理全部需要程序员一手包办,也不像Java C#语言有那么完备的内存垃圾回收器。(Objective...
Objective-C语法之动态类型(isKindOfClass, isMemberOfClass,id)等

Objective-C语法之动态类型(isKindOfClass, isMemberOfClass,id)等

对象在运行时获取其类型的能力称为内省。内省可以有多种方法实现。判断对象类型-(BOOL) isKindOfClass: classObj判断是否是这个类或者这个类的子类的实例-(BOOL) isMemberOfClass: classObj 判断是否是这个类的实例我们试试这两个方法的使用。1、新建Person类继承NSObject,新建Teacher类继承Person1.1、新建Person类#import<Foundation/Foundation...
<< 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 >>