自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(253)
  • 资源 (8)
  • 收藏
  • 关注

转载 Linux kernel Low Level debug (DEBUG_LL)

http://blog.csdn.net/cpuwolf/article/details/4492822如果你运气不太好,那么第一次启动kernel,最多看见uncompressing linux...ok, booting the kernel从串口ttyS0出来,然后你什么都没了。这总情况遇见的机会还是很多的。多数原因是内核卡住了。你可能会问,内核卡住了不要

2016-07-14 17:32:24 1780

转载 深入解析 ext2 文件系统

http://blog.chinaunix.net/uid-24774106-id-3266816.html首先生成一个ext2文件系统。我在我磁盘空间有限的Ubuntu中,划出500M的空间来从头学习ext2 文件系统。    dd命令用来创建一个文件,不多说了,通过执行这个dd命令生成了一个全零的大小为512000*1KB的文件,即500MB 的文件。

2016-06-20 14:45:03 1269

转载 EXT2 文件系统

http://www.cnblogs.com/ggjucheng/archive/2012/08/22/2651641.html认识 EXT2 文件系统Linux最传统的磁盘文件系统(filesystem)使用的是EXT2这个啦!所以要了解文件系统就得要由认识EXT2开始! 而文件系统是创建在硬盘上面的,因此我们得了解硬盘的物理组成才行,所以底下只会很快的复习这两部份,

2016-06-20 14:18:14 631

转载 Linux内核模块模型面向对象分析

http://www.cnblogs.com/wenhuisun/archive/2013/02/22/2921781.htmlLinux内核模块模型面向对象分析C到C++,它们的关系演变过程是怎样的。从Linux的内核代码里面你可以了解到更深的编程层次的面向对象,而不是简单的封装、继承、多态。首先这个题目有点大,而且过于深,而我能了解到的也只是冰山一角,不过我觉得

2016-06-12 14:03:51 1274

转载 Linux的Proc文件系统详解

http://blog.chinaunix.net/uid-23046336-id-3255640.htmlLinux系统上的/proc目录是一种文件系统,即proc文件系统。与其它常见的文件系统不同的是,/proc是一种伪文件系统(也即虚拟文件系 统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看有关系统硬件及当前正在运行进程的信息,甚至可以通过更改其中某些文件来改变

2016-05-29 00:20:38 813

转载 linux内核线程对信号的处理过程

http://blog.csdn.net/dog250/article/details/5303238linux中的线程分为用户线程和内核线程,用户线程是标准的线程,完全的自主性,完全的抢占性;但是内核线程就不那么好了,某种意义上没有用户线程那么清闲,这个怎么理解呢?用户线程的编写者只需要实现应用逻辑就可以,至于调度,信号处理等工作完全有内核代劳,用户进程根本不需要操这些心,比如说调度, 在2

2016-05-27 11:36:49 1098

转载 maven 编译命令

http://radio123.iteye.com/blog/1490335从别处拷贝来的maven项目,有时候会出现不能debug关联的情况,即按住ctrl键后不能跳转到相应的类或方法,这是需要eclipse环境生成 Eclipse 项目文件的。        可以在cmd命令窗口下进入到maven项目包含pom.xml文件的目录下,运行 mvn eclipse:eclipse 命令

2016-05-11 15:39:24 901

转载 编写自己的JDBC框架

http://www.cnblogs.com/jbelial/archive/2013/07/18/3199061.html一、数据库连接池:   在一般用JDBC 进行连接数据库进行CRUD操作时,每一次都会:    通过:java.sql.Connection conn = DriverManager.getConnection(url,user,password)

2016-05-05 16:54:18 1370

转载 JDBC

http://www.yiibai.com/jdbc/jdbc_quick_guide.htmlJDBC是什么?JDBC API是一个Java API,可以访问任何类型表列数据,特别是存储在关系数据库中的数据。JDBC代表Java数据库连接。JDBC库中所包含的API任务通常与数据库使用:连接到数据库创建SQL或MySQL语句在数据库中执

