linux
nullzxy
这个作者很懒,什么都没留下…
展开
-
vim 中的批量注释操作
vim 中批量多行添加注释:示例:给16-28行添加注释//操作: :16,28s#^#//#g说明:# 为正则表达式的分割符s 命令来替换字符串g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。vim 中批量多行取消注释:示例:原创 2012-09-12 11:14:39 · 374 阅读 · 0 评论 -
详解 ARM Linux启动过程分析
ARM Linux启动过程分析是本人要介绍的内容,嵌入式 Linux 的可移植性使得我们可以在各种电子产品上看到它的身影。对于不同体系结构的处理器来说Linux的启动过程也有所不同。本文以S3C2410 ARM处理器为例,详细分析了系统上电后 bootloader的执行流程及 ARM Linux的启动过程。1、引 言Linux 最初是由瑞典赫尔辛基大学的学生 Linus T转载 2013-03-04 09:34:59 · 593 阅读 · 0 评论 -
查看linux下文本文件的方式
查看linux下文本文件有 cat file.txt,more file.txt,less file.txt 三种方式,具体的区别如下:1. $cat file.txt将file.txt文件中的内容一次性全部显示到屏幕,最后显示到文件结尾,无论文件内容是否超过一屏。2. $more file.txt将file.txt文件中的内容逐步显示到屏幕,先显示一屏内容,敲回车原创 2013-03-07 09:32:16 · 497 阅读 · 0 评论 -
setpriority 用法
头文件:#include #include 定义函数:int setpriority(int which, int who, int prio);函数说明:setpriority()可用来设置进程、进程组和用户的进程执行优先权。参数which 有三种数值, 参数who 则依which 值有不同定义。which who 代表的意义:1、PRIO_PROCESS转载 2013-07-09 09:52:10 · 12499 阅读 · 0 评论 -
sigprocmask 用法
sigset_t mask; int cc; sigemptyset(&mask); sigaddset(&mask, SIGQUIT); sigaddset(&mask, SIGUSR1); cc = sigprocmask(SIG_BLOCK, &mask, NULL); assert(cc == 0);作用:在进程中屏蔽退出信号和转载 2013-07-09 10:10:28 · 1333 阅读 · 0 评论 -
linux 内核中的 _IOC_TYPE 宏
static longspidev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg){ int err = 0; int retval = 0; struct spidev_data *spidev; struct spi_device *spi; u32 tmp; unsigned n_ioc原创 2013-08-01 09:25:01 · 2468 阅读 · 0 评论 -
access_ok函数
access_ok | 检查用户空间内存块是否可用access_ok() 函数是用来代替老版本的 verify_area() 函数的。它的作用也是检查用户空间指针是否可用。函数原型:access_ok (type, addr, size);变量说明:type : 访问类型,其值可为 VERIFY_READ 或者 VERIFY_WRITE 。注意,V转载 2013-08-01 09:35:06 · 4533 阅读 · 0 评论 -
内核空间和用户空间
Linux的内部结构,初略可以将这个内部体系划分为三层:Hardware => Kernel Space => User Space 1. 为什么要划分为内核空间和用户空间?Linux Kernel是操作系统的核心,独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权限。 对于Kernel这么一个高安全级别的东西,显然是不容许其它的应转载 2013-08-01 10:03:31 · 712 阅读 · 0 评论 -
wget 命令下载远程ftp服务器上的文件
通过wget 命令下载远程ftp服务器上的文件, 格式如下:$wget --ftp-user=xxx --ftp-password=xxx -r ftp://10.10.10.10/xxx/xxx.zip原创 2013-08-28 11:48:46 · 1241 阅读 · 0 评论 -
vim 中的批量查找替换
:%s/from/to/表示在全文查找from并替换为to。:1,50s/from/to/表示在第1行和第50行之间(包括1和50行)进行搜索和替换。:45s/from/to/表示仅仅在第45行进行搜索和替换。原创 2014-01-14 09:24:28 · 527 阅读 · 0 评论 -
container_of
揭开linux内核中container_of的神秘面纱在linux 内核中有一个大名鼎鼎的宏container_of(),这个宏是用来干嘛的呢?我们先来看看它在内核中是怎样定义的。呵呵,乍一看不知道是什么东东。我们先来分析一下container_of(ptr,type,member),这里面有ptr,type,member分别代表指针、类型、成员。看一个例子:Struc转载 2013-02-19 08:38:11 · 252 阅读 · 0 评论 -
分析/proc/bus/usb/device
在 /proc/bus/usb/devices中, 每个device具有多行ASCII 输出.每行由一个字符的ID来标识:T = Topology (etc.)B = Bandwidth (只用于USB host控制器 它被虚拟为root hubs)D = Device 描述信息.P = Product ID 信息. S = String 描述.C = Configurat原创 2013-01-30 08:15:52 · 766 阅读 · 0 评论 -
ubuntu 配置 taglist
1. 安装 ctags方法一:#sudo apt-get install exuberant-ctags方法二: download ctags-5.7.tag.gz #tar xzvf ctags-5.7.tag.gz #cd ctags-5.7 #./configure #make #sudo make instal2. 安装taglist1) download原创 2012-10-16 09:41:31 · 371 阅读 · 0 评论 -
vim 配置文件.vimrc 中的常用设置
1. cp /etc/vim/vimrc /home/yourname/.vimrc2. 在.vimrc末尾增加以下几项:set nuset aiset ts=4map! xiyuan=strftime('%4Y%2m%2d')"设置显示行号set nu“设置自动缩进set ai”设置tab宽度为4字节set ts=4"vi原创 2012-08-31 14:06:49 · 610 阅读 · 0 评论 -
Linux Error Number Instructions
errnostrerror(errno)0 Success 1 Operation not permitted原创 2012-12-04 11:54:10 · 633 阅读 · 0 评论 -
Kernel log level
The kernel log levels are: 0 (KERN_EMERG) The system is unusable. 1 (KERN_ALERT) Actions that must be taken care of immediately. 2 (KERN_CRIT) Critical conditions. 3 (KERN_ERR) Noncrit转载 2012-12-24 08:23:10 · 346 阅读 · 0 评论 -
samba 服务共享的访问和配置
0. linux 访问window共享的方法:sudo mount -t cifs -o username=yourwindowname,password=yournwindowpassword //10.0.6.92/window-shared-dir /linux-mount-dir 1. ubuntu 下访问ubuntu的samba共享服务,通过命令,可以将samba服务上原创 2012-11-26 13:47:50 · 763 阅读 · 0 评论 -
uid 和 euid 的区别
UID (shown by /usr/ucb/whoami) and EUID -- effective UID (shown by who am i or id ) are initially the same whenyou login to the system. When you su or run a setuid program, your EUID is changed.F转载 2013-01-28 14:57:09 · 1240 阅读 · 0 评论 -
proc文件系统usb部分信息输出
/proc/bus/usb 文件系统输出===============================(version 2000.08.15)/proc 文件系统中USB devices 部分产生/proc/bus/usb/drivers 和 /proc/bus/usb/devices./proc/bus/usb/drivers 列出已经注册的drivers,每行一个d转载 2013-01-29 15:54:45 · 361 阅读 · 0 评论 -
linux 加载usb文件系统
在Linux内核中确定已经选择以下项:Device Drivers ---> [*] USB Support ---> [*] USB device filesystem (DEPRECATED) 系统启动后,查看/proc/bus/usb/devices文件,对文件内容进行分析$cat /proc/bus/usb/devices 如果没有该文件原创 2013-01-28 08:07:59 · 1984 阅读 · 0 评论 -
查看 arm 编译器的指令集
1. 找一个编译好的app.2. 执行 $readelf -a arm_app,在打印信息的最后,显示Attribute Section: aeabiFile Attributes Tag_CPU_name: "ARM v7" Tag_CPU_arch: v7 Tag_CPU_arch_profile: Application Tag_ARM_ISA_use:原创 2015-06-26 09:53:59 · 2390 阅读 · 0 评论