- 博客(17)
- 资源 (2)
- 收藏
- 关注
转载 Android系统属性服务
转自:https://www.cnblogs.com/l2rf/p/6610348.html1、简介 在android 系统中,为统一管理系统的属性,设计了一个统一的属性系统。每个属性都有一个名称和值,他们都是字符串格式。属性被大量使用在Android系统中,用来记录系统设置或进程之间的信息交换。属性是在整个系统中全局可见的。每个进程可以get/set属性。在编译的过程中会将各种系统参数...
2018-10-31 17:39:18 4092 2
原创 strncpy,strcpy,memcpy,memset的联系和区别
void *memcpy(void *dest, const void *src, size_t n);char *strncpy(char *dest,char *src,int size_t n);char *strcpy(char* dest, const char *src);void *memset(void *s, int ch, size_t n);memcpy中,d...
2018-10-26 11:41:56 166
转载 Android的linux内核 /dev目录详解和Linux系统各个目录的作用
转自:作者:maopig来源:CSDN原文:https://blog.csdn.net/maopig/article/details/7195048Linux /dev目录详解在linux下,/dev目录是很重要的,各种设备都在下面。下面简单总结一下:dev是设备(device)的英文缩写。/dev这个目录对所有的用户都十分重要。因为在这个目录中包含了所有Linux系统中使用的...
2018-10-23 11:32:57 6061 1
转载 Anddroid内核Linux的头文件详解
头文件主目录include头文件目录中总共有32个.h头文件。其中主目录下有13个,asm子目录中有4个,Linux子目录中有10个,sys子目录中有5个。这些头文件各自的功能如下,具体的作用和所包含的信息请参见第14章。<a.out.h>:a.out头文件,定义了a.out执行文件格式和一些宏。 <const.h>:常数符号头文件,目前仅定义了i节点中i_mod...
2018-10-23 09:24:16 532
原创 Android(Linux)中的访问硬件设备
是不能直接访问的,把直接访问的任务写在驱动层,而应用访问必须经由驱动层生成一个设备节点,然后把通过这个设备节点访问,然后最终会调用驱动层的代码去访问。所以可以访问/dev/目录下的字符设备并不是说可以直接访问硬件,只是一个访问驱动接口罢了。驱动层是唯一能直接和硬件交互的,这个linux系统的框架设计。如访问GPIO,只能通过驱动给的设备节点去访问,即使拥有某个硬件节点的文件权限,也是无法访问的。可...
2018-10-22 18:04:56 655
转载 linux内存映射mmap原理分析和共享内存的两篇转载文章
内存映射,简而言之就是将用户空间的一段内存区域映射到内核空间,映射成功后,用户对这段内存区域的修改可以直接反映到内核空间,同样,内核空间对这段区域的修改也直接反映用户空间。那么对于内核空间<---->用户空间两者之间需要大量数据传输等操作的话效率是非常高的。以下是一个把普遍文件映射到用户空间的内存区域的示意图。图一:二、基本函数 mmap函数是unix/lin...
2018-10-19 10:23:22 1496
转载 Android进程的内存管理分析
尊重原创作者,转载请注明出处:http://blog.csdn.net/gemmem/article/details/8920039最近在网上看了不少Android内存管理方面的博文,但是文章大多都是就单个方面去介绍内存管理,没有能全局把握,缺乏系统性阐述,而且有些观点有误。这样对Android内存管理进行局部性介绍,很难使读者建立系统性概念,无法真正理解内存管理,对提高系统优化和系统...
2018-10-19 10:22:45 345
转载 内核态(内核空间)和用户态(用户空间)的区别和联系
用户空间就是用户进程所在的内存区域,相对的,系统空间就是操作系统占据的内存区域。用户进程和系统进程的所有数据都在内存中。 是谁来划分内存空间的呢?在电脑开机之前,内存就是一块原始的物理内存。什么也没有。开机加电,系统启动后,就对物理内存进行了划分。当然,这是系统的规定,物理内存条上并没有划分好的地址和空间范围。这些划分都是操作系统在逻辑上的划分。不同版本的操作系统划分的结果都是不一样的。 ...
2018-10-19 10:21:43 3326 3
原创 SettingsProvider存储键值对的地方和新老版本的区别和就兼容方式
旧版是使用数据库管理,数据库的名字是settings.db。而在新版本上,不知道是哪个版本开始的,至少Android6.0已经是这样了,键值对放到xml文件中管理了。分别是: private static final String SETTINGS_FILE_GLOBAL = "settings_global.xml"; private static final...
2018-10-17 17:18:24 1220
原创 Android系统的启动流程
Android系统启动-Init篇Android系统开篇Android系统启动-SystemServer上篇如何自学Android
2018-10-16 18:24:55 170
原创 c、c++中整型与字符串(char*)互相转化
整型转换为char*long nativeobject = 3213;char c[16];sprintf(c,"%d",nativeObject);//这句将nativeobjcet作为字符串输出到c中。char*转换为整型#include <stdlib.h>int atoi(const char* __s);long atol(const char* _...
2018-10-15 15:07:13 8368 1
转载 JNI异常处理
注意文中指的可check的exception是运行在vm中的代码抛出的exception,如jni中调用java层的方法,或者通过执行JNIEnv中的方法都属于运行在jvm中代码。就是说非运行在jvm中代码发生了异常,使用env->ExceptionCheck()是没用的。如在一个jni方法中有如下代码:JNIEnv* mEnv;mEnv->ExceptionCheck();...
2018-10-13 17:23:21 4240
转载 c、c++指针和整型的互相转换--强制转换,类型转换
c语言:Noncompliant Code Example(不兼容的代码示例)The size of a pointer can be greater than the size of an integer, such as in an implementation where pointers are 64 bits and unsigned integers are 32 bits. ...
2018-10-13 15:48:53 22916
转载 c++ 创建对象的三种方法
转自:https://www.cnblogs.com/spring-hailong/p/6106105.htmlc++有三种方法创建对象结合代码来看 1 #include <iostream> 2 using namespace std; 3 class Test { 4 5 private: 6 public: 7 ...
2018-10-12 18:30:48 13512
转载 external “C”,gcc和g++编译器的区别
gcc和g++编译器的区别 对于.c文件gcc当做c语言处理,g++当做c++处理;对于.cpp文件gcc和g++均当做c++处理; g++编译时实际上是调用gcc进行编译; gcc不能自动链接库文件,一般用g++来链接库文件,非要用gcc的话,一般使用gcc -lstdc++命令; extern “c”对于gcc和g++没有区别; 实际使用时只需安装gcc...
2018-10-12 11:56:49 1079
转载 关于void类型指针-----void*、void**
指针有两个属性:指向变量/对象的地址和长度 但是指针只存储地址,长度则取决于指针的类型 编译器根据指针的类型从指针指向的地址向后寻址 指针类型不同则寻址范围也不同,比如: int*从指定地址向后寻找4字节作为变量的存储单元 double*从指定地址向后寻找8字节作为变量的存储单元 1.void指针是一种特别的指针 void *vp //说它特别是因为它没有类型 ...
2018-10-11 11:48:20 17112 1
android-all-9-robolectric-4913185-2.jar
2019-11-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人