自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(337)
  • 资源 (2)
  • 收藏
  • 关注

转载 一个panic bug的分析过程

一个工作中遇到的bug的问题,分析一下流程,顺便把panic这种类似的bug流程做一些分析:环境: linux 3.0, arm 芯片平台首先看出问题时的backtrace 如下:[ 10.298767] regulator_init_complete: disabling vrfref [ 10.299163] regulator_init_complete: disab

2016-10-12 10:28:26 1017

转载 利用 Android Systrace 做performance 分析

Systrace 是Android4.1 之后推出的。对系统性能分析的工具systrace 可以通过命令启动,或者使用eclipse, Android studio 都有。systrace 工具你可以在sdk/platform-tools/ 找到,  或者在源码里位于 external/chromium-trace  下面一、systrace 使用方法你

2016-09-20 17:02:00 682

转载 ftrace 简介

ftrace 简介ftrace 的作用是帮助开发人员了解 Linux 内核的运行时行为,以便进行故障调试或性能分析。最早 ftrace 是一个 function tracer,仅能够记录内核的函数调用流程。如今 ftrace 已经成为一个 framework,采用 plugin 的方式支持开发人员添加更多种类的 trace 功能。Ftrace 由 RedHat 的 Stev

2016-09-20 11:32:50 609

转载 Android系统性能调优工具介绍

经作者授权,发表Tieto某青年牛的一篇《程序员》大作。Android系统性能调优工具介绍在软件开发过程中,想必很多读者都遇到过系统性能问题。而解决系统性能问题的几个主要步骤是:测评:对系统进行大量有针对性的测试,以得到合适的测试数据。分析系统瓶颈:分析测试数据,找到其中的hotspot(热点,即bottleneck)。性能优化:对hotspot相关的代码进行优化。

2016-09-20 11:13:48 472

转载 远程摄像头软件mjpg-streamer使用指南

作者:Leo Chin出处:http://www.cnblogs.com/hnrainll/转 自:http://bbs.hdchina.org/viewthread.php?tid=94749mjpg-streamer 可以通过文件或者是HTTP方式访问linux UVC兼容摄像头。可以在公司,通过访问家里安装的摄像头查看家里的情况,对于有小孩的家长很有帮助。

2016-07-26 17:52:17 608

转载 Sublime Text 3 快捷键精华版

Ctrl+Shift+P:打开命令面板Ctrl+P:搜索项目中的文件Ctrl+G:跳转到第几行Ctrl+W:关闭当前打开文件Ctrl+Shift+W:关闭所有打开文件Ctrl+Shift+V:粘贴并格式化Ctrl+D:选择单词,重复可增加选择下一个相同的单词Ctrl+L:选择行,重复可依次增加选择下一行Ctrl+Shift+L:选择多行Ctrl+Shift+En

2016-07-15 17:42:35 291

转载 Sublime text 3 3103 注册码

Sublime text 3 (Build 3103) license key,these all tested available on 2016/02/10 .Feel free to enjoy them.—– BEGIN LICENSE —–Michael BarnesSingle User LicenseEA7E-8213858A353C41 872A0D5C DF9

2016-07-15 16:40:45 593

转载 Android Binder机制(四) defaultServiceManager()的实现

本文介绍defaultServiceManager()的流程。这里的defaultServiceManager()返回的是"IServiceManager对象",获取"IServiceManager对象"的目的是为了和"ServiceManager进程"进行通信。例如,Server要通过"IServiceManager对象"发送请求指令注册到"ServiceManager进程"中,Client要通

2016-07-12 16:05:35 5364 3

转载 Android Binder机制(三) ServiceManager守护进程

ServiceManager是用户空间的一个守护进程,它一直运行在后台。它的职责是管理Binder机制中的各个Server。当Server启动时,Server会将"Server对象的名字"连同"Server对象的信息"一起注册到ServiceManager中;而当Client需要获取Server接入点时,则通过"Server的名字"来从ServiceManager中找到对应的Server。本文

2016-07-12 12:05:26 1628

转载 Android Binder机制(二) Binder中的数据结构

在对Binder代码展开详细介绍之前,先列举出Binder机制中涉及到的数据结构。本文是一篇参考文章,读者在阅读代码的过程中遇到相关的数据结构,就可以查阅此文中的内容。本文列举的数据结构,涵盖了内核空间和用户空间两个部分。内核空间部分就是Binder驱动中涉及到的数据结构;而用户空间的部分,包括ServiceManager守护进程,以及Android的C++层和Framework层的相关数据结构。

2016-07-11 17:49:30 615

转载 Android Binder机制(一) Binder的设计和框架