2016-05-05 09:11:31 1269 1

转载 JDBC在getConnection之前为什么要调用Class.forName

http://www.ticmy.com/?p=249获取一个数据库连接的通用模板如下:String driver = "oracle.jdbc.OracleDriver";String url = "jdbc:oracle:thin:@127.0.0.1:1521:orcl";String user = "scott";

2016-05-04 17:41:07 506

转载 cmd used in sql tests (sql学习指南)

/* login mysql with root */mysql -u root -p/* create bank database */create database bank/* create user ccc */create user 'ccc'@'%' identified by '';/* grant priviledges for ccc */grant

2016-05-04 15:54:16 739

转载 mysql导出和导入xml文件实例

from: http://wenku.baidu.com/link?url=Iwr112wEjDzZbtSSn1EZkiZqH34vkjHtdAfZE9ntNQ9sAWf5G2Gaazu9VAEmzZGn15OnyYeNtwvM2HAShaNU7SjGZUbmfHqKcmLVTJ1xpf_1,输出数据库版本变量为xml格式Shell> mysql -X -uroot -proot

2016-05-04 15:53:09 9510

转载 VDSO/linux-gate.so/sysenter

背景可看看下面link:http://blog.csdn.net/juana1/article/details/6904932往往内核添加了一个功能,glibc要花很久才会用上。本来linux那边为这个功能是否进入内核已经吵半天了,glibc这边又要为是否使用这个内核新特性再次吵架半天(glibc不是Linux专有的,还得考虑BSD(虽然人家也不用glibc),SysV Windows(诶

2015-12-16 16:01:34 2523

转载 dumpsys batterystats

使用batterystats可了解系统中wakelock的详细持有时间,有助于power和sleep调试。关注一下。http://blog.csdn.net/oujunli/article/details/37563067http://www.2cto.com/kf/201510/445482.htmldumpsys batterystats --enable full-w

2015-11-27 18:40:01 7136

转载 dymamic debug

copy some text from kernel/Documentation/dynamic-debug-howto.txt.// enable the message at line 1603 of file svcsock.cnullarbor:~ # echo -n 'file svcsock.c line 1603 +p' > /dynamic_debug/contro

2015-11-26 11:18:51 734

转载 LDS文件格式分析

http://blog.csdn.net/kickxxx/article/details/7238545LDS文件格式分析最近在看Linux内核时,总是遇到一些和连接脚本相关的东东,搞得人一头雾水,终于下定决心把它搞明白,写下一点心得,希望对和我一样的人有所帮助!      连接脚本的格式====================连接脚本是文本文件.

2015-08-09 13:26:41 956

转载 overcommit_memory/overcommit_ratio/overcommit_kbytes

http://blog.csdn.net/jollyjumper/article/details/24127009新配的服务器内存128G,但在空余内存还有20G,page cache 60G时jps启动不了,提示java heap space,c中调用malloc无法分配5G以上的内存。发现是系统参数overcommit_memory和overcommit_ratio搞的鬼。grep

2015-02-13 22:09:03 1636

转载 深度探索套接字缓冲区

http://blog.chinaunix.net/uid-26921272-id-3446877.html套接字缓冲区用结构体struct sk_buff表示,它用于在网络子系统中的各层之间传递数据,处于一个核心地位,非常之重要。它包含了一组成员数据用于承载网络数据,同时,也定义了在这些数据上操作的一组函数。下面是其完整的定义:    struct sk_buff {       

2014-11-14 12:45:28 1509

转载 Android源码编译选项eng、user、userdebug的区别

http://www.2cto.com/kf/201312/265629.htmlAndroid源码编译选项eng、user、userdebug的区别1、各选项简要说明eng:debug版本user:release版本userDebug版本:部分debug版本2、详细介绍Android源码编译选项eng、user、us

2014-11-10 10:27:58 4699

转载 内存碎片(Memory Fragmentation)

http://blog.csdn.net/dean_yanqing/article/details/6663775

