Linux
文章平均质量分 52
xiahouzuoxin
这个作者很懒,什么都没留下…
展开
-
Linux内核链表基础
1、内核链表的定义在include/linux/list.hstruct list_head { struct list_head *next, *prev;};容易看出,Linux内核链表为双向链表。 2、Linux链表与普通链表区别我们通常定义的链表是在链表节点中嵌入元素,比如struct MyList{ int StudentID; /*原创 2012-08-28 21:50:41 · 3566 阅读 · 0 评论 -
Rhythmbox中文乱码
建立一个Rhythmbox播放器的图标到Panel或者桌面或者任何可以修改图标内容的地方解决:图标上,右键 -> 属性 -> 命令 改为 env GST_ID3_TAG_ENCODING=GBK rhythmbox %U(原为rhythmbox %U)然后以新的图标启动rhythmbox,清空原有的媒体库,重新导入文件/目录即可.转载 2013-07-03 15:05:31 · 1166 阅读 · 0 评论 -
Linux环境高级编程:文件IO
这里提到的文件IO操作指不带缓存的IO操作,也就是说这里提到的函数的实现都是通过系统调用实现的,而不是直接对IO端口操作实现的。1、文件描述符(File Discriptor,fd)——Linux文件的身份证号码 文件描述符是一个非负的整数,当打开一个文件或创建一个文件时,内核向进程返回一个标识该文件的整数,即fd。注意,若文件不被创建打开(即没有载入进程),是没有文原创 2012-10-14 21:26:02 · 2477 阅读 · 0 评论 -
arm仿真器Skyeye的安装及使用
SkyEye是一个开源软件(OpenSource Software)项目,中文名字是"天目"。SkyEye的目标是在通用的Linux和Windows平台上实现一个纯软件集成开发环境,模拟常见的嵌入式系统,可在SkyEye上运行μCLinux以及μC/OS-II等,以及各种系统软件(如TCP/IP,图形子系统,文件子系统等),并可对它们进行源码级的分析和测试。 目前SkyEye可以原创 2012-10-02 17:08:21 · 3483 阅读 · 0 评论 -
Linux中源代码软件安装
我们常常在各种开源站点下载到源代码程序,通常为*.tar.gz格式,这里以一份用于Audio的开源代码库(libsndfile)的编译安装为例,说明源代码的编译安装过程。Step1:打开README文件,几乎所有的开放源代码中都含有该文件。别的不看,我们找到以下几行, If you really do need to compile from source i原创 2012-09-16 21:47:42 · 2023 阅读 · 0 评论 -
gcc常用控制选项
gcc生成可执行文件的4个步骤:预处理、编译、汇编、连接1、执行过程控制选项-c 编译或汇编源文件,但是不作连接.编译器输出对应于源文件的目标文件-S 编译后即停止,不进行汇编.对于每个输入的非汇编语言文件,输出文件是汇编语言文件.-E 预处理后即停止,不进行编译.预处理后的代码送往标准输出.2、输出文件控制选项-o [file] 指定输出文件为原创 2012-07-08 00:43:06 · 1369 阅读 · 0 评论 -
CentOS配置yum源
网易(163)yum源是国内最好的yum源之一 ,无论是速度还是软件版本,都非常的不错,将yum源设置为163yum,可以提升软件包安装和更新的速度,同时避免一些常见软件版本无法找到。V9zz的云主机就将yum源设置为163的yum,具体设置方法如下:1,进入yum源配置目录cd /etc/yum.repos.d2,备份系统自带的yum源mv Cen转载 2014-02-20 09:04:23 · 1324 阅读 · 0 评论 -
Linux系统备份
Linux系统备份原创 2014-05-08 17:36:55 · 2714 阅读 · 0 评论 -
实例学习gcc+gdb+make
为自己也为大家整理的。比较完善,看完后就能上手的gcc/gdb/make联合小教程原创 2014-05-10 14:53:47 · 11968 阅读 · 3 评论 -
CentOS配置smaba与Windows共享文件
我们知道Windows与Windows通过网络共享实现文件共享,Linux与Linux可通过NFS文件系统实现文件共享,而Windows与Linux如何实现文件共享呢,那就是Samba,本文参考相关资料,详述Samba配置的过程!原创 2014-06-13 10:40:13 · 6383 阅读 · 4 评论 -
编译LDD3的scull驱动问题总结
由于Linux内核版本更新的原因,LDD3(v2.6.10)提供的源码无法直接使用,下面是本人编译scull源码时出现的一些问题及解决方法。编译环境:CentOS 6.3(kernel version 2.6.32)编译错误:make -C /lib/modules/2.6.32-279.14.1.el6.i686/build M=/mnt/HappyStudy/MyDesig原创 2013-05-10 21:41:36 · 3626 阅读 · 2 评论 -
awk简明教程
有一些网友看了前两天的《Linux下应该知道的技巧》希望我能教教他们用awk和sed,所以,出现了这篇文章。我估计这些80后的年轻朋友可能对awk/sed这类上古神器有点陌生了,所以需要我这个老家伙来炒炒冷饭。况且,AWK是贝尔实验室1977年搞出来的文本出现神器,今年是蛇年,是AWK的本命年,而且年纪和我相仿,所以非常有必要为他写篇文章。之所以叫AWK是因为其取了三位创始人 Alfred转载 2013-11-26 09:42:48 · 1408 阅读 · 0 评论 -
关于启动Linux时出现Error $15的问题
Linux版本:CentOS6.3问题描述1:在使用U盘安装完系统后,拔掉U盘进入不了系统,插上U盘又能进入。问题描述2:硬盘安装完系统后,在Windows下修改了硬盘(压缩、扩展、分区等操作),重启后进入不了系统。以上是同一类问题:它们找不到GRUB引导,因此启动计算机后会进入GRUB > 界面。问题1是默认将GRUB启动安装到了U盘,问题2是因为修改硬盘原创 2012-10-05 11:11:51 · 3384 阅读 · 0 评论 -
Shell+VIM 命令及快捷键
每次使用Linux都会遇到一些新的问题,尤其像我们这样的初学者。因此这里打算记录每次使用Linux过程中学到的有用的命令,以备不时之需。PART1:Shell命令1、查看磁盘信息及使用容量,此命令不能查看为挂载的磁盘 df -hT 查看所有磁盘信息(包括未挂载的磁盘) fdisk -l(root用户下)2、查看file文件夹下文件原创 2012-10-06 17:00:06 · 5067 阅读 · 0 评论 -
Linux系统启动的标准流程
Linux系统启动的标准流程原文链接:http://www.kerneltravel.net/journal/i/04.htm系统的启动是指从计算机加电到显示用户登陆提示的整个过程。我们将在这里对整个流程以及关系到的一些内容做讨论。过程主要可以分为两个阶段:载入内核和准备运行环境,我们分别进行讨论。本部分的讨论只基于i386硬件架构,但大部分内容是有共通性的。图一 启动过程转载 2012-11-22 14:29:09 · 1300 阅读 · 0 评论 -
Linux内核编译与安装
操作环境:RHEL 5.1一、准备工作1、获取内核 http://www.kernel.org/2、解压缩内核文件,进入解压后内核源代码目录,切换至root用户tar -xzvf linux-2.6.39.4.tar.bz2cd /mnt/hgfs/linux-2.6.39.4su root二、内核编译3、内核清理:清理源代码中的*.原创 2012-10-03 13:22:12 · 2396 阅读 · 0 评论 -
Linux文件系统及目录
原文出处:http://blog.csdn.net/omohe/article/details/1899915Linux 文件系统的目录结构 Linux下的文件系统为树形结构,入口为/ 树形结构下的文件目录: 无论哪个版本的Linux系统,都有这些目录,这些目录应该是标准的。各个Linux发行版本会存在一些小小的差异,但总体来说,还是大体差不多。1. / 文件系统的入口,最高一级目录转载 2012-12-12 20:52:57 · 1428 阅读 · 0 评论 -
内核卸载
操作环境:CentOS 6.3 今天使用Yum对内核进行了更新,默认的系统不会覆盖原来的内核,因此操作系统启动项多了一项——新安装的内核。若经常更新,那还了得,因此想办法把旧的内核卸载了。当然,如果你保证不会删除错,你可以到/boot目录下手动删除。这里的方法只是当作卸载rpm软件包操作一样。1、查看所有已安装的内核rpm -qa kernel原创 2012-10-07 16:45:21 · 2722 阅读 · 0 评论 -
内核模块编程基础
1、应用程序与内核模块内核模块可以看做内核程序的一部分,类似于Window下的补丁,但安装比补丁方便,可在内核运行时安装与卸载(1)应用程序:man函数的return执行完后则应用程序退出,释放内存(2)内核模块:安装完成后就驻留在系统内存中2、程序结构(1)#include #include (2)模块加载函数 —— 必需 mod原创 2012-08-25 21:34:14 · 1897 阅读 · 0 评论 -
Linux设备驱动模型
尽管LDD3中说对多数程序员掌握设备驱动模型不是必要的,但对于嵌入式Linux的底层程序员而言,对设备驱动模型的学习非常重要。Linux设备模型的目的:为内核建立一个统一的设备模型,从而又一个对系统结构的一般性抽象描述。换句话说,Linux设备模型提取了设备操作的共同属性,进行抽象,并将这部分共同的属性在内核中实现,而为需要新添加设备或驱动提供一般性的统一接口,这使得驱动程序的开发变得更简原创 2013-05-18 14:11:31 · 32119 阅读 · 6 评论 -
基于Tiny6410的LED驱动程序
从电路图中看出,GPIO低电平有效(LED亮)。GPK共有16个端口,每个端口由三个寄存器控制——控制寄存器(GPKCON)、数据寄存器(GPKDAT)和上拉寄存器(GPKPUD),每个寄存器都是32位,如下图所示。GPK的控制寄存器分为两个,GPKCON0控制0~8好端口,GPKCON1控制9~15号端口。控制寄存器连续的4位控制一个端口,如下图中LED对应的控制寄存器。原创 2013-05-07 19:03:27 · 2592 阅读 · 0 评论 -
简单字符设备驱动程序
理论知识参考Linux Device Driver, 3rd Edition。实验中使用主动分配主设备号,按照LDD3中说的最好是自动分配设备号,这里只是为了理解。实验步骤如下:(1)使用cat/proc/device查看字符设备主设备号,这里假设50主设备号没有使用而在本设备中使用。 创建字符设备文件节点:mknod/dev/mycdev c 50 0 修改设备文原创 2013-05-07 19:07:53 · 3162 阅读 · 0 评论 -
Linux内核链表
以下全部来自于http://www.ibm.com/developerworks/cn/linux/kernel/l-chain/index.html 无任何个人意见。本文详细分析了 2.6.x 内核中链表结构的实现,并通过实例对每个链表操作接口进行了详尽的讲解。一、 链表数据结构简介链表是一种常用的组织有序数据的数据结构,它通过指针将一系列数据节点连接成一条数据链,是线性表的转载 2012-08-26 22:34:00 · 1260 阅读 · 0 评论 -
arm交叉编译工具搭建
操作平台:REL5.1交叉编译工具版本:arm-linux-gcc 4.3.2 附工具下载地址:http://www.arm9.net/download-arm-linux-gcc-4.3.2.asp1、进入root用户命令行模式,运行su root2、拷贝下载的工具链到任何目录下,我放在 /mnt/hgfs/Linux/ 目录下3、进入工具链放原创 2012-09-30 21:01:15 · 3008 阅读 · 0 评论 -
Linux操作系统原理与应用(陈莉君)——学习笔记
《Linux操作系统原理与应用》作者陈莉君是翻译《深入理解Linux内核》的作者。虽然我不觉得《深入理解Linux内核》翻译得很好,但是从作者这种为推广Linux内核而努力的精神还是挺佩服的,因此,这里无私分享出学习《Linux操作系统原理与应用》的学习笔记。书中给出了许多代码实例,很适合结合边学习边实践。该教材还提供实践学习网站:Linux内核之旅网站中有许多关于Li原创 2013-05-08 13:27:48 · 13039 阅读 · 28 评论