这是关于Android中Binder机制的一系列纯技术贴。花了一个多礼拜的时间,才终于将其整理完毕。行文于此,以做记录;也是将自己所得与大家分享。和以往一样,介绍Binder时,先讲解框架,然后再从设计和细节等方面一一展开。若文章若错误或纰漏,请不吝指出。谢谢!注意:本文是基于Android 4.4.2版本进行介绍的!目录1. Binder架构解析1.1. Binder

2016-07-11 17:38:08 800

转载 Linux堆内存管理深入分析

0 前言近年来,漏洞挖掘越来越火,各种漏洞挖掘、利用的分析文章层出不穷。从大方向来看,主要有基于栈溢出的漏洞利用和基于堆溢出的漏洞利用两种。国内关于栈溢出的资料相对较多,这里就不累述了,但是关于堆溢出的漏洞利用资料就很少了。鄙人以为主要是堆溢出漏洞的门槛较高,需要先吃透相应操作系统的堆内存管理机制,而这部分内容一直是一个难点。因此本系列文章主要从Linux系统堆内存管理机制出发,逐步介绍诸

2016-07-05 19:14:50 429

转载 Linux strace命令

简介strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。输出参数含义root@ubuntu:/usr#strace cat /de

2016-06-29 19:54:56 273

转载 技巧: 使用truss、strace或ltrace诊断软件的"疑难杂症"

简介进程无法启动,软件运行速度突然变慢,程序的"Segment Fault"等等都是让每个Unix系统用户头痛的问题,本文通过三个实际案例演示如何使用truss、strace和ltrace这三个常用的调试工具来快速诊断软件的"疑难杂症"。truss和strace用来 跟踪一个进程的系统调用或信号产生的情况,而 ltrace用来 跟踪进程调用库函数的情况。truss是早期为Syste

2016-06-29 18:21:37 370

转载 Android学习系列(29)--App调试的几个命令实践

在Android的应用开发中,我们会用到各种代码调试;其实在Android的开发之后,我们可能会碰到一些随机的问题,如cpu过高,内存泄露等,我们无法简单的进行代码调试,我们需要一个系统日志等等,下面我把握工作中碰到的几个常用命令和方法给大家演示实践一下。1.logcat命令这个命令最简单常用,可查看帮助,我不多说,如果需要打印时间,加参数-v time

2016-06-29 11:27:26 485

原创 ubuntu 搜狗输入法配置

im-configfcitx-config-gtk3

2016-05-17 10:39:40 375

转载 /proc/sysrq-trigger文件的强大功能

/proc/sysrq-trigger该文件能做些什么事情呢?   # 立即重新启动计算机    (Reboots the kernel without first unmounting file systems or syncing disks attached to the system)echo "b" > /proc/sysrq-trigger     # 立即关闭

2016-04-29 16:36:44 401

转载 [Linux][Kerne][Tips] 在 minicom 下送出 SysRq

除了 Linux kernel 要加上 SysRq 的 Function 以外,按 ctrl+a f 就是送出 break key.這要配合 Command Key 使用* What are the 'command' keys?~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'b' - Will immediately reboot the s

2016-04-29 16:35:51 542

转载 Android 异常问题分析

1. Introduction解决问题通常分为以下几个步骤:a) 确定问题,这是个什么样的问题,有什么外在表现;b) 分析问题,根据log里面的蛛丝马迹,定位出问题的原因;c) 对症下药,尽量用最少的代码解决问题,并确保不会引入新的问题;d) 验证修改,把自己的修改导入,确保自己的修改起了作用,并已经彻底解决了问题,同时观察是否引入新的问题;此文档主要面对的是几类问题:

2016-04-29 14:16:46 658

转载 如何用Free Download Manager下载百度网盘

Free Download Manager(下载点这里)和Internet Download Manager(俗称IDM)相比,前者更具优势:1.FDM开源免费,可自动升级,发展前景好,稳定。IDM如果不想付款就只有破解使用,安全和稳定的问题不说,更新和破解很麻烦在下载有线程限制的文件时,用IDM基本等于自杀,而FDM不会;2.FDM能从浏览器获取你的cookies,还能模拟成浏览

2016-03-09 14:52:12 48175

转载 如何增加VirtualBox虚拟机硬盘大小

转自:http://www.porry.org/2011/07/23/how-change-virtualbox-hd/在MAC上,我安装好VirtualBox,想在其上装一个Win7,初始化好虚拟系统后,才理会到其自增长硬盘大小,不会超过其初始时的20G,VirtualBox提供了可以为虚拟系统再增加虚拟硬盘,可以我却希望改其现有虚拟硬盘的大小,google后,寻得可以使用的方法,嘿嘿,

2016-03-08 20:57:07 535

转载 Linux内核调试方法总结

