linux/unix
文章平均质量分 62
vrix
产品经理
展开
-
我的git 命令别名(alias)配置
我的GITCONFIG配置原创 2022-07-14 09:16:37 · 515 阅读 · 0 评论 -
批量删除git仓库的cherry-pick-* 分支
#!/bin/shpath=$(pwd)cd $pathvariable=$(git branch -a)array=(${variable// / }) for var in ${array[@]}do if [[ $var == remotes/origin/cherry-pick-* ]];then git push origin --delete ${var##*/} fidone这个脚本已经经过验证,可以放心使用唯一要注意的是,请...原创 2022-03-31 16:54:59 · 555 阅读 · 0 评论 -
Linux文件系统VFS
文章目录1. VFS概念1.1 VFS存在的意义1.2 VFS中的4个主要对象2. 超级块3. 文件4. 目录5. 索引节点6. 文件处理流程示例7. 参考文档1. VFS概念为了保证Linux的开放性,设计人员必须考虑如何使Linux除支持Ext2文件系统外,还能支持其他各种不同的文件系统。为此,就必须将各种不同文件系统的操作和管理纳入到一个统一的框架中,使得用户程序可以通过同一个文件系统界面,也就是同一组系统调用,能够对各种不同的文件系统以及文件进行操作。这样,用户程序就可以不关心各种不同文件系统原创 2021-10-21 14:28:59 · 122 阅读 · 0 评论 -
LINUX内核学习
LINUX内核学习1. 系统调用1.1. 什么是系统调用1.2 传统系统调用1.3 系统调用大致可分为六大类1.4 参考文档2. 内核数据结构2.1 传统的双向链表和内核中的双向链表的区别2.2 队列2.3 映射2.1 参考文档3. 中断处理3.1 中断3.2 中断类型3.2.1 硬件中断3.2.2 软件中断3.2.3 异常3.3 参考文档4. 中断下半部的处理4.1 软中断4.2 TaskLet4.3 工作队列 (work queue)4.4 参考文档5. 内核同步与互斥5.1 各种同步机制5.2参考文档原创 2021-10-20 18:13:35 · 132 阅读 · 0 评论 -
ubuntu 升级python 2.7 的pip 到20.0.2 结果无法正常使用的解决办法
python 的pip 升级之后,遇到了下面这个错误pkg_resources.DistributionNotFound: The 'pip==1.5.4' distribution was not found and is required by the application处理方法:sudo apt-get purge python-pipwget https://boot...原创 2020-04-24 10:45:42 · 1573 阅读 · 1 评论 -
DES算法的C语言代码
/* ================================================================des()Description: DES algorithm,do encript or descript.================================================================ */#if 0extern原创 2005-10-19 10:57:00 · 3686 阅读 · 1 评论 -
linux下RealPlayer 安装解决 libstdc++.so.5的依赖问题
yum install libstdc++.so.5就这么简单的方法,就可以解决,当然前提是你的PC联网,我也是找了好久之后,无意中发现这个方法。之前费了好多时间都没有搞出来,都有些失望了。既然解决了依赖问题,你要作的 就是 下载最新的 RealPlayer (LINUX版本哦),然后 安装。原创 2006-09-07 23:23:00 · 3062 阅读 · 0 评论 -
ELF动态解析符号
★★ 前言本篇文章以linux为平台为例,演示ELF动态解析符号的过程。不正之处,还请斧正。通常,ELF解析符号方式称为lazy MODE装载的。这种装载技术是ELF平台上默认的方式。在不同的体系平台在实现这种机制也是不同的。但是i386和SPARC在大部分上是相同的。动态连接器(rtld)提供符号的动态连接,装载共享objects和解析标号的引用。通常是ld.so,它可以是一个共享object也转载 2006-09-23 10:06:00 · 1595 阅读 · 0 评论 -
从core映像文件中重新构造ELF可执行文件
从core映像文件中重新构造ELF可执行文件------------------------------------------------ - Silvio Cesare - December 1999 - http://www.big.net.au/~silvio - http://virus.beergrave.net/整理:e4gle from e4gle.or转载 2006-09-23 10:04:00 · 1694 阅读 · 0 评论 -
让Expat支持中文XML
在很多地方看到对一篇如何让Expat支持中文XML>的文章,其中提到:Expat并不支持中文,Expat不支持gb2312编码格式,主要支持UTF-8编码格式两种解决办法: 1、改写Expat源代码,这样效率高,但不方便今后Expat代码的升级; 2、首先将gb2312格式的文本转换为UTF-8格式文本,然后让Expat解析,解析出的数据再转换为gb2312格式以方便处理。效率原创 2006-05-26 10:48:00 · 6918 阅读 · 0 评论 -
Source游戏开发
一, 底层开发包和工具 1. http://www.mesa3d.org Mesa是一个类OpenGL(http://www.opengl.org)的开源实现. 2. http://openil.sourceforge.net DevIL (即以前的OpenIL)是一个跨平台的图形处理包,支持BMP,JPG,GIF等多种图形文件格式. 二, 2D游戏开发包 1. http://www.libsd转载 2008-08-23 15:32:00 · 341 阅读 · 0 评论 -
uClinux 启动过程详细分析
大家对uclinux的启动应该都比较熟悉,作为一名嵌入系统开发者,你一定遇到过下面的情景:在某论坛上看到一篇帖子,上面贴着uclinux开发板启动时的一堆信息,然后大家在帖子里讨论着这个启动过程中出现的问题,随机举例如下: Linux version 2.4.20-uc1 (root@Local) (gcc version 2.95.3 20010315 (release)(C转载 2008-08-30 09:20:00 · 729 阅读 · 0 评论 -
KVM在嵌入式Linux上的移植
目前嵌入式Linux被广泛应用于嵌入式设备,Java语言由于其”Write Once,Run Anywher e”的特性,开始被应用于掌上电脑、智能手机等嵌入式系统。本文以uCLinux嵌入式操作 系统为例,介绍移植KVM的过程。分以下部分进行介绍: 1. uCLinux及KVM简介 2. 获取并安装交叉开发工具 3. 获取KVM源代码 4. 修改KVM的Makefile 5.转载 2008-09-09 23:36:00 · 820 阅读 · 0 评论 -
Intel平台下Linux中ELF文件动态链接的加载、解析及实例分析(一):
动态链接,一个经常被人提起的话题。但在这方面很少有文章来阐明这个重要的软件运行机制,只有一些关于动态链接库编程的文章。本系列文章就是要从源代码的层次来探讨这个问题。当然从文章的题目就可以看出,intel平台下的linux ELF文件的动态链接。一则是因为这一方面的资料查找比较方便,二则也是这个讨论的意思比其它的动态链接要更为重要(毕竟现在是intel的天下)。当然,有了这么一个例子,其它的平台原创 2008-07-04 17:29:00 · 875 阅读 · 0 评论 -
linux-2.6.24.4中和dma有关的函数的分析
首先介绍s3c2410与DMA相关的寄存器。s3c2410共有4通道的dma,每通道9个寄存器,共36个。 1、DISRCn 该寄存器保存待传送数据的源地址。 2、DISRCCn 源控制寄存器。位1表示数据源的总线类型,位0表示地址是否自动增减。 3、DIDSTn 该寄存器保存待传送数据的目的地址。 4、DIDSTCn 目的控制寄存器。位1表示目的地址的总转载 2009-07-24 11:14:00 · 899 阅读 · 0 评论 -
2410下DMA驱动源码分析
关于2410下的DMA操作模式等信息的介绍请参考我的另外一篇文章>, 这里主要以kernel为2.6.22的源码来对2410DMA的驱动源码的做个分析.首先我们由kconfig和makefile来获取DMA方面相关文件(即源码): Arch/arm/plat-s3c24xx/Dma.c Arch/arm/mach-s3c2410/Dma.c 以上两个就是操作DMA的核心文件.转载 2009-07-24 11:00:00 · 970 阅读 · 0 评论 -
S3C2410的linux下DMA驱动程序开发
网上介绍LINUX下的一般驱动程序开发示例浩如烟海,或是因为简单,关于DMA驱动的介绍却寥寥无几;近期zhaoyang因工作需要,花了几日时间开发了某设备在S3C2410处理器Linux下DMA通信的驱动程序,有感于刚接手时无资料借鉴的茫然,故写点介绍,期待能给有DMA开发任务的网友们一点帮助。本文将包括如下内容:DMA驱动主要函数功能 驱动中关键技术分析 具体的DMA实例转载 2009-07-24 11:48:00 · 836 阅读 · 0 评论 -
Tslib校准过程
在采用触摸屏的移动终端中,触摸屏性能的调试是个重要问题之一,因为电磁噪声的缘故,触摸屏容易存在点击不准确、有抖动等问题。Tslib是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等 功能,通常作为触摸屏驱动的适配层,为上层的应用提供了一个统一的 接口。在Qtopia 4.*版本中,默认的Tslib版本为Tslib 1.4。在Qtopia 2.*版本中,默认的Tsl转载 2009-05-13 11:53:00 · 2169 阅读 · 0 评论 -
linux configure参数
Linux环境下的软件安装,并不是一件容易的事情;如果通过源代码编译后在安装,当然事情就更为复杂一些;现在安装各种软件的教程都非常普遍;但万变不 离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而解了。Configure脚本配置工具就是基础之一,它是autoconf的工具的基本应用。 与一些技巧相比,Configure显得基础一些,当然使用和学习起来就显得枯燥乏味一些,当然要成为高手,原创 2009-05-13 13:42:00 · 610 阅读 · 0 评论 -
Linux 2.6.10 以后版本对 S3C2410 的支持
Linux 2.6.10以后,Samsung S3C2410已经成为linux的一个标准支持平台, 无需任何patch就可以在S3C2410的目标板上运行得很好。 从目前追踪2.6内核代码的情况来看: 1、2.4内核代码越升级写的越混乱,特别是mizi的那套release版本,韩国人的编码风格实在不好。 2、2.6的代码结构比2.4更加清晰,资源的定义进行了分类,可读性很好,条理清楚,修改起来容易转载 2009-07-23 11:01:00 · 590 阅读 · 0 评论 -
I2C总线协议及其应用(1)
一、I2C总线介绍:---- 由于大规模集成电路技术的发展,在单个芯片集成CPU以及组成一个单独工作系统所必须的ROM、RAM、I/O端口、A/D、D/A等外围电路和已经实现,这就是常说的单片机或微控制器。目前,世界上许多公司生产单片机,品种很多:包括各种字长的CPU,各种容量和品种的ROM、RAM,以及功能各异的I/O等等。但是,单片机品种规格有限,所以只转载 2009-07-28 11:10:00 · 1439 阅读 · 0 评论 -
嵌入式linux GUI--DirectFB + GTK至尊秘笈
版权申明: 本文档一切权利归本人(kendych@sina.com.cn)所有,用于商业用途徐征得本人同意,如无法联系到本人,须征得www.directfb.com.cn所有者同意;用于非商业用途的,无需任何许可,但请尊重本人的署名权,并注明出处www.directfb.com.cn及附加本申明。关键词: 嵌入式 GUI arm linux DirectFB GTK tslib1 前言转载 2009-05-13 11:54:00 · 1843 阅读 · 0 评论 -
2410下clock源码分析
这篇文章主要使用2.6.22下2410方面关于clock的源码来进行简单的分析, 希望通过这篇文档能对系统中的clock的使用问题有个了解. 写这篇文档除了参考了源码外, 还要参考2410的datasheet, 毕竟代码都是按照spec来写的嘛.我们先来看下2410下各转载 2009-07-25 10:19:00 · 823 阅读 · 0 评论 -
FCLK PCLK HCLK
一、对clock的基本认识1 s3c2410的clock & powermanagement模块包含三个部分:clock control、usb control、powercontrol。现在的关注点是clock control。 2、s3c2410有两个pll(phase lockedloop,锁相环,在高频中学过,可以实现倍频,s3c2410的高原创 2009-07-28 11:04:00 · 14038 阅读 · 2 评论 -
s3c2410 watchdog详解
1.什么是watchdog?watchdog,中文名称叫做“看门狗”,全称watchdogtimer,从字面上我们可以知道其实它属于一种定时器。然而它与我们平常所接触的定时器在作用上又有所不同。普通的定时器一般起记时作用,记时超时(TimerOut)则引起一个中断,例如触发一个系统时钟中断。熟悉windows开发的朋友应该用过windows的Timer,window转载 2009-07-28 11:06:00 · 1279 阅读 · 1 评论 -
I2C总线协议及其应用(3)
-2.通用I/O端口作为I2C总线接口---- 目前,51、96系列的单片机应用很广,但是它们都没有I2C总线接口,限制了在这些系统中使用具有I2C总线接口的器件。但通过对I2C总线时序的分析知道可以用51单片机的两根I/O线来实现I2C总线的功能。I2C总线转载 2009-07-28 11:17:00 · 917 阅读 · 0 评论 -
S3C2410中的脉宽调制定时器(PWM)
S3C2410有5个16bit定时器。定时器0-3有脉宽调制功能(PulseWidthModulation,PWM),定时器4是内部定时器,没有输出引脚。定时器0有Dead-zone发生器,可以保证一对反向信号不会同时改变状态,常用于大电流设备中。 定时器0-1共用一个8bitprescaler,定时器2-4共用另外一个。每个定时器有一个时钟分频器,可以选择5种分频方转载 2009-07-28 11:03:00 · 1735 阅读 · 0 评论 -
I2C总线协议及其应用(2)
2.I2C数据传输---- 在I2C总线传输过程中,将两种特定的情况定义为开始和停止条件(如图3):当SCL保持“高”,SDA由“高”变为“低”时为开始条件;SCL保持“高”,SDA由“低”变为“高”是为停止条件。开始和停止条件由主控器产生。使用硬件接口可以很容易地检测开始和停止条件,没有这种接口的微机必须以每时钟周期至少两次对SDA取样以使检测这种转载 2009-07-28 11:11:00 · 1182 阅读 · 0 评论 -
SWI 软中断详解
软中断:编程异常通常叫做软中断软中断是通讯进程之间用来模拟硬中断的一种信号通讯方式。中断源发中断请求或软中断信号后,CPU或接收进程在适当的时机自动进行中断处理或完成软中断信号对应的功能软中断是软件实现的中断,也就是程序运行时其他程序对它的中断;而硬中断是硬件实现的中断,是程序运行时设备对它的中断。 1.软中断发生的时转载 2009-07-28 11:08:00 · 6377 阅读 · 1 评论 -
android 资源列表-史上最有价值的android资源链接
android资源列表建立对目的,是收集android相关对项目,论坛,资源网站的链接。方便移植和使用android的朋友快速找到需要的信息,资源。由于android是基于linux内核,所以以下列表会给出linux世界比较有价值的网站和论坛链接。暂时没有分类。http://code.google.com/p/android/http://developer.android.com/i原创 2009-08-12 14:24:00 · 2039 阅读 · 1 评论 -
linux下tar gz bz2 tgz z等众多压缩文件的解压方法
对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名给搞晕。别个不说,单单就压缩文件为例,我们知道在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rar。可是Linux就不同了,它有.gz、.tar.gz、tgz、bz2、.Z、.tar等众多的压缩文件名,此外windows下的.zip和.rar也可以在Linux下使用,不过在Linux使用.zip和.r转载 2009-08-17 16:09:00 · 753 阅读 · 0 评论 -
关于Linux系统中用户权限问题
LINUX文件权限针对的对象分三类(互斥的关系): 1. user(文件的拥有者) 2. group(文件拥有者所在的组,但不包括user) 3. other(其它用户,即user和group以外的) LINUX用一个3位二进制数对应着文件的3种权限(1表示有该权限,0表示无): 第1位 读 r 100 4 第2位 写 w 010 2 第3位 执行 x 001 1 查看权限 #ls -l 第一列,原创 2009-08-17 17:49:00 · 601 阅读 · 0 评论 -
uClinux 启动过程详细分析
uclinux启动的详细过程有着诸多的信息可以给我们巨大的启发,我们在这里讨论的就是要对这些信息做一个具体细致的分析,通过我们的讨论,大家会对uclinux启动过程中出现的、以前感觉熟悉的、但却又似是而非的东西有一个确切的了解,并且能了解到这些输出信息的来龙去脉。uclinux的启动过程,它是一幅缩影图,对它有了一个详细的了解后,有助于指导我们更加深入地了解uclinux的核心。原创 2009-06-13 09:12:00 · 721 阅读 · 0 评论 -
uClinux移植概述
1.建立开发环境 作为uClinux系统的移植和开发的主机最好使用Linux操作系统,如果选择Windows平台作为开发平台则需要Cygwin软件包的支持。在这里我们选用的开发平台是Fedora Core2,内核版本为2.4.x。在进行uClinux的移植和开发之前,我们需要建立系统的交叉编译环境,因为做为主机我们使用的是IA32体系结构的处理器,而开发板我们才用的是A原创 2009-06-13 09:10:00 · 640 阅读 · 0 评论 -
ubuntu console 中文无法正常显示的问题
如果是在secureCRT中看到中文显示不正常的话,操作如下:1) 修改 /var/lib/locales/supported.d/locale 文件内容为 en_US.UTF-8 UTF-8 zh_CN.UTF-8 UTF-8 zh_CN GB23122) 运行 locale-gen 如果是在 gnome终端中看不到正常的中文显示,你可以再.bashrc文件中加入ex原创 2009-08-17 15:15:00 · 1573 阅读 · 0 评论 -
ARM中MMU工作原理
本文描述基于存储器管理单元的系统结构, 包含以下内容:· 关于存储器管理单元的结构· 存储器访问的顺序· 转换过程· 访问权限· 域· 异常· CP15 寄存器http://embedded.homeunix.org 30/06/2003Page 3 of 33.1 关于存储器管理单元的结构MMU 存储器系统的结构允许对存储器系统的精细控制原创 2009-06-16 11:13:00 · 3595 阅读 · 0 评论 -
linux用户权限的管理
在Linux操作系统中,root的权限是最高的,也被称为超级权限的拥有者。普通用户无法执行的操作,root用户都能完成,所以也被称之为超级管理用户。在系统中,每个文件、目录和进程,都归属于某一个用户,没有用户许可其它普通用户是无法操作的,但对root除外。root用户的特权性还表现在root可以超越任何用户和用户组来对文件或目录进行读取、修改或删除(在系统正常的许可范围内);对可执行程序的执行转载 2009-08-17 17:50:00 · 704 阅读 · 0 评论 -
Linux文件查找命令find,xargs详述
目录版权声明前言:关于find命令一、find 命令格式1、find命令的一般形式为;2、find命令的参数;3、find命令选项;4、使用exec或ok来执行shell命令; 二、find命令的例子;1、查找当前用户主目录下的所有文件;2、为了在当前目录中文件属主具有读、写权限,并且文件所属组的用户和其他用户具有读权限的文件;3、为了查找系统中所有文件长度为0的普通文件,转载 2009-08-17 18:12:00 · 550 阅读 · 0 评论 -
ubuntu下ibus输入法的安装
方法一:1.添加ibus源加入:deb http://ppa.launchpad.net/ibus-dev/ppa/ubuntu jaunty maindeb http://ppa.launchpad.net/ibus-dev/ibus-1.2-intrepid/ubuntu intrepid maindeb http://ppa.launchpad.net/ibus-转载 2009-08-22 00:33:00 · 1524 阅读 · 1 评论 -
基于Windows手机的android移植可行性分析收藏
一 网络成功移植案例1 Android在OMAP上移植(国外)手机原系统:Linux kernel 2.6.23CPU处理器:OMAP5912移植完成部分:<span lang=EN-US style="font-size:12.0pt;mso-fareast-font-family:Sim原创 2009-06-15 09:31:00 · 1527 阅读 · 0 评论