2014-10-24 16:09:54 2931

转载 频繁分配释放内存导致的性能问题的分析

http://blog.csdn.net/baiduforum/article/details/6126337现象1 压力测试过程中,发现被测对象性能不够理想,具体表现为:  进程的系统态CPU消耗20,用户态CPU消耗10,系统idle大约70  2 用ps -o majflt,minflt -C program命令查看,发现majflt每秒增量为0,而minflt每秒增量大于1

2014-10-22 18:47:27 2168

转载 cpufreq

转一、           Linux动态频率调节系统CPUFreq之一:概述http://blog.csdn.net/droidphone/article/details/9346981随着技术的发展,我们对CPU的处理能力提出了越来越高的需求,芯片厂家也对制造工艺不断地提升。现在的主流PC处理器的主频已经在3GHz左右,就算是智能手机的处理器也已经可以工作在1.5GHz以上,可是我

2014-10-21 09:13:36 3891

转载 ERR_PTR()和PTR_ERR()

ERR_PTR()和PTR_ERR()http://blog.163.com/arm_linux_learn/blog/static/1921553082011102843732189/

2014-10-16 11:51:00 4826

转载 mudflap/address sanitizer

使用mudflap检查内存越界

2014-10-09 18:00:47 4613

转载 Android 不支持 SYSV IPC (SYSV IPC)

http://blog.csdn.net/smfwuxiao/article/details/8521117

2014-09-25 16:22:49 1549

转载 如何通过打开文件的fd值,找到被打开文件的全路径

http://blog.chinaunix.net/uid-20498361-id-1940235.html通过打开文件的fd值,如何找到被打开文件文件的全路径 fd1 = open(filename, O_RDWR)我们知道当我们调用open的时候,会得到一个fd的文件描述符。这个文件描述符是保存在:/proc/getpid()/fd/fd1,通过这个

2014-09-13 22:16:54 8487

转载 几种ARM反汇编器

最近在为androguard实现ARM反汇编和ARM漏洞利用代码检测的功能。Anthony告诉我三种方案:smiasm、radare、IDAPython。前段时间尝试了这些方法,各有优劣。归纳如下:方案开源支持Thumb递归反汇编提供指令详情smiasm是否是是radare是

2014-08-22 17:29:12 12546

转载 linux内核线程对信号的处理过程

http://www.oschina.net/question/234345_48011

2014-08-13 23:05:41 677

转载 kthread_create和kernel_thread的区别和总结

http://blog.csdn.net/ustc_dylan/article/details/6546463在看linux驱动代码的时候,经常惠会碰到kthread_create这个函数,google一下,发现很多人在讲二者的区别,但是都在讲源码的区别而已,总结不够,感觉没有说出二者之间的本质区别,自己总结下。    一. 源码分析(linux-2.6.39)1.  kthr

2014-08-13 19:46:56 1390

原创 double free/free invalid pointer

p=(char *)malloc(sizeof(char));        printf("p=0x%08x", p);        sleep(2);        free(p + 1);*** glibc detected *** ./test_free2: free(): invalid pointer: 0x00098fa1 ***======= Ba

2014-08-08 14:33:04 4681

原创 在系统中使用编译时刻的时间

