将驱动程序添加到Linux内核

一,概述
在linux内核中增加程序需要完成以下三项工作:
1.将编写的源代码复制到Linux内核源代码的相应目录
2.在目录的Kconfig文件中增加新源代码对应项目的编译配置选项
3.在目录的Makefile文件中增加对新源代码的编译条目

二,实例
1,把驱动代码usbtmc(文件夹)复制到/usr/src/linux-headers-2.6.32-31-generic/drivers/char下。
注意:
(1),设备驱动程序存放在内核源码树根目录drivers/的子目录下,在其内部,设备驱动文件进一步按照类别,类型等有序地组织起来。
a,字符设备存在于drivers/char/目录下
b,块设备存放在drivers/block/目录下
c,USB设备则存放在drivers/usb/目录下。
(2),此处的文件组织规则并非绝对不变,例如:USB设备也属于字符设备,也可以存放在drivers/usb/目录下。
(3),例如我们把驱动程序usbtmc(文件夹)存放在drivers/char/目录下,那么你要注意,在该目录下同时会存在大量的C源代码文件和许多其他目录。所有对于仅仅只有一两个源文件的设备驱动程序,可以直接存放在该目录下,但如果驱动程序包含许多源文件和其他辅助文件,那么可以创建一个新子目录。 继续阅读

Fedora 21安装以后的优化

最近安装了Fedora 21 64bit,以下是一些优化配置,使之更适合国人使用。

1,安装gnome-tweak-tool设置工具
Fedora 19自带的系统设置工具十分简单,一些重要的地方都不能设置。比如窗口默认没有最大化和最化小的按钮。

sudo yum install gnome-tweak-tool

然后在左上角的“活动”里找到并打开“优化工具”,在左侧选择“窗口”,在右侧找到“Titlebar Buttons”,把下面的“Maximize”和“Minimize”打开,这样,窗口的右上角就有最大化和最小化按钮了。

此外,还可以在左侧的“Shell”中,把“在日历中显示星期”打开。

对于国内用户,肯定不习惯多个桌面的形式,打开“优化工具”,在左侧选择“Workspaces”,把右侧的“Workspaces Creation”设置为“Static”,下面的“Number of Workspaces”设置为1,这样就只有1个桌面了。

2,设置网易软件源设置最快软件源
把yum-plugin-fastestmirror插件装上就行了,没有必要安装网易的源。

sudo yum install yum-plugin-fastestmirror

继续阅读

Linux性能测试工具:UnixBench

Unixbench是一个类unix系(Unix,BSD,Linux)统下的性能测试工具,一个开源工具,被广泛用与测试linux系统主机的性能,简称UB。Unixbench的主要测试项目有:系统调用、读写、进程、图形化测试、2D、3D、管道、运算、C库等系统基准性能提供测试数据。

测试方法:

wget http://www.CTOHome.com/linux-vps-pack/unixbench.sh;sh ./unixbench.sh;

测试项目:
Dhrystone 2 using register variables
此项产生于 1984,测试 string handling,因为没有浮点操作,所以深受软件和硬件设计(hardware and software design)、编译和链接(compiler and linker options)、代码优化(code optimazaton)、对内存的cache(cache memory)、等待状态(?wait states)、整数数据类型(integer data types)的影响。 继续阅读

解决OSError: [Errno 2] No such file or directory: ‘/dev/urandom’

最近自己的CentOS6在yum update以后,所有的yum命令都会遭遇如下错误

Traceback (most recent call last):
  File "/usr/bin/yum", line 4, in <module>
    import yum
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 46, in <module>
    import tempfile
  File "/usr/lib/python2.6/tempfile.py", line 34, in <module>
    from random import Random as _Random
  File "/usr/lib/python2.6/random.py", line 873, in <module>
    _inst = Random()
  File "/usr/lib/python2.6/random.py", line 96, in __init__
    self.seed(x)
  File "/usr/lib/python2.6/random.py", line 110, in seed
    a = long(_hexlify(_urandom(16)), 16)
OSError: [Errno 2] No such file or directory: '/dev/urandom'

解决方法:

mknod -m 644 /dev/urandom c 1 9

公布一个奇葩VPS:dream.jp/smartvps.cn

dream.jp/smartvps.cn好不好?dream.jp/smartvps.cn垃圾,dream.jp/smartvps.cn骗子。好了,开头先做一段SEO。现在开始讲述正题。

一提到日本,可能心里都会冒出几个感觉:友善,亲和,文明,礼貌。不知道从什么时候起,开始关注日本的VPS了,心里总有个感觉,再不济也是亚洲线路,速度也比美国的快吧

那天不知道怎么就逛到http://smartvps.cn这家了,查了一下,居然还是家大公司DTI旗下的产品,看来不用担心跑路了。又看了下价格,512M内存的日本VPS只要490日元(折合人民币40元不到),于是立即下手。开通还挺快。不到5分钟就开通了。

开通以后当然是万分欣喜的各种测试了,首先是看了看CPU,不看不要紧,一看顿时就闪瞎了我的眼!
垃圾的smartvps.cn 继续阅读

Linux挂载ftp服务器

Linux挂载ftp服务器,需要用到一个名为fuse-curlftpfs的包。正常情况下无法通过yum的方式获取此包,因此需要先安装DAG repository

Centos5 64位  wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm
Centos5 32位  wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.i386.rpm
Centos6 64位  wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
Centos6 32位  wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm

然后是安装下载的rpm包

rpm -ivh rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm

然后就可以通过yum的方式安装fuse-curlftpfs了

yum install fuse-curlftpfs -y

在Centos6上执行此命令,可能会遇到 Requires: libcurl.so.3 的错误,解决方法:编辑 /etc/yum.repos.d/rpmforge.repo 文件,把 [rpmforge-extras] 项打开,再执行 yum clean all 即可。 继续阅读

第 20 页,共 30 页« 最新...10...181920212223...30...最旧 »