目录[-]一  调试前的准备二  内核中的bug三  内核调试配置选项1  内核配置2  调试原子操作四  引发bug并打印信息1  BUG()和BUG_ON()2  dump_stack()五  printk()1  printk函数的健壮性2  printk函数脆弱之处3  LOG等级4  记录缓冲区5  syslogd/klog

2016-01-29 16:22:21 611

转载 【团队分享】刀锋铁骑:常见Android Native崩溃及错误原因

作者介绍:王竞原,负责网游刀锋铁骑项目,使用C++10年左右,非常喜欢使用C++,特别是C++11。希望能与广大的C++爱好者多交流。一、什么是Android的C/C++ NativeCrashAndroid上的Crash可以分两种:1、Java Crashjava代码导致jvm退出,弹出“程序已经崩溃”的对话框,最终用户点击关闭后进程退出。Logcat 会

2016-01-29 10:18:08 504

转载 Ubuntu环境下OpenGrok的安装及使用

OpenGrok是一个快速,便于使用的源码搜索引擎与对照引擎,它能够帮助我们快速的搜索、定位、对照代码树。接下来就具体讲解一下OpenGrok的安装及使用。安装Web服务器-Tomcat第一步:首先大家应该明白OpenGrok是一个Web系统,因此要共享OpenGrok搜索引擎,需要安装Web服务器。在Ubuntu环境下,推荐使用Tomcat。下载Tomcat到指定目录(e

2016-01-29 09:33:31 758

转载 详解coredump

一,什么是coredump        我们经常听到大家说到程序core掉了,需要定位解决,这里说的大部分是指对应程序由于各种异常或者bug导致在运行过程中异常退出或者中止,并且在满足一定条件下(这里为什么说需要满足一定的条件呢?下面会分析)会产生一个叫做core的文件。        通常情况下,core文件会包含了程序运行时的内存,寄存器状态,堆栈指针,内存管理信息还有各种函

2016-01-12 10:54:23 427

转载 Ubuntu下Sublime Text 3解决无法输入中文的方法

工具/原料Ubuntu14.04搜狗输入法 for LinuxSublime text 3已知前置条件1本经验目前在Ubuntu14.04环境下,已有搜狗输入法 for Linux和Sublime Text 3的情况下安装成功。END解决方法步骤2

2016-01-07 09:48:18 331

转载 stressapptest使用介绍

stressapptest 其是:Stressful Application Test (stressapptest) 的简称Stressful Application Test试图让来自处理器和I/O到内存的数据尽量随机化,以创造出模拟现实的环境来测试现在的硬件设备是否稳定,Google就在使用它,现在是Apache 2.0许可,这里有介绍、安装向导和指南(http://code.g

2016-01-04 17:57:07 19217

转载 UbuntuSkills

Ubuntu 命令技巧目录[隐藏]1 前言2 安装升级2.1 查看软件xxx安装内容2.2 查找软件库中的软件2.3 显示系统安装包的统计信息2.4 显示系统全部可用包的名称2.5 显示包的信息2.6 查找文件属于哪个包2.7 查看已经安装了哪些包2.8 查询软件xxx依赖哪些包2.9 查询软件xxx被哪些包依赖2.10 增加一个光盘源2.11 系统

2015-12-23 20:44:22 3261

转载 Boot Repair-能一键修复ubuntu启动/引导项的软件(告别命令行)

如果你是windows+ubuntu的双系统,那么重装windows之后(非ghost方式),是会直接进入windows的,之前的grub引导菜单会被抹掉,想要修复ubuntu的启动菜单的话,通常需要使用命令行,但是借助Boot Repair这个神奇的软件,你可以在软件界面中一键修复它。 Boot Repair是一个linux下的软件,体积很小。香蕉有过N次修复ubuntu启动项的经历,深

2015-12-20 15:06:32 3244 1

转载 Ubuntu 14.04 安裝最新版 gnu global (gtags)

Ubuntu 14.04 內附的 global 是 5.7.1 版有點舊。官方已經到 6.4 版了,想升到最新提升爽度。方法安裝建置相依性套件:sudo apt-get build-dep globalsudo apt-get install libncurses5-dev libncursesw5-dev移駕至 gnu global 官方下載最新的 t

2015-12-17 15:30:25 5334 1

转载 ubuntu 下让gvim 自动最大化 全屏及隐藏菜单和工具栏 mac windows 全屏显示

终端下的vim全屏可以直接使用系统设置的全屏快捷键F11来实现全屏,但gvim却用不了(有人说可以),google一番,终于在 stackoverflow 上找到了答案(原文地址:http://superuser.com/questions/264693/how-can-i-open-gvim-in-full-screen-mode-in-gnome)1.安装 wmctrl,ubuntu可

2015-12-17 13:33:26 7161 1

转载 tmux简单教程

在远程到一台机器或者在本地终端下,经常发现,一个终端远远地不够用,经常需要同时打开几个,往往还希望这几个窗口同时显示在视线内。tmux正是为这种需求而生。    如上图所示,是不是看起来很方便呢,^-^。    下面几个是作者在日常工作中常用到的命令,事实上还有其他很多,但是一般用不到,也就不在这里介绍,如果有兴趣,可以参考官方教程。tmux所有自带命令都默认需

2015-12-17 12:09:49 353

转载 三步搞定windows与ubuntu之间文件共享

1. 在ubuntu中安装samba应用程序    # sudo apt-get install samba smbfsNote: On ubuntu 14.04 there is not smbfs. (instead is cifs-utils)    # sudo apt-get install samba cifs-utils2. 在ubuntu中安装samba

2015-12-17 10:23:55 488

转载 ubuntu下安装VNC远程桌面的详细步骤

Virtual Network Computing(VNC)是进行远程桌面控制的一个软件。客户端的键盘输入和鼠标操作通过网络传输到远程服务器,控制服务器的操作(只有背景,没有菜单栏问题没有解决)Virtual Network Computing(VNC)是进行远程桌面控制的一个软件。客户端的键盘输入和鼠标操作通过网络传输到远程服务器,控制服务器的操作。服务器的图形界面 通过网络传输会客户端

2015-12-16 20:33:06 603

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

现象1 压力测试过程中,发现被测对象性能不够理想,具体表现为: 进程的系统态CPU消耗20,用户态CPU消耗10,系统idle大约70 2 用ps -o majflt,minflt -C program命令查看,发现majflt每秒增量为0,而minflt每秒增量大于10000。初步分析majflt代表major fault,中文名叫大错误,minflt代表minor fa

2015-12-15 11:56:15 311

转载 Linux物理内存管理概述

在内核态申请内存比在用户态申请内存要更为直接,它没有采用用户态那种延迟分配内存技术。内核认为一旦有内核函数申请内存,那么就必须立刻满足该申请内存的请求,并且这个请求一定是正确合理的。相反,对于用户态申请内存的请求,内核总是尽量延后分配物理内存,用户进程总是先获得一个虚拟内存区的使用权,最终通过缺页异常获得一块真正的物理内存。1.物理内存的内核映射IA32架构中内核虚拟地址空间只有1GB大小

2015-12-15 09:39:06 486

转载 我的vim配置及说明【k-vim】

我的vim配置及说明【k-vim】vim插件分类及快捷键vim基本用法使用说明配置步骤其他截图自定义快捷键说明插件及其快捷键说明gmarik/vundlescrooloose/nerdtreefholgado/minibufexpl.vimmajutsushi/tagbarvim-scripts/taglist.vimkien/ctrlp.vimLokaltog/vim-power

2015-12-11 16:20:56 735

转载 uboot中挂载U盘,利用FAT文件系统读写U盘文件

关于使用U盘自动更新系统镜像,请看我的这篇博文:http://blog.chinaunix.net/space.php?uid=22030783&do=blog&id=3347599下面开始介绍USB和FAT相关命令的用法,通过大量的实际操作截图说明和USB操作相关的文件是common/cmd_usb.c,这里定义了usb命令在uboot中执行help usb查看支持的

2015-11-20 17:59:05 6439 1

转载 Ubuntu 14.04中安装Sublime Text 3并使用SublimeClang插件

转载请说明出处:http://blog.csdn.net/cywosp/article/details/32721011    Sublime Text是个跨平台的编辑器,支持Windows、Linux、Mac系统平台,支持各种语言的代码编辑,配合上对应的插件,话上点时间学习,你将会对它爱不释手,大大的提高你的编码效率。本文将讲解在Ubuntu 14.04系统中安装SublimeTex

2015-11-19 15:26:40 321

转载 SecureCRT配色方案

SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单的说是Windows下登录UNIX或Linux服务器主机的软件。SecureCRT支持SSH,同时支持Telnet和rlogin协议。SecureCRT是一款用于连接运行包括Windows、UNIX和VMS的理想工具。通过使用内含的VCP命令行程序可以进行加密文件的传输。有流行CRTTelnet客户机的所有特点,包括:自动

2015-10-22 14:36:40 267

嵌入式Linux应用开发完全手册-无水印完整版

嵌入式Linux应用开发完全手册-无水印完整版

2013-10-19

Linux嵌入式系统环境搭建、内核配置、最小系统启动与设备文件分析

Linux嵌入式系统环境搭建、内核配置、最小系统启动与设备文件分析

2013-06-12

空空如也

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

TA关注的人

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