linux system
文章平均质量分 64
alex_xhl
专注软件架构设计,性能分析和优化。
展开
-
mdev原理
mdev原理mdev 是busybox 自带的一个简化版的udev,适合于嵌入式的应用埸合。其具有使用简单的特点。它的作用,就是在系统启动和热插拔或动态加载驱动程序时,自动产生驱动程序所需的节点文件。在以busybox 为基础构建嵌入式linux 的根文件系统时,使用它是最优的选择。使用过程:(1)在编译时加上对mdev 的支持(我是使用的是busybox1.10.1)转载 2012-01-30 09:09:31 · 697 阅读 · 0 评论 -
Linux下任务调度的crond常驻命令
crond 是linux用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。crond命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。而linux任务调度的工作主要分为以下两类:1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新转载 2012-01-29 13:00:32 · 635 阅读 · 0 评论 -
Linux下signal通信研究(操作系统期中论文之自选题目研究)
本学期操作系统课期中考核需要写两篇小论文,前篇已经贴过了。今晚无聊,贴出此文,聊以慰籍空虚的心。要下载的朋友,请点击这里。要求如下:下面是我的论文,由于格式原因,叙述部分直接上图了:三、初遇signal在实验三《Linux进程间通信》---“消息机制的示例程序”中有如下源码:[cpp] view p转载 2012-01-29 09:21:04 · 2216 阅读 · 0 评论 -
解决EXT2-fs warning: mounting unchecked fs, running e2fsck is recommended
rootfs从sd卡启动,但报EXT2-fs warning: mounting unchecked fs, running e2fsck is recommended,原因是在给sd卡分完区后没有检查和清理。解决办法:在fdisk 后,会给rootfs (我的是/dev/sdb1)分区格式化成ext2,方法是mke2fs /dev/sdb1,然后e2fsck -a /dev/sdb1,进行自转载 2010-12-28 22:16:00 · 13097 阅读 · 1 评论 -
vim 替换^M
原因:回车表示:dos中CRLF 回车(CR, ASCII 13, r) 换行(LF, ASCII 10, n),两个符号。linux中只有一个。在Linux下使用vi来查看一些在Windows下创建的文本文件,有时会发现在行尾有一些“^M”。有几种方法可以处理。1.使用dos2unix命令。一般的分发版本中都带有这个小工具(如果没有可以根据下面的连接去下载),使用起来很方便:$ do转载 2010-12-24 22:45:00 · 4269 阅读 · 0 评论 -
linux 模块层叠技术和多个ko的编译
驱动程序中lsmod命令实际读取的是/proc/modules文件即与lsmod命令对应的结果是cat /proc/modules内核中已经加载的模块的信息存在于/sys/module目录下modprobe命令比insmod命令要强大,它在加载某模块时会同时加载该模块所依赖的其他模块使用modprobe -r filename的方式卸载将同时其依赖的模块modinfo转载 2010-12-13 22:01:00 · 2400 阅读 · 0 评论 -
linux经常要用到的几个命令
1. man 对你熟悉或不熟悉的命令提供帮助解释 eg:man ls 就可以查看ls相关的用法 注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。 2. ls 查看目录或者文件的属*,列举出任一目录下面的文件 eg: ls /usr/man ls -l a.d表示目录(directory),如果是一个"-"表示是文件,如果是l则表示是一个连转载 2010-12-13 21:52:00 · 1295 阅读 · 0 评论 -
linux 设备驱动开发详解 code (4)
1.c code: #include #include #include #include #include #include #include #include #include #include #include #define GLOBALMEM_SIZE 0x1000#define MEM_CLEAR 0x01#原创 2010-12-09 22:43:00 · 845 阅读 · 0 评论 -
linux 设备驱动开发详解 code (1)
1. c code: #include #include #include #include #include #include #include #include #include #include #include #define GLOBALMEM_SIZE 0x1000#define MEM_CLEAR 0x01原创 2010-12-09 22:34:00 · 988 阅读 · 0 评论 -
ubuntu 安装和卸载软件
可以用终端安装或卸载软件。安装软件 sudo apt-get install softname1 softname2 softname3……卸载软件 sudo apt-get remove softname1 softname2 softname3……卸载并清除配置 sudo apt-get remove --purge softname1更新软件信息数据库 sudo apt-转载 2010-11-20 11:34:00 · 799 阅读 · 0 评论 -
ubuntu 看 .chm 电子书
ubuntu 默认不支持 .chm 电子书,需要安装 chmsee 软件。在 terminal 中 输入 sudo apt-get install chmsee 。原创 2010-11-20 11:29:00 · 534 阅读 · 0 评论 -
linux install fcitx
1.ubuntu安装中文语言环境的同时,会自动安装上scim输入法,但是这个scim不但大,而且跟很多程序(firefox,eva等等)都有兼容问题。 相比之下还是觉得fcitx这只小小的企鹅比较好用。下面的方法可以让scim和fcitx共存。 sudo apt-get install im-switch libapt-pkg-perl fcitx2.安装好之后执行下面的命令原创 2010-10-30 22:03:00 · 583 阅读 · 0 评论 -
ubuntu 安装 sourceinsight
1. 安装 flex sudo apt-get install flex bison 2. 安装 wine sudo apt-get install wine 3. 安装 sourceinsight 3.1先把windows xp的 D 盘挂载到 /mnt/下: cd /mnt/ mkdir win_d cd .原创 2010-10-26 21:56:00 · 1563 阅读 · 0 评论 -
Linux使用Wine 安装source insight
Windows 的Souce Insight 是非常经典的C编译器,无论是应用程序开发和编译都是相当不错,Linux 有Kcodes,但功能不如Source Insight.有一种解决方案的是在LINUX安装Wine, 然后安装Source Insight.Wine编译安装Wine 下载路径:http://ibiblio.org/pub/linux/system/emulato转载 2010-10-25 09:21:00 · 1275 阅读 · 0 评论 -
查找当前目录下包含特定字符串的特殊后缀名的文件
如:在当前目录下查找包含 hello 字符串的 后缀名为 .c 的文件:find . -name "*.c" | xargs grep -H "hello"附:(转)1. Grep简介Grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜原创 2010-10-09 18:19:00 · 19280 阅读 · 0 评论 -
如何在Linux下创建与解压zip, tar, tar.gz和tar.bz2文件
这么多年来,数据压缩对我们来说是非常有用的。无论是在邮件中发送的图片用的zip文件还是在服务器压缩数据文件,我们都可以让下载更容易或者有效的节约磁盘空间。某些压缩格式有时允许我们以60%的比率(甚至更高)压缩文件。下面我将会给大家演示如何用这些命令在Linux下面去压缩文件或者目录。我们将学习zip, tar, tar.gz和tar.bz2等压缩格式的基本用法。这几个是在Linux里面常用的压缩格转载 2010-09-08 14:48:00 · 556 阅读 · 0 评论 -
Linux查看环境变量当前信息和查看命令
系统的环境变量在配置web server以及编写程序都常常被用到, 因此了解必要的关于系统变量的知识是非常有必要的,下面关于linux系统变量的查看以及方法。在Windows下,查看环境变量的命令是:set,这个命令会输出系统当前的环境变量。Linux下Linux查看环境变量准确的说是REDHAT下应该如何查看呢,命令是:export如果你想查看某一个名称的环境变量,命令是:ech转载 2010-09-08 10:28:00 · 2646 阅读 · 1 评论 -
内核中的Makefile和Kconfig
一、概述 在内核编译中如何将各个目录树中的文件组织起来编译是一个很重要的问题,并且要根据用户配置来编译特有的内核。为了解决这个问题,内核使用两种文件,Makefie和Kconfig。分布到各目录的Kconfig构成了一个分布式的内核配置数据库,每个Kconfig分别描述了所属目录源文档相关的内核配置菜单,就是我们使用命令 make menuconfig(或者xconfig)后产生的配置转载 2010-07-07 16:15:00 · 726 阅读 · 0 评论 -
helloworld模块
hello.c #include #include MODULE_LICENSE("Dual BSD/GPL");static int hello_init(void){ printk(KERN_ALERT "hello world/n"); return 0;}static void hello_exit(void){ printk(KERN_ALERT "go原创 2010-07-07 11:44:00 · 680 阅读 · 0 评论 -
Linux目录结构及解释
___/bin (binary二进制) 常用Linux命令___/boot 存放着启动Linux时使用的一些核心文件,包括一些链接文件以及镜像文件___/cdrom 这个目录在你刚刚安装系统的时候是空的。你可以将光驱文件系统挂在这个目录下。 例如:mount /dev/cdrom /cdrom ___/sbin 存放管理员使用的系统管理程序___/ho转载 2010-06-12 09:24:00 · 505 阅读 · 0 评论 -
linux内核编译之旅
内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。 Linux的一个重要的特点就是其源代码的公开性,所有的内核源程序都可以在/usr/src/linux下找内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。 Linux的一个重要的特点就是其源代码的转载 2010-06-11 19:34:00 · 633 阅读 · 0 评论 -
关于man命令的转帖2篇
在Linux下自我学习获得各类需要的知识(http://www.linuxdiyf.com/viewarticle.php?id=4056) 作者: 恒善喜 发布日期: 2005-12-04 查看数: 324 出自: http://www.linuxdiyf.com 转贴: 安装好了Unix/Linux类操作系统,却不知道拿它做点什么、也不知道它能做些什么…转载 2010-06-10 19:07:00 · 842 阅读 · 0 评论 -
linux source命令
source命令用法: source FileName 作用:在当前bash环境下读取并执行FileName中的命令。注:该命令通常用命令“.”来替代。如:source .bash_rc 与 . .bash_rc 是等效的。 source命令(从 C Shell 而来)是bash shell的内置命令。点命令,就是个点符号,(从Bourne Shell而来)是source的另一名称。同样的,当转载 2010-06-10 16:48:00 · 619 阅读 · 0 评论 -
linux中的热插拔和mdev机制(深入理解嵌入式linux文件系统的制作)
mdev是busybox自带的一个简化版的udev。 作用是在系统启动和热插拔 或动态加载驱动程序时,自动产生驱动程序所需的节点文件,在文件系统中的/dev目录下的设备节点都是由mdev创建的 mdev扫描/sys/class和/sys/block中所有的类设备目录,如果在目录中含有名为"dev"的文件,且文件中包含的是设备号,则mdev就利用这些信息为这个设备在/dev下创建转载 2012-01-30 09:08:55 · 871 阅读 · 0 评论 -
进程的用户栈和内核栈
进程是程序的一次执行过程。用剧本和演出来类比,程序相当于剧本,而进程则相当于剧本的一次演出,舞台、灯光则相当于进程的运行环境。进程的堆栈每个进程都有自己的堆栈,内核在创建一个新的进程时,在创建进程控制块task_struct的同时,也为进程创建自己堆栈。一个进程 有2个堆栈,用户堆栈和系统堆栈;用户堆栈的空间指向用户地址空间,内核堆栈的空间指向内核地址空间。当进程在用户态运行时,C转载 2012-01-30 09:04:51 · 920 阅读 · 0 评论 -
进程通信方式介绍
Linux下进程通信的八种方法:管道(pipe),命名管道(FIFO),内存映射(mapped memeory),消息队列(message queue),共享内存(shared memory),信号量(semaphore),信号(signal),套接字(Socket).(1) 管道(pipe):管道允许一个进程和另一个与它有共同祖先的进程之间进行通信;(2) 命名管道(FIFO):类似于管转载 2012-01-30 09:02:28 · 435 阅读 · 0 评论 -
Linux Socket编程 线程
本章主要列举服务器程序的各种网络模型,示例程序以及性能对比后面再写。一、分类依据。服务器的网络模型分类主要依据以下几点(1)是否阻塞方式处理请求,是否多路复用,使用哪种多路复用函数(2)是否多线程,多线程间如何组织(3)是否多进程,多进程的切入点一般都是accept函数前二、分类。首先根据是否多路复用分为三大类:(1)阻塞式模型(2)多路复用模型(3)实时信号模型转载 2012-01-30 09:01:31 · 554 阅读 · 0 评论 -
Linux Socket编程 实例
TCP协议: 服务器端:tcp_server.c[cpp] view plaincopyprint?#include #include #include #include #include int main(int argc, char *argv[]) { int转载 2012-01-30 08:58:56 · 588 阅读 · 0 评论 -
Linux Socket编程 C
最近看了一些网络编程的书籍,一直以来总感觉网络编程神秘莫测,其实网络编程入门还是很容易学的,下面这些代码是我在linux下编写的,已经运行过了,编译之后就可以运行了。有不足之处希望大家多多指出,共同 学习交流。 套接字是一种进程间的通信的方法,不同于以往介绍的进程间通信方法的是,它并不局限于同一台计算机的资源,例如文件系统空间,共享内存或者消息队列。套接字可以认为是对管道概念的扩展转载 2012-01-30 08:55:21 · 955 阅读 · 0 评论 -
Linux 如何用vim命令把编辑文件的几行内容拷贝到一个新文件
在用vim编辑文件时,常常会用到一个功能:把编辑文件的几行内容拷贝到一个新文件中。怎么实现该功能?假设编辑文件nginx.conf ,把该文件的51至91行拷贝到新文件./vhost/res.help.com.conf中,详细实现,请参阅下面示例:[plain] view plaincopy:51,91w!./vhost/res.he转载 2012-01-29 11:08:00 · 2908 阅读 · 0 评论 -
菜鸟学习linux笔记与练习-----第二天。一些基本命令以及初级网络配置
基本命令 uname -a -s hostname显示主机名若是要永久生效,则编辑以下文件 #vim /etc/sysconfig/network ssh远程登录#ssh 10.1.1.54 (是以root用户登录的) #ssh tom@10.1.1.54(是以tom身份登录) #ssh -Y 10.1.1.54(可以启动图形界面的远程登转载 2011-02-22 23:16:00 · 684 阅读 · 0 评论 -
菜鸟学习linux笔记与练习-----第一天。一些初级命令以及基本用户管理
cd 切换目录 ~用户家目录 -回到刚才的目录 ..上一级目录 .当前目录 空 直接回到用户家目录pwd 当前目录mkdir 创建文件夹 -p 如果所要创建的目录文件的父目录没有被创建,则一并创建ls 查看文件-h 带度量单位显示-t 按照最新修改时间排列-d 查看目录本身的属性c转载 2011-02-22 23:09:00 · 681 阅读 · 0 评论 -
linux下u盘使用
linux下u盘使用2007年01月10日 11:12本文为转载文章方案一: Linux不像Windows一样,接上新硬件后可以自动识别,在Linux下无法自动识别新硬件的,需要手动去识别。USB移动存储设备通常被识别为sda1,具体可以通过fdisk -l命令查询。在使用U盘前,我们先要为外挂点新建一个子目录,一般外挂点的子目录都是建立在/mnt里面的,我们也建在那里,当转载 2011-02-22 22:49:00 · 882 阅读 · 0 评论 -
linux makefile 全攻略
一、Makefile介绍 Makefile是用于自动编译和链接的,一个工程有很多文件组成,每一个文件的改变都会导致工程的重新链接,但是不是所有的文件都需要重新编译,Makefile中纪录有文件的信息,在make时会决定在链接的时候需要重新编译哪些文件。 Makefile的宗旨就是:让编译器知道要编译一个文件需要依赖其他的哪些文件。当那些依赖文件有了改变,编译器会自动的发现最终的生成文转载 2010-12-28 22:14:00 · 1267 阅读 · 0 评论 -
linux内核学习
常常有人问:我想学习内核,需要什么基础吗?Linus Torvalds本人是这样回答的:你必须使用过Linux。 这个……还是有点太泛了吧,我想下面几个基础可能还是需要的,尽管不一定必需: 1, 关于操作系统理论的最初级的知识。不需要通读并理解《操作系统概念》《现代操作系统》等巨著,但总要知道分时(time-shared)和实时(real-time)的区别是什么,进程是个什么东西,CPU和系统总转载 2010-12-13 22:17:00 · 879 阅读 · 0 评论 -
如何在Linux下创建与解压zip, tar, tar.gz和tar.bz2文件
这么多年来,数据压缩对我们来说是非常有用的。无论是在邮件中发送的图片用的zip文件还是在服务器压缩数据文件,我们都可以让下载更容易或者有效的节约磁盘空间。某些压缩格式有时允许我们以60%的比率(甚至更高)压缩文件。下面我将会给大家演示如何用这些命令在Linux下面去压缩文件或者目录。我们将学习zip, tar, tar.gz和tar.bz2等压缩格式的基本用法。这几个是在Linux里面常用的压缩格转载 2010-12-13 22:09:00 · 627 阅读 · 0 评论 -
简单的Makefile
例1:CC = gccCFLAGS = -Wall -o -gOBJFLAGS = -Wall -c -gall: seqlisttest1 seqlisttest2.PHONY: allseqlisttest1: seqlisttest1.o seqlist.o compare.o common.o $(CC) $(CFLAGS) seqli转载 2010-12-13 22:06:00 · 662 阅读 · 0 评论 -
从零开始 linux 模块开发总结
1.准备编译 ko 的 linux 环境: 本人使用 ubuntu 9.10.2.查看系统的版本: 使用 uname -r 命令, 本人系统是 2.6.31-22-generic.3.安装内核头文件: sudo apt-get install linux-headers-`uname -r` 本人使用: sudo apt-get install linux-原创 2010-12-09 23:16:00 · 708 阅读 · 0 评论 -
linux 设备驱动开发详解 code (2)
1.c code: #include #include #include #include #include #include #include #include #include #include #include #define GLOBALMEM_SIZE 0x1000#define MEM_CLEAR 0x01#原创 2010-12-09 22:38:00 · 712 阅读 · 0 评论 -
linux下格式化U盘
最近把系统全装成Ubuntu9.04了,但是得考虑到别人都用Windows,不能把U盘格式化成Linux系统下的文件系统,比如ext2、ext3、ext4。还是格式化成vfat格式比较妥当,下面是我的步骤: 1、首先要查看U盘的设备名,此时必须保证U盘已经跟电脑连接,可以用下面两个命令: (1)sudofdisk -l 下面是我的截图,可以看出我的U盘对应的设备名是/d转载 2010-12-09 22:25:00 · 36073 阅读 · 1 评论