
linux
文章平均质量分 61
ricks_wu
学而时习之,不亦说乎;有朋自远方来,不亦乐乎;人不知而不搵,不亦君子乎
展开
-
bugfix: 待机休眠arm电压保持在1.2v(希望降到1v)
platform: rk3026 MIDpmu: axp192system: android4.2日前碰到机器休眠arm电压偏高的问题。自己找问题,找啊找,就是找不到,一直改那个arm电压表,没用,因为那个表是机器运行时的arm动态电压调整。当机器休眠时的arm电压是另外设置的,不在这个表格内。baord-rk3026-86v.c文件中的arm电压表如下:/原创 2014-03-26 09:55:30 · 1756 阅读 · 0 评论 -
Android HAL实例解析
Android HAL实例解析2010-12-07 15:08 33063人阅读 评论(39) 收藏 举报androidjnimodulestructservicemethods目录(?)[+]华清远见讲师 刘洪涛一、概述 本文希望通过分析台湾的Jollen的mokoid 工程代码,和在s5pc100平台上实现过程种遇到的问题,解析Andorid H转载 2013-03-20 16:04:09 · 575 阅读 · 0 评论 -
Linux架构之系统调用
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢! 我们以下图为基础,说明Linux的架构(architecture)。(该图参考《Advanced Programming in Unix Environment》) 最内层是我们的硬件,最外层是我们常用的各种应用,比如说使用firefox浏览器,转载 2013-03-17 08:09:15 · 543 阅读 · 0 评论 -
Linux架构和目录-基础篇
1.Linux目录结构2. /boot/存放系统内核文件,如vmlinuz,initrd,System.map等。其中,a. vmlinuz是可引导的、压缩的内核,“vm”即“Virtual Memory”;b. initrd 的英文含义是 boot loader initialized RAM disk,就是由 boot loader 初始化的内存盘。在l转载 2013-03-17 07:40:16 · 966 阅读 · 0 评论 -
Android架构详解
Android系统架构由5部分组成,分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。第二部分将详细介绍这5个部分。下面自底向上分析各层。Android架构 1、Linux Kernel Android基于Linux 2.6提供核心系统服务,例如:安全、内存管理转载 2013-03-17 08:03:10 · 634 阅读 · 0 评论 -
LCD与触摸屏坐标转换
想要弄明白LCD屏幕坐标和触摸屏坐标的关系,得先从LCD触摸屏的结构说起。一般我们接触到的触摸屏都有两层,一层是纯粹的LCD液晶显示面板,其上就是一层透明的触摸屏薄膜。要说的是,LCD显示屏和触摸屏都有各自的分辨率指标,也就相当于它们的坐标系,现假定他们的坐标系分别为(x,y)和(X,Y)。就像我所测试的LCD显示屏的分辨率为1024*600,它的坐标原点(0,0)是左上角,右下角坐标为(1024转载 2013-03-28 22:14:55 · 2902 阅读 · 0 评论 -
ARM在嵌入式linux内核裁剪与移植的应用
微处理器用一片或少数几片大规模集成电路组成的中央处理器。这些电路执行控制部件和算术逻辑部件的功能。微处理器与传统的中央处理器相比,具有体积小,重量轻和容易模块化等优点。微处理器的基本组成部分有:寄存器堆、运算器、时序控制电路,以及数据和地址总线。微处理器能完成取指令、执行指令,以及与外界存储器和逻辑部件交换信息等操作,是微型计算机的运算控制部分。它可与存储器和外围电路芯片组成微型计算机。但这些专用转载 2013-03-28 22:55:08 · 1287 阅读 · 0 评论 -
linux 环境变量查看,设置,删除
1.Linux的变量种类按变量的生存周期来划分,Linux变量可分为两类:1.1 永久的:需要修改配置文件,变量永久生效。1.2 临时的:使用export命令声明即可,变量在关闭shell时失效。2.设置变量的三种方法2.1 在/etc/profile文件中添加变量【对所有用户生效(永久的)】用VI在文件/etc/profile文件中增加变量,该变量转载 2013-03-28 22:47:11 · 577 阅读 · 0 评论 -
Git .gitignore失效的情况
举个例子,我的.gitignore内容如下bash$ cat .gitignore *.bak*~*.o*.qft_autoCVS每次当文件夹CVS下内容更改,git status总提示CVS下内容modified.显然这时.gitignore没有生效。原因是我在.gitignore中加入CVS字段前,已将CVS下的文件add到Git中,所以.gitignor转载 2013-03-13 10:39:00 · 2277 阅读 · 0 评论 -
vi/vim使用进阶: 目录
本系列文章,是原来我在优快云的Easwy专栏撰写的”使用VIM开发软件项目”系列。Easwy的博客搬家以后,就把优快云上的文章全部移到此处。写本系列文章的最初想法,是介绍如何用vi/vim开发软件。但纵观整个系列,讲述的其实和软件开发关系并不大,基本都在讲vim的使用技巧、vim的配置及vimrc、vim的命令和vim的插件。因此,把文章移到新站后,我把本系列的名字改为”vi/vim使转载 2013-03-12 13:48:03 · 658 阅读 · 0 评论 -
AWK简明教程
AWK 简明教程2013年2月17日陈皓发表评论阅读评论15,863 人阅读 有一些网友看了前两天的《Linux下应该知道的技巧》希望我能教教他们用awk和sed,所以,出现了这篇文章。我估计这些80后的年轻朋友可能对awk/sed这类上古神器有点陌生了,所以需要我这个老家伙来炒炒冷饭。况且,AWK是贝尔实验室1977年搞出来的文本出现神器,今年是蛇年,是AW转载 2013-02-23 16:02:57 · 732 阅读 · 0 评论 -
sed简明教程
sed 简明教程2013年2月20日陈皓发表评论阅读评论6,560 人阅读 awk于1977年出生,今年36岁本命年,sed比awk大2-3岁,awk就像林妹妹,sed就是宝玉哥哥了。所以 林妹妹跳了个Topless,他的哥哥sed坐不住了,也一定要出来抖一抖。sed全名叫stream editor,流编辑器,用程序的方式来编辑文本,相当的hacker转载 2013-02-23 15:41:20 · 557 阅读 · 0 评论 -
Linux 内核配置机制(make menuconfig、Kconfig、makefile)讲解
前面我们介绍模块编程的时候介绍了驱动进入内核有两种方式:模块和直接编译进内核,并介绍了模块的一种编译方式——在一个独立的文件夹通过makefile配合内核源码路径完成 那么如何将驱动直接编译进内核呢? 在我们实际内核的移植配置过程中经常听说的内核裁剪又是怎么麽回事呢?我们在进行linux内核配置的时候经常会执行make men转载 2013-03-06 23:49:36 · 665 阅读 · 0 评论 -
git 常用命令备忘录
Git配置git config --global user.name "robbin" git config --global user.email "fankai@gmail.com"git config --global color.ui truegit config --global alias.co checkoutgit config --global alias.ci转载 2013-03-06 09:43:41 · 618 阅读 · 0 评论 -
Linux FC/iSCSI存储设备管理系列(一):Linux系统设备驱动入门
转载请在文首保留原文出处:EMC中文支持论坛 - https://community.emc.com/go/chinese介绍 Linux FC/iSCSI存储设备管理系列,主要介绍Linux系统管理FC/iSCSI磁盘设备的相关概念与技术细节,内容包括:1. Linux磁盘设备驱动介绍2. 磁盘设备管理(一):FC磁盘管理转载 2013-02-15 16:04:38 · 6267 阅读 · 0 评论 -
Linux 的僵尸(zombie)进程
可能很少有人意识到,在一个进程调用了exit之后,该进程 并非马上就消失掉,而是留下一个称为僵尸进程(Zombie)的数据结构。在Linux进程的5种状态中,僵尸进程是非常特殊的一种,它已经放弃了几乎所 有内存空间,没有任何可执行代码,也不能被调度,仅仅在进程列表中保留一个位置,记载该进程的退出状态等信息供其他进程收集,除此之外,僵尸进程不再占有 任何内存空间。僵尸进程的来由,要追溯到Un转载 2013-01-17 13:27:56 · 396 阅读 · 0 评论 -
深入浅出 - Android系统移植与平台开发(九)- JNI介绍
JNI是在学习Android HAL时必须要面临一个知识点,如果你不了解它的机制,不了解它的使用方式,你会被本地代码绕的晕头转向,JNI作为一个中间语言的翻译官在运行Java代码的Android中有着重要的意义,这儿的内容比较多,也是最基本的,如果想彻底了解JNI的机制,请查看:http://docs.oracle.com/javase/1.5.0/docs/guide/jni/s转载 2013-03-20 17:39:15 · 688 阅读 · 0 评论 -
深入浅出 - Android系统移植与平台开发(八)- HAL Stub框架分析
1. HAL Stub框架分析HAL stub的框架比较简单,三个结构体、两个常量、一个函数,简称321架构,它的定义在:@hardware/libhardware/include/hardware/hardware.h@hardware/libhardware/hardware.c[cpp] view plaincop转载 2013-03-20 16:46:17 · 685 阅读 · 0 评论 -
深入浅出 - Android系统移植与平台开发(七)- 初识HAL
1. HAL的module与stubHAL(Hardware AbstractLayer)硬件抽象层是Google开发的Android系统里上层应用对底层硬件操作屏蔽一个软件层次,说白了,就是上层的应用不用关心底层硬件具体如何工作的,只要向上层提供一个统一的接口即可,这种设计思想广泛的存在于当前的软件架构设计里。严格来讲,Android系统里完全可以没有HAL硬件转载 2013-03-20 16:47:11 · 814 阅读 · 0 评论 -
Linux内核栈信息获取与理解
Linux内核栈信息获取与理解1 内核栈获取C语言的函数调用,是通过栈来实现的。如下图所示: 函数调用栈内核异常或死机时,经常在内核日志中看到打印的栈信息和寄存器值。从函数栈信息,我们可以知道函数间的调用关系,从栈和寄存器数据,还可以得到各个变量、参数的值。对Linux内核理解和故障定位非常有帮助。若希望打印出栈信息的转载 2014-02-25 09:00:13 · 3101 阅读 · 0 评论 -
Linux系统对IO端口和IO内存的管理
Linux系统对IO端口和IO内存的管理一、I/O端口 端口(port)是接口电路中能被CPU直接访问的寄存器的地址。几乎每一种外设都是通过读写设备上的寄存器来进行的。CPU通过这些地址即端口向接口电路中的寄存器发送命令,读取状态和传送数据。外设寄存器也称为“I/O端口”,通常包括:控制寄存器、状态寄存器和数据寄存器三大类,而且一个外设的寄存器通常被连续地编址。二、IO内转载 2014-02-25 10:25:48 · 603 阅读 · 0 评论 -
Linux系统性能分析工具-操作篇
前面介绍了影响linux性能的几个方面以及如何解决这些方面的问题,但是如何才能从系统上发现是某个方面或某几个方面出现问题了呢,这就需要使用linux系统提供的几个常用性能分析工具,下面就具体讲述这几个常用性能分析工具的使用。1.vmstat命令vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,很多linux发行版本都默认安装了此命令工具,利用转载 2014-01-07 22:49:28 · 539 阅读 · 0 评论 -
Linux Input子系统之第一篇(input_dev/input_handle/input_handler)
Input子系统是linux kernel中与部分外围器件驱动联系比较紧密的模块,常用于Sensor,TP(touch panel),power key等器件的驱动。这类模块有个共同特点:字符设备,且数据量都不大,比如sensor一般最多只有xyz三个维度的数据。 整体来看,Input子系统有一个主线,那就是题目中这三个结构体的关系(下面简称为三方关系),input_dev对应于实际转载 2013-12-30 23:16:51 · 1093 阅读 · 0 评论 -
linux设备模型之input子系统
==================================本文系本站原创,欢迎转载!转载请注明出处:http://blog.youkuaiyun.com/gdt_A20==================================摘要:input子系统是kernel中比较简单的一个子系统,主要用来管理输入设备(触摸屏,键盘等等),个人感觉可以作为dr转载 2013-12-30 23:19:35 · 879 阅读 · 0 评论 -
Ubuntu下批处理转换jpg 2 png格式
分类: Android在jpg图片目录中运行:mogrify -format png *.jpg结果:得到png格式图片mogrify -resize 270x480 *.png 将图片分辨率修改为 270X480大小。批量修改文件名,将jpg后缀的文件修改为_small.jpgrename s/.jpg/_small.jpg转载 2013-10-15 09:14:12 · 4494 阅读 · 1 评论 -
Linux中的list_entry和container_of
Linux中的list_entry和container_of转自http://hi.baidu.com/mynana/blog/item/1da1ba99239ceb006f068c48.htmllist_entry宏是用来根据list_head指针查找链表所嵌入的结构体的地址,具体实现是依赖宏container_of:#define list_entry(ptr, t转载 2013-07-15 23:10:12 · 667 阅读 · 0 评论 -
深入分析 Linux 内核链表
一、 链表数据结构简介链表是一种常用的组织有序数据的数据结构,它通过指针将一系列数据节点连接成一条数据链,是线性表的一种重要实现方式。相对于数组,链表具有更好的动态性,建立链表时无需预先知道数据总量,可以随机分配空间,可以高效地在链表中的任意位置实时插入或删除数据。链表的开销主要是访问的顺序性和组织链的空间损失。通常链表数据结构至少应包含两个域:数据域和指针域,数据域用于存储数据,转载 2013-07-15 23:07:45 · 580 阅读 · 0 评论 -
ubuntu下git服务器的简单配置
Ubuntu下Git服务器安装与配置共设置3个角色,服务端,管理员,用户服务器上多个用户可对应多个超级管理员,但一个用户只能对应一个超级管理员1. 安装1.1 安装Git-Core:sudo apt-get install git-core 1.2 安装 Gitosissudo apt-get install python-setuptools mk原创 2013-05-23 20:35:50 · 3708 阅读 · 0 评论 -
gitosis/git服务器搭建
刚刚搭建了一个git服务器,碰到很多问题,记下了希望对后来人有所帮助。git的文档有很多很多,最经典的还是progit.pdf,所以我也是参照这份文档做的。以前一直用git,但是没有做过管理员。都说命令行好用,都是泪。废话少说,开始:1. 创建git用户这样所有用户都可以通过git用户来访问git服务器。你可以这样$ sudo adduser git$ su git原创 2013-05-23 20:32:34 · 2634 阅读 · 0 评论 -
ssh免输入密码登录
源地址:http://blog.youkuaiyun.com/lovingprince/article/details/6658516场景:服务器A 采用ssh 登录服务器B,没有任何特殊设置情况下,采用ssh host.b 会出现提示Password: 让输入密码。如何可以不手工输入密码?解决方案: 生成ssh公钥和私钥[plain] view p转载 2013-05-23 19:18:24 · 558 阅读 · 0 评论 -
APUE学习笔记第三章文件I/O
3.1 引言 大多数UNIX文件I/O只需用到5个函数:open,read,write,lseek 以及close.本章所说明的函数经常被称之为不带缓存的 I/O(unbuffered I/O,与将在第5章中说明的标准I/O函数相对照)。术语——不带缓存指的是每个read和write都调用内核中的一个系统调用。这些不带缓存的I/O函数不是ANSI C的组成部分,但是是POS原创 2013-05-16 17:43:28 · 661 阅读 · 0 评论 -
将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
工欲善其事,必先利其器。一个强大的开发环境可以大大提高工作效率。好吧,我知道这是废话。。。不过,我想一定有很多跟我一样打算进入Linux平台开发的新手,一开始都为找不到一个像Windows下的VS那样可以一键安装并且功能几乎完美无缺的开发工具而郁闷不已,甚至打算收回刚刚迈出的脚步。所幸的是,通过几天努力,我总算配置出了一个功能完备的基于Vim的开发环境。这个开发环境除了基本的Vim外,还包括Cta转载 2013-04-27 11:46:14 · 605 阅读 · 0 评论 -
Android HAL的被调用流程
在Android系统中,对于硬件的操作,使用HAL Stub的方式来实现。HAL Stub的具体写法请参照Android中HAL如何向上层提供接口总结 。 在我们写完HAL Stub之后,这个HAL Stub是如何被应用获取,如何被应用程序调用的呢? 显然,由于HAL Stub本质上是一个.so,在调用之后,需要上层应用对其进行加载,然后才能调用。哪么,HAL St转载 2013-03-22 09:37:09 · 628 阅读 · 0 评论 -
Android中HAL如何向上层提供接口总结-hw_device_t
参考文献:http://blog.youkuaiyun.com/luoshengyang/article/details/6573809http://blog.youkuaiyun.com/hongtao_liu/article/details/6060734建议阅读本文时先浏览以上两篇文章,本文是对上两篇文章在HAL对上层接口话题的一个总结.1 什么是HALHAL的全称是转载 2013-03-22 09:53:30 · 538 阅读 · 0 评论 -
了解Linux的进程与线程
Sunday, May 3rd, 2009 by Tim | 8 CommentsFiled under: Linux | Tags: Linux, process, thread上周碰到部署在真实服务器上某个应用CPU占用过高的问题,虽然经过tuning, 问题貌似已经解决,但我对tuning的方式只是基于大胆的假设并最终生效了。我更希望更多的求证一下程序背后CPU及OS转载 2013-01-17 13:18:33 · 484 阅读 · 0 评论 -
谈Linux内核定时器
Monday, May 18th, 2009 by Tim | Tags: kernel, Linux, timer看了3个周末的Linux内核,包括前两周总结的进程与线程,锁与同步。当时研究这个的原因是因为某个程序CPU context switch过高。不过到现在相关的背景知识也了解了,问题也早已经解决了,所以暂时也没有进一步的兴趣驱动去研究内核了,这里是终结篇。:)在应用转载 2013-01-17 13:19:54 · 412 阅读 · 0 评论 -
VMware tools的用途及安装
VMware是一个非常好的虚拟机软件,支持很多操作系统,平时用来测试和学习操作系统是非常方便的,在使用VMware的时候会经常有提示说你没有安装Vmware tools,那这个Vmware tools究竟是个什么东西呢?有什么作用?需不需要安装Vmware tools?如何安装Vmware tools?下面我来一一解答。虚拟机VMware tools的用途更新虚拟机中的显卡驱动,转载 2012-12-05 00:09:06 · 1437 阅读 · 0 评论 -
编译安装Fcitx输入法
编译安装Fcitx输入法 2011-08-04 17:13:00| 分类: 折腾的linux | 标签:fcitx |字号 订阅下载安装包 地址:http://code.google.com/p/fcitx/downloads/list 比如下载最新版4.0.1 wget转载 2012-12-04 23:22:38 · 1287 阅读 · 0 评论 -
Atheros AR9485 ubuntu 10.04 驱动安装[备忘]
Laptop: ACER Aspire 5733-6629Wireless:Lite-on HB125, CHIPS: Atheros AR9485Ubuntu: 10.04LTS (2.6.32-33)安装方法:1,suso apt-get install --reinstall linux-headers-$(uname -r) build-essential转载 2012-11-14 19:45:31 · 7248 阅读 · 0 评论 -
Debian 安装 AMD64位显卡驱动 报错的解决方案
首先,去amd官网下载适合自己的驱动。直接在google搜索栏里面输入显卡的名称即可,点击并下载。给个网址,自己可以选择了。http://support.amd.com/us/gpudownload/Pages/index.aspx如何查看自己显卡的型号呢?使用如下命令lspci -v或者是glxinfo | grep render我的是 AMD Radeo转载 2012-11-13 23:52:17 · 5226 阅读 · 0 评论