++       {+               /* use compiling time */+               int i, j;+               char month_buf[16];+               const unsigned char MonthStr[12][5] = {+                      

2014-08-06 17:00:40 1029

转载 Android下使用C语言的四种编译方式

http://blog.csdn.net/cl11010/article/details/8459981一、编写helloworld.c Android.mk[cpp] view plaincopy#include     int main()    {         printf("Hello World!\n");   

2014-07-26 11:56:27 3369

转载 阶乘

写了一个程序,ji#include #define N       100int main(int argc, char **argv){        int n;        int i, j, m, b;        int a[N] = {1};        if (2 != argc) {                printf(

2014-07-21 17:25:31 846

转载 runtime suspend

http://leave001.blog.163.com/blog/static/16269129320117301213564/所谓runtime suspend,就是说设备在空闲时进入suspend状态,不依赖android的wake lock机制,也就是不需要整个系统进入suspend状态。kernnel使用pm线程来处理runtime suspend。pm线程的创建(ker

2014-07-16 10:16:07 4331

转载 段错误原因分析和查找

http://qgjie456.blog.163.com/blog/static/35451367201112722827742/一、 段错误原因分析         1 使用非法的指针,包括使用未经初始化及已经释放的指针(指针使用之前和释放之后置为NULL)         2 内存读/写越界。包括数组访问越界,或在使用一些写内存的函数时,长度指定不正确或者这些函数本身不

2014-07-10 15:02:58 31978 1

转载 Linux启动参数及实现 __setup与early_param

http://blog.csdn.net/tommy_wxie/article/details/8041487Linux启动参数及实现 __setup与early_param

2014-07-02 18:22:25 5688

原创 内核中tcm(arm)与sram代码

TCM (Tightly-Coupled Memory)Some ARM SoC:s have a so-called TCM (Tightly-Coupled Memory). This is usually just a few (4-64) KiB of RAM inside the ARM processor. Due to being embedded inside the CPU Th

2014-07-01 10:45:58 6457

转载 linux中断子系统

在网上看到几篇不错的关于linux中断的文章,转贴一下。加了几处自己的注释。Linux中断(interrupt)子系统之一:中断系统基本原理http://blog.csdn.net/droidphone/article/details/7445825这个中断系列文章主要针对移动设备中的Linux进行讨论,文中的例子基本都是基于ARM这一体系架构,其他架构的原理其实也差不多,区别只是

2013-12-26 19:18:10 5959

转载 Oops信息及栈回溯

http://blog.chinaunix.net/uid-14753126-id-2980100.html1. Oops信息来源及格式Oops这个单词含义为“惊讶”,当内核出错时(比如访问非法地址)打印出来的信息被称为Oops信息。Oops信息包含以下几部分内容:(1)一段文本描述信息。      比如类似“Unable to handle kernel NULL point

2013-10-17 18:58:27 1402

原创 内核中的 dev_emerg/dev_alert/dev_crit/dev_err/dev_warn/dev_notice/_dev_info

本文基于 android 3.4.5 kernel。在 drivers/base/core.c#define define_dev_printk_level(func, kern_level)  \int func(const struct device *dev, const char *fmt, ...) \{        \ struct va_format vaf;

2013-10-16 20:24:56 13447

Programming the MIPS32 24KE Core Family

Programming the MIPS32 24KE Core Family

2011-10-10

KBUILD系统原理分析.pdf

从别的地方下载的一份文档,详细讲述了内核Kbuild机制,值得一看

2012-09-27

Bare-metal Boot Code for ARMv8-A Processors

Hardware verification engineers often run bare-metal tests to verify core-related function in a System on Chip (SoC). However, it can be challenging to write boot code for a bare-metal system, without a basic understanding of software development on the ARM architecture. This application note provides code examples for the following important operations that are involved in booting a bare-metal system: • Initializing exceptions. • Initializing registers. • Configuring the MMU and caches. • Enabling NEON and Floating Point. • Changing Exception levels. The code examples are written with the GNU assembly grammar and are tested on the Cortex-A53, Cortex-A72, and Cortex-A73 processors. They also apply to other ARMv8-A processors.

2018-05-29

ARM Generic Interrupt Controller Architecture Specification (3.0 & 4.0)

ARM Generic Interrupt Controller Architecture Specification (GIC architecture version 3.0 and version 4.0)

2018-05-04

Brief Introduction to MIPS32 Shadow Registers

Brief Introduction to MIPS32 Core Shadow Registers for Microcontroller Applications

2011-10-10

ARM® Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM® Architecture Reference Manual ARMv7-A and ARMv7-R edition

2018-06-15

linux进程管理之可执行文件的加载和运行.pdf

linux进程管理之可执行文件的加载和运行

2011-10-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除