随笔分类 -  Linux

command, programming, configuration, etc.
【整理】OS Scheduler
摘要:在操作系统理论中有一个非常重要的概念叫做P,V原语。在研究进程互斥时常引入这个概念,将P,V操作方法与加锁的方法相比较,来解决进程间的互斥问题。实际上,它的应用范围很广,不但可以解决进程管理当中的互斥问题,还可以利用此方法解决进程同步与进程通信的问题。 P,V原语理论:阐述P,V原语的理论不得不提到的一个人便是赫赫有名的荷兰科学家E.W.Dijkstra。如果你对这位科学家没有什么印象的话,提起解决图论中最短路径问题的Dijkstra算法应当是我们再熟悉不过的了。P,V原语的概念以及P,V操作当中需要使用到的信号量的概念都是由他在1965年提出的。 信号量是最早出现的用来解决进程同步与互... 阅读全文
posted @ 2011-11-01 23:55 白草黒尖 阅读(683) 评论(0) 推荐(0) 编辑
【整理】CPU使用率
摘要:在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要。在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况。运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 -- 用基于 top 的命令,可以控制显示方式等等。退出 top 的命令为 q (在 top 运行中敲 q 键一次)。 操作实例:在命令行中输入 “top”,即可启动 top top 的全屏对话模式可分为3部分:系统信息栏、命令输入栏、进程列表栏。第一部分 -- 最上部的 系统信息栏 : 第一行(top): “00:11:04”为系统当前时刻;... 阅读全文
posted @ 2011-10-15 21:56 白草黒尖 阅读(381) 评论(0) 推荐(0) 编辑
【整理】dos2unix/unix2dos
摘要:Yet another "feature" from the developers of ubuntu to simplify life, "dos2unix" and "unix2dos" are missing in version 10.04 (Lucid). First of all, install dos2unix package: #sudo aptitude install tofrodos Then if you want "dos2unix" type "fromdos" a 阅读全文
posted @ 2011-10-12 12:50 白草黒尖 阅读(305) 评论(0) 推荐(0) 编辑
【转帖】Vim编码
摘要:在Vim中,有四个与编码有关的选项:fileencodings、fileencoding、encoding和termencoding。实际使用中,任何一个选项错误,都会导致乱码。因此, 每一个 Vim 用户都应该明确这四个选项的含义。1. encoding encoding 是 Vim 内部使用的字符编码方式。 设置了 encoding 后, Vim 内所有的 buffer、 寄存器、 脚本中的字符串等, 全都使用这个编码。 Vim 在工作的时候, 如果编码方式与它的内部编码不一致, 它会先把编码转换成内部编码。 如果工作用的编码中含有无法转换为内部编码的字符, 在这些字符就会丢失。 因此,. 阅读全文
posted @ 2011-10-12 12:21 白草黒尖 阅读(396) 评论(0) 推荐(0) 编辑
【整理】文本文件 vs 二进制文件
摘要:一、文本文件与二进制文件的定义 大家都知道计算机的存储在物理上是二进制的,所以文本文件与二进制文件的区别并不是物理上的,而是逻辑上的,这两者只是在编码层次上有差异。 简单来说,文本文件是基于字符编码的文件,常见的编码有ASCII编码,UNICODE编码等等。二进制文件是基于值编码的文件,你可以根据具体应用,指定某个值是什么意思(这样一个过程,可以看作是自定义编码)。 从上面可以看出文本文件基本上是定长编码的,基于字符嘛,每个字符在具体编码中是固定的,ASCII码是8个比特的编码,UNICODE一般占16个比特;而二进制文件可看成是变长编码的,因为是值编码嘛,多少个比特代表一个值,完全由你决定。 阅读全文
posted @ 2011-10-11 09:54 白草黒尖 阅读(581) 评论(0) 推荐(0) 编辑
【整理】Linux I/O调度
摘要:一) I/O调度程序的总结 1) 当向设备写入数据块或是从设备读出数据块时,请求都被安置在一个队列中等待完成. 2) 每个块设备都有它自己的队列. 3) I/O调度程序负责维护这些队列的顺序,以更有效地利用介质.I/O调度程序将无序的I/O操作变为有序的I/O操作. 4) 内核必须首先确定队列中一共有多少个请求,然后才开始进行调度.二) I/O调度的4种算法 1) CFQ(Completely Fair Queuing, 完全公平排队) 特点: 在最新的内核版本和发行版中,都选择CFQ做为默认的I/O调度器,对于通用的服务器也是最好的选择. CFQ试图均匀地分布对I/O带宽的访问,避免进程被饿 阅读全文
posted @ 2011-10-09 23:10 白草黒尖 阅读(6382) 评论(0) 推荐(0) 编辑
【转帖】跟我一起学Makefile
摘要:概述 什么是makefile?或许很多Winodws程序员都不知道这个东西,因为那些Windows IDE都为你做了这个工作,但我觉得要做一个好的和professional的程序员,makefile还是要懂的。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。 因为,makefile关系到了整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列 阅读全文
posted @ 2011-09-29 13:16 白草黒尖 阅读(9201) 评论(2) 推荐(1) 编辑
【整理】pinlock与mutex
摘要:内核同步措施:为了避免并发防止竞争,内核提供了一组同步方法来提供对共享数据的保护。 Linux同步机制从2.0到2.6以来不断发展完善。从最初的原子操作,到后来的信号量,从大内核锁到自旋锁。这些同步机制的发展伴随 Linux从单处理器到对称多处理器的过度,伴随着从非抢占内核到抢占内核的过度。锁机制越来越有效,也越来越复杂。 目前,内核中原子操作多用来做计数使用,其它情况最常用的是两种锁及它们的变种:一个是自旋锁,另一个是信号量。 自旋锁:专为防止多处理器并发而引入的一种锁,它在内核中大量应用于中断处理等部分(对于单处理器来说,防止中断处理中的并发可简单采用关闭中断的方式,不需要自旋锁)。 自. 阅读全文
posted @ 2011-09-26 13:58 白草黒尖 阅读(358) 评论(0) 推荐(0) 编辑
【整理】Ubuntu右键菜单改造
摘要:你是否遇到Ubuntu上 gnome 右键打开方式里乱杂的程序名而烦恼?你是否遇到过卸载的后程序竟在右键打开方式里发现的问题? 方法一:直接在Ubuntu终端输入命令alacarte,可以任意增、改、隐藏、显示菜单,但无法删除菜单,即使拥有root权限。 方法二:注意几个目录和文件: /usr/share/applications/desktop文件 /usr/share/applications/mimeinfo.cache文件 ~/.local/share/applications/desktop文件 ~/.local/share/applications/default... 阅读全文
posted @ 2011-04-05 22:12 白草黒尖 阅读(3186) 评论(0) 推荐(0) 编辑
【整理】Ubuntu下安装Google拼音输入法
摘要:在Ubuntu10.04下安装Google拼音输入法,如下: A. 获取代码: (没有git的先安装git:sudo apt-get install git-core) git clone git://github.com/tchaikov/scim-googlepinyin.git cd scim-googlepinyin B. 编译前提: 编译必须组件:autotools-dev、libgtk2.0-dev、libscim-dev、libtool、automake aptitude install autotools-dev libgtk2.0-dev libscim-dev libto. 阅读全文
posted @ 2011-02-24 20:47 白草黒尖 阅读(303) 评论(0) 推荐(0) 编辑
【转贴】Ubuntu10.04 安装 Codeblocks10.05
摘要:Codeblocks经过近两年的开发,由8.02 升级到了10.5,下面是安装过程: A.安装必要组件 sudo apt-get install build-essential sudo apt-get install gdb B、更新源 sudo gedit /etc/apt/sources.list 在末尾添加: deb http://apt.tt-solutions.com/ubuntu/ feisty main deb http://apt.tt-solutions.com/ubuntu/ edgy main C、获取密钥 wget http://www.tt-solutions.c. 阅读全文
posted @ 2011-02-24 20:29 白草黒尖 阅读(1167) 评论(0) 推荐(0) 编辑
【任务】Linux2.6.18移植到MPC8309
摘要:参考:(1)Building a GCC PowerPC/Linux Cross Compiler For SPARC/Solaris http://www.cn-doc.com/_soft_ect_lang_tech_doc/2005_08_19_21/2005081921483549.htm (2)... 阅读全文
posted @ 2010-09-13 13:32 白草黒尖 阅读(402) 评论(0) 推荐(1) 编辑
【整理】Windows下登录VMware中的Ubuntu
摘要:使用SSH登录(字符界面) 1. Ubuntu中安装SSH:sudo apt-get install ssh 安装之后,可使用“ssh -v”查看SSH版本 2. 修改SSH配置:sudo vim /etc/ssh/ssh_config 去掉"# PasswordAuthenitcation Yes“前面的“#”号 3. 开启SSH服务... 阅读全文
posted @ 2010-08-26 14:43 白草黒尖 阅读(731) 评论(0) 推荐(1) 编辑
【转帖】YUM详解
摘要:1. YUM简介 YUM,Yellowdog Updater Modified,主要功能是方便的添加/删除/更新RPM包,能自动解决包的倚赖性问题,便于管理大量系统的更新问题2. YUM特点 (1) 可以同时配置多个资源库(Repository) (2) 简洁的配置文件(/etc/yum.conf) (3) 自动解决增加或删除rpm包时遇到的倚赖性问题 (4) 保持与RPM数据库的一致性3. YU... 阅读全文
posted @ 2010-06-17 17:11 白草黒尖 阅读(602) 评论(0) 推荐(1) 编辑
【整理】Apache、PHP、MySQL默认安装目录
摘要:Apache(1)如果采用RPM包安装,安装路径应在 /etc/httpd目录下 Apache配置文件: /etc/httpd/conf/httpd.conf Apache模块路径: /usr/sbin/apachectl Web目录: /var/www/html(2)如果采用源代码安装,一般默认安装在/usr/local/apache2目录下PHP(1)如果采用RPM包安装,安装路径应在 /et... 阅读全文
posted @ 2010-06-11 16:48 白草黒尖 阅读(8210) 评论(0) 推荐(1) 编辑
【整理】Ubuntu自定义分区设置
摘要:在安装Ubuntu时,如果使用的是一个新硬盘那么安装向导会建议你使用整个硬盘,如果硬盘上已经有数据了,向导会建议使用剩余的空间。不管怎样,是由向导自动划分的分区。 对于整个linux系统来说,至少要有两个分区,一个/分区,就是根分区,一个swap分区就是交换分区,安装向导就是给Ubuntu划分了这两个基本的分区。 对于一个仅仅是想尝试一下Ubuntu的用户来说,这样并没有什么问题,可是对于需要... 阅读全文
posted @ 2010-06-10 23:33 白草黒尖 阅读(9857) 评论(0) 推荐(1) 编辑
【整理】Ubuntu10.04下安装Altera9.1套件
摘要:1.安装前的必要准备 (1)到Altera官网上下载Altera9.1开发套件,包括QuartusII,NiosII EDS,ModelSim; 链接:http://www.altera.com.cn/support/software/download/altera_design/quartus_sub/dnl-quartus_sub.jsp 下载完成后,分别解压各个软件包; (2)由于下载的软件... 阅读全文
posted @ 2010-05-01 20:35 白草黒尖 阅读(2366) 评论(4) 推荐(1) 编辑
【记录】Ubuntu常见问题解决办法
摘要:1. 先装XP,再装Ubuntu,但在启动时Grub选项中没有“XP”? 方法一:在Grub界面按“c”进入命令行,然后依次输入下面命令: (1) root (hd0, 1) //这个根据具体的安装,可能不同 (2) chainloader +1 (3) boot 方法二:在启动Ubunt后,通过下面方式进行修改: (1) 在终端运行命令:sudo grub-install /dev/sda (2) 查看/boot/grub/grub.cfg文件中,是否有XP的启动信息; (3) 如果没有,则按照“Ubuntu启动格式”增加下面内容: menuentry "Windows Xp SP 阅读全文
posted @ 2010-04-30 09:45 白草黒尖 阅读(4507) 评论(0) 推荐(3) 编辑