Linux
文章平均质量分 56
Suagr
这个作者很懒,什么都没留下…
展开
-
VIM学习(积累中....)
1.快速删除一个单词 daw原创 2015-08-02 14:20:42 · 684 阅读 · 0 评论 -
Ubuntu14.04 GLUT的安装
第一步更新源,最好换成国内的一些源,开始因为一些原因,始终安装不成功,换了源以后问题一下就解决了。换源教程,来自百度经验.我用的网易和阿里云,速度还不错。ubuntu14.04下安装opengl教程:https://github.com/cheyiliu/All-in-One/wiki/OpenGl-env-setup—ubuntu14.04安装完后用程序进行测试,测试代码如下:include <G原创 2015-06-20 09:09:06 · 13076 阅读 · 1 评论 -
VIM打开中文乱码的解决办法
刚才用VIM打开自己写的程序,注释中的中文全是乱码,网上搜了下解决办法,就是要修改VIM配置文件来指定文件打开时的编码方式: 参考教程:http://www.cnblogs.com/hopeworld/archive/2011/04/20/2022331.html打开自己的.vimrc文件,添加如下两行:set fileencoding=gb18030 set fileencodings=utf原创 2015-06-20 17:14:57 · 4866 阅读 · 1 评论 -
Ubuntu14.04 VIM的插件管理
Ubuntu14.04 VIM的插件管理如果光一个自带的VIM,几乎是很简陋的。但是我们可以通过各种插件将VIM打造的越来越好。 而VIM下就有一款这个插件管理工具,叫做Vundle。官方网址 Vundle的特点:在.vimrc中记录和配置你的插件安装配置插件(又名 脚本/包)更新配置插件按名称搜索所有可用VIM脚本清理未使用的插件上面的一切都可以直接通过文本交互模式来进行Vundl原创 2015-06-20 08:00:20 · 4225 阅读 · 0 评论 -
Ubuntu14.04 安装Visual Studio Code
Viiual Studio Code是微软推出的一款开源的跨平台文本编辑器,刚才试用了下非常不错。虽然现在还只是0.3.0版本,但是作为编辑器已经该有的都有了。网上推荐的有通过Ubuntu Make来进行安装,其实还有一种简便的方式。就是直接下载包然后解压。下载地址:https://code.visualstudio.com/Download选择适合自己的安装包,我是32位的LInux。下载后解压缩原创 2015-06-20 22:08:51 · 9627 阅读 · 0 评论 -
linux下的PDF阅读软件
每次用Linux时,看PDF的话要在window下看,这样切换很麻烦。于是想找一个Linux下的PDF阅读软件,但是看了些都不怎么样。最后发现一个Foxit reader for linux 1.1 。这个是几年前的了,一直没有更新,不过用着还不错。网上搜一搜就能下到了,官方网站上也有。下载后为bz2的文件。需要解压: tar -jxvf xxxxxx解压后文件里面有个FoxitRead原创 2013-06-26 15:16:00 · 3022 阅读 · 0 评论 -
S3C2440的内存管理
SDRAM对自己来说是个新东西,所以读起来并不轻松。这个RAM的分类有SRAM和DRAM,分别是静态RAM和动态RAM,两个的内部构造不一样,可以百度一下。而SDRAM则是同步的动态RAM,同步的好处就是与处理器控制匹配,操作起来就容易多。下面看看S3C2440的内存控制是怎么样的,下面截图是一个概述。S3C2440的内存图根据是否由NAND FLASH来启动有不同区别,下图展示了24原创 2012-12-18 17:02:49 · 2373 阅读 · 0 评论 -
ARM9的裸奔(一)——GPIO的输入与输出
S3C2440A有九组IO口,共130个。每组IO口数目不同,其中A组口只有输出功能。截图如下:关于对IO口的操作,就主要设计到3个寄存器。GPXCON(配置),GPXUP(上拉使能),GPXDAT(数据)。其中GPXCON配置IO寄存器中每两位控制1个IO口。00表示输入,01表示输出,10表示第三功能,11保留。对数据寄存器GPXDAT的操作则是相应位写1高电平,写0低电平。上原创 2012-12-17 20:02:15 · 4657 阅读 · 0 评论 -
KEIL+JLINK+Small2440下的SDRAM调试配置
本人机子WIN7,装ADS很蛋疼,首先要在兼容模式下使用,看着很不爽。这还算了,用JLINK居然有问题。无奈放弃ADS,但是用ADS开发的资料多啊。最后选择用KEIL,网上搜了下资料,发现还是有前人这么做,于是鼓捣鼓捣,按照他们的方法弄,可就是不成功。最后还是自己折腾半会儿才弄好(可能是跟他们的版本或者JLINK版本不一样的原因吧)。写出来,免得以后又忘了。。。这种东西要贴图:原创 2012-12-17 11:10:50 · 3156 阅读 · 0 评论 -
ADS1.2环境下新建一个ARM9工程
ADS1.2的安装和新建工程就不用说明了。关键的是根据ARM9所做的具体设置。下面截图说面流程。点击圈中的DebugRel Settings进行DebugRel 选项下的工程设置。在target settings设置Post-linker表示连接后生成ELF镜像文件。原创 2012-12-27 22:57:49 · 2514 阅读 · 0 评论 -
Ubuntu14.04 lua游戏引擎Love安装
打开终端,输入:sudo add-apt-repository ppa:bartbes/love-stable然后:sudo apt-get update最后:sudo apt-get install love输入:love --version最新版本为:LOVE 0.9.2 (Baby Inspector)运行love:love gamename.love下面是游戏的运行效果:可以在官网上最下面下原创 2015-06-21 18:13:03 · 1016 阅读 · 0 评论 -
ubuntu14.04 查看安装包版本号/Python pip virtualenv安装
查看安装版本号:终端在终端下也可以很方便查看已安装的软件包版本号,也能单独查看所需要的软件包是否已安装和版本号,还能查看可升级的软件包。在终端下要实现这个目标就要用到一个软件工具叫做apt-show-versions,通过apt-get安装:$sudo apt-get install apt-show-versions或者单击下面图标安装(仅在Ubuntu下的Firefox有效):安装好之后就可以在原创 2015-06-21 17:13:40 · 11407 阅读 · 0 评论 -
arm交叉编译器gnueabi、none-eabi、arm-eabi、gnueabihf、gnueabi区别
命名规则交叉编译工具链的命名规则为:arch [-vendor] [-os] [-(gnu)eabi]arch - 体系架构,如ARM,MIPS vendor - 工具链提供商 os - 目标操作系统 eabi - 嵌入式应用二进制接口(Embedded Application Binary Interface) 根据对操作系统的支持与否,ARM GCC可分为支持和不支持操作系统,如arm-转载 2015-08-12 22:41:07 · 2116 阅读 · 0 评论 -
ubuntu14.04 安装FLASH插件
ubuntu14.04下安装Flash插件的方式如下:sudo apt-get updatesudo apt-get install flashplugin-nonfree-extrasound原创 2015-06-13 17:09:59 · 1422 阅读 · 0 评论 -
ubuntu14.04 Markdown编辑器推荐之Remarkable
现在已经习惯了用Markdown编辑器写博文的习惯,那么ubuntu下面有什么好用的呢?搜索中发现了这个叫Remarkable的免费Markdown编辑器。为什么推荐这个呢?说说它的特点:实时预览支持Github Markdown语法格式能导出为PDF或者HTML CSS可定制 语法高亮 完全可定制化 支持数学公式支持键盘快捷键看着上面的特点,是不是已经够强大了!基本和我在wind原创 2015-06-12 00:44:56 · 10267 阅读 · 1 评论 -
Ubuntu14.04 安装git
参考教程:git介绍:安装,使用,创建分支安装的方法有两种,一种直接是通过ubuntu的APT安装,这种方法最简便,缺点是版本可能不是最新的。所有还有另一种方法是下载源码进行安装,这种能安装到想要的版本。这里只说第一种:步骤:sudo apt-get updatesudo apt-get install git然后配置自己的git账号信息,这样才能进行相关的操作:git config --glo原创 2015-06-12 00:03:03 · 46897 阅读 · 4 评论 -
Markdown中如何插入EXCEL表格
今天写一篇文章的时候,需要在文章中插入一段表格,开始本打算用截图,但是这个表格有点长,截图显然不合适,而且截图不好看,看了CSDN的MARKDOWN插入表格的说明,太麻烦了。有什么简单的方法呢?通过强大的百度,找到了解决的方法:这里是网友的解决办法:http://www.ituring.com.cn/article/3452 这是一个能将EXCEL表格转化成HTML格式的在线网址:http://p原创 2015-06-10 00:05:10 · 22095 阅读 · 3 评论 -
ubuntu14.04安装搜狗拼音输入法
自带的iBus输入法真的很蛋疼,表示用不来。于是下载了搜狗拼音,搜狗公司好,出来了linux版本的搜狗拼音输入法。 官网地址:http://pinyin.sogou.com/linux/ 进去下载相应的版本,我的是32版本,支持ubuntu12.04和14.04。14.04的话直接下载安装deb包就是了,安装完后重启就OK啦。还支持换皮肤,很不错。原创 2015-06-07 15:59:46 · 2344 阅读 · 0 评论 -
详细完整——XP系统硬盘安装Ubuntu14.04
这两天在XP下硬盘安装ubuntu14.04,真的是人给折腾掺了。网上的教程很多只说了一半,后面一半没有说,而正是这后面的一半的不了解把人折腾坏了。幸好经过论坛好心人帮助和自己思索变通,成功完成了ubuntu14.04的安装。现在来说下怎么安装的:先说下安装过程中用到的软件:grub4dos:这个软件是用来引导ubuntu安装的,最后也可以用来进行安装后的ubuntu系统引导(这正是让我折腾了不少原创 2015-06-07 13:17:54 · 23971 阅读 · 7 评论 -
Ubuntu14.04 安装Tiled Map Editor(地图编辑器)
通过PPA安装,这样能保证安装到最新的,而且最好安装Daily版本的,这样就是最新的,但是也有问题,可能有Bug,看自己选择,我选择的就是Daily版本的.给出Tiled Map Editor的官网地址添加PPA:sudo sudo add-apt-repository ppa:mapeditor.org/tiled更新源sudo apt-get update安装tile map editorsud原创 2015-06-22 16:33:54 · 1485 阅读 · 0 评论 -
Ubuntu14.04利用byzanz制作gif格式动画
让博客生动形象的方式是图文并茂,更生动形象的方式就是放上动图。比如GIF动图。为此专门进行了一番搜索,发现了Ubuntu下有个叫做byzanz的制作GIF的软件。byzanz安装:sudo apt-get install byzanzbyzanz有两个命令:byzanz-record byzanz-playback第一个就是录像的,第二个就是回放用的。来篇使用参考教程:Make Animate原创 2015-06-22 13:18:11 · 4505 阅读 · 2 评论 -
数据结构学习(十五)——冒泡排序
在前篇的选择排序中,n个数据最多进行n-1次交换,但每次交换前要进行大量比较操作来确定交换对象,比较次数远大于交换次数。而交换操作只是数据的读写,数据规模较小时,其工作量比比较工作量小。用增加交换的次数来减少比较次数有可能是合理的,所以冒泡排序的好处是以交换为主要手段。如果排序对象基本有序时,冒泡排序算法将具有较高的效率。这是因为冒泡排序中有个标志变量是用于提前终止排序的,也即排序可以半途终止。原创 2012-12-25 20:25:18 · 903 阅读 · 0 评论 -
linux进程创建常用函数
获取进程ID#include #include pid_t getpid(void)//获取本进程IDpid_t getppid(void)//获取父进程ID创建子进程#includepid_t fork(void)//功能:创建子进程//fork调用一次,却返回两次,有三种不同的返回值//1.父进程中,fork返回新创建的子进程的PID//2.子进程中,f原创 2012-12-12 21:53:42 · 5960 阅读 · 0 评论 -
被fread的返回值整了
刚才编一个关于用C库函数实现的文件复制操作的代码时发生错误。错误的根本是想当然的以为fread函数的用法,对其理解不深刻。后来在网友帮助下才发现错误。其实函数的用法可以通过Linux中的man来获得帮助。比如fread.在终端键入man 3 fread 这是会出现下面的东西:NAME fread, fwrite - binary stream input/ou原创 2012-12-11 23:14:58 · 27003 阅读 · 0 评论 -
数据结构学习(三)——单链表的操作之查找、删除、插入。
创建链表的方法采用尾插法,且是改进版的尾插法,即添加了一个辅助头节点。下面的代码是对插入、删除、查找的一个整体操作。其中查找分为按值和按位置查找。删除和插入都是按给定位置操作。#include #include typedef struct list{ char data; struct list *next;}linklist;linklist *CreateLinkl原创 2012-11-22 22:56:08 · 9951 阅读 · 0 评论 -
数据结构学习(二)——单链表的操作之头插法和尾插法创建链表
链表也是线性表的一种,与顺序表不同的是,它在内存中不是连续存放的。在C语言中,链表是通过指针相关实现的。而单链表是链表的其中一种,关于单链表就是其节点中有数据域和只有一个指向下个节点的指针域。创建单链表的方法有两种,分别是头插法和尾插法。所谓头插法,就是按节点的逆序方法逐渐将结点插入到链表的头部。反之尾插法就是按节点的顺序逐渐将节点插入到链表的尾部。相对来说,头插法要比尾插法算法简单,但是最后原创 2012-11-21 22:31:32 · 63057 阅读 · 3 评论 -
数据结构学习(一)——顺序表的操作
前段时间鼓捣Linux,学习了一些基础性的东西,比如常用命令。现在准备开始学习Linux环境下的编程。重视基础,先学习数据结构。参考教材是《嵌入式系统软件设计中的数据结构》,这是嵌入式系统软件设计基础丛书中的一本,个人认为不错哈。结合了ucos中用到的数据结构例子来讲。而且有C语言的实现,不是伪代码。 开始学的是线性表,其中分为顺序表和链表。而对于顺序表是用数组表示的。设计到的操作主原创 2012-11-21 17:54:26 · 2241 阅读 · 2 评论 -
linux编程中遇到的Segmentation fault错误
昨天编程的时候,遇到了Segmentation fault错误。使用GDB调试时才发现的,顺便说下。习惯了图形界面式的调试工具,用命令行确实还是不习惯。关于此错误问了下谷歌,一搜一大篇,看来是一个很常见的问题。简单来讲,这个错误就是因为非法访问了系统中的内存而导致的错误,比如一些系统中关键内存区域。那我的错误是怎么导致的呢?原来我在定义一个char类型的指针,然后就直接对这个指针进行字原创 2012-12-05 12:28:20 · 2164 阅读 · 0 评论 -
数据结构学习(十)——串的操作
几天没看数据结构了,今天重新开始了。 串是一种特殊的线性表,它的每个结点是一个字符,所以串也称作字符串。 关于串的操作主要有求串长,串复制,串连接,求子串,串插入,串删除,子串定位等。串的操作也是C语言笔试中常考的一部分。 下面的代码实现了串的主要操作。#include #include #define MAXSIZE 20char *String_C原创 2012-12-04 21:09:56 · 5601 阅读 · 1 评论 -
数据结构学习(九)——链栈的操作
堆栈也可以采用链式存储结构,称为链栈。链栈常采用单链表表示。其实现是将链表的表头作为栈顶实现,这样就不需要在单链表中增加头结点,栈顶指针就是链表的头指针。下面的代码实现了链栈的相关操作,其中有个错误关于重复申请堆空间让我郁闷了会儿,不过后来找出来了。#include #include typedef struct node{ char data; struct node *原创 2012-11-27 14:55:10 · 1649 阅读 · 0 评论 -
数据结构学习(八)——顺序栈的相关操作
堆栈是一种只允许在表的一端(称为栈顶)进行插入和删除的线性表,而在表的另一端(称为栈底)是不能进行操作的,也是线性表的一种特例。堆栈的顺序存储是用数组来是实现的。为了表示栈,我们需要一个栈顶指针top来指示栈顶位置。下面的代码实现了对顺序栈的相关操作。#include #include #define MAXSIZE 100typedef struct{ int data[M原创 2012-11-25 15:36:56 · 849 阅读 · 0 评论 -
Linux(Red Hat Linux 9)中关于程序的存放目录
看书看见下面这些内容,知道了合理安排程序内容的位置。介绍Linux的系统程序和应用程序的存放目录,以及各目录之间的区别。所有用户皆可使用的系统程序存放在/bin中超级用户才能使用的系统程序存放在/sbin中所有用户皆可使用的应用程序存放在/usr/bin中超级用户才能使用的应用程序存放在/usr/sbin中所有用户皆可使用的与本地机器有关的程序存放在/usr/local/bin中超原创 2012-11-11 14:42:41 · 1151 阅读 · 0 评论 -
修改profile文件后进入不了系统的解决办法
小白一个,又遇到问题,在profile文件中添加环境变量出错,直接导致进入不了系统。网上搜了一下遇到这种问题的还不少,呵呵。解决办法也知道了。需要先进入命令行模式,在开机画面出来时。按a进入内核模式,然后空格,数字3,回车。记住必须有空格,开始我没有空格半天进入不了还不知道什么原因。登陆进命令行界面后,然后root用户登陆。这时我由于profile出错的问题,导致vi命令也用不了。这时就要原创 2012-11-08 20:59:41 · 7888 阅读 · 1 评论 -
数据结构学习(四)——循环单链表的操作之合并
所谓循环链表就是尾结点与头结点相连的链表,整个链表形成一个环。而对于循环链表的插入与删除运算,基本上与单链表相同,只是在判断链表是否结束有所不同。下面的代码操作实现了两个循环单链表的合并。且核心代码不多,主要是分别找到循环单链表的尾结点再进行后续操作。#include #include typedef struct list{ char data; struct list *n原创 2012-11-23 13:42:57 · 6781 阅读 · 1 评论 -
数据结构学习(五)——循环双链表的操作之创建,插入、删除
双链表的含义就是链表结构体中有两个指针域,一个指向前一个结点,另一个指向后一个结点。下面的代码是对循环双链表的操作练习。#include #include typedef struct list{ char data; struct list *prior; struct list *next;}dlinklist;dlinklist *CreateLinklist_End原创 2012-11-23 23:21:23 · 9092 阅读 · 0 评论 -
数据结构学习(十四)——选择排序
前篇的插入排序算法,为了给插入元素空出位置,经常要后移腾出位置而进行大量后移操作,如果是移动数据元素规模大的话,就会耗时降低效率。插入排序操作特点:先确定排序对象,再确定插入位置。选择排序操作特点:先确定排序位置,再确定排序对象。选择排序大概流程就是从第一个元素开始,然后与后面的元素依次比较大小,比当前元素小的话就记下当前最小位置,继续比较,直到这轮比较完毕,这样就可以找出这一轮最小的原创 2012-12-25 14:59:08 · 713 阅读 · 0 评论 -
linux时间编程常用函数
首先说明时间类型分为两种:Coordinated Universal Time(UTC):世界标准时间,也就是格林威治时间(Greenwich Mean Time, GMT)Calendar Time:日历时间,从一个标准时间点(如:1970年1月1日0点)到此时经过的秒数来表示的时间。时间获取#include time_t time//功能:获取日历时间,从1970年1原创 2012-12-12 14:00:46 · 1011 阅读 · 0 评论 -
C的文件操作——常用库函数
创建和打开FILE *fopen(const char *filename, const char *mode)//filename:打开的文件名(包含路径,缺省为当前路径)//mode: 打开模式常见打开方式r,rb 只读方式打开w,wb 只写方式打开,如果文件不存在,则创建该文件a,ab 追加方式打开,如果文件不存在,则创建该文件r+, r+b, rb+ 读写方式打开原创 2012-12-11 19:58:24 · 1837 阅读 · 0 评论 -
数据结构学习(十三)——插入排序
插入排序是简单排序的一种,其主要是对少量数据进行排序处理,大量数据时没有优势。插入排序就像打扑克,摸起一张牌看到然后按照手里的牌的顺序位置将此牌再插入到适当位置。是一种先确定数据,再确定位置的排序算法。与选择排序算法不同。下面的代码实现了插入排序的简单练习。#include #define MAXSIZE 50int *Insert_sort(int *s, int n);原创 2012-12-24 18:06:02 · 666 阅读 · 0 评论 -
数据结构学习(十二)——哈夫曼树
从书上摘抄过来。哈夫曼树是二叉树的一个应用实例,它是一种变长码。它的出现是为了提高数据存储和数据通信的效率,通常对数据进行压缩编码,对降低系统成本和功耗方面有意义。对哈夫曼树的使用需要注意些地方。在变长码中,概率高的成员使用短的代码,这是提高效率的保证。为了译码不出现混乱,每个短代码都不能成为其他长代码的开头。这一点在译码树上表现为:译码结果必须为树叶,每片树叶不能成为其他树叶原创 2012-12-11 16:58:19 · 838 阅读 · 0 评论