- 博客(29)
- 资源 (6)
- 收藏
- 关注
原创 apt-get常用命令
apt-cache search packagename 搜索包apt-cache show packagename 获取包的相关信息,如说明、大小、版本等apt-get install packagename 安装包apt-get install packagename --reinstall 重新安装包apt-get -f install 修复安装”-f = –fix-mi
2016-11-11 08:49:36
641
转载 tar.xz文件如何解压
XZ压缩最新压缩率之王xz这个压缩可能很多都很陌生,不过您可知道xz是绝大数linux默认就带的一个压缩工具。之前xz使用一直很少,所以几乎没有什么提起。我是在下载phpmyadmin的时候看到这种压缩格式的,phpmyadmin压缩包xz格式的居然比7z还要小,这引起我的兴趣。最新一段时间会经常听到xz被采用的声音,像是最新的archlinux某些东西就使用xz压缩。不过xz也有
2015-03-15 22:52:46
803
原创 module_param和module_param_array的使用
1.定义模块参数的方法:module_param(name, type, perm);其中,name:表示参数的名字; type:表示参数的类型; perm:表示参数的访问权限;2. 数组类型模块参数的定义:用逗号间隔的列表提供的值;声明一个数组参数:module_param_array(name, type, num, perm);其中,name:表示数组的名字; type:表示参数的类型; num :表示数组中元素数量; perm
2015-03-03 13:22:12
3477
转载 struct miscdevice,misc_register(),misc_deregister()
在Linux系统中,存在一类字符设备,他们共享一个主设备号(10),但此设备号不同,我们称这类设备为混杂设备(miscdeivce),查看/proc/device中可以看到一个名为misc的主设备号为10.所有的混杂设备形成一个链表,对设备访问时内核根据次设备号找到对应的miscdevice设备。相对于普通字符设备驱动,它不需要自己去生成设备文件。Linux内核使用struct mis
2015-03-03 09:41:12
985
转载 copy_to_user和copy_from_user
在内核的学习中会遇到很多挺有意思的函数,而且能沿着一个函数扯出来很多个相关的函数。copy_to_user和copy_from_user就是在进行驱动相关程序设计的时候,要经常遇到的两个函数。由于内核空间与用户空间的内存不能直接互访,因此借助函数copy_to_user()完成用户空间到内核空间的复制,函数copy_from_user()完成内核空间到用户空间的复制。下面我们来仔细的理一下这两个函
2015-03-03 08:41:05
689
转载 readb(), readw(), readl(),writeb(), writew(), writel() 宏函数
readb(), readw(), readl()函数功能:从内存映射的 I/O 空间读取数据。readb 从 I/O 读取 8 位数据 ( 1 字节 );readw 从 I/O 读取 16 位数据 ( 2 字节 );readl 从 I/O 读取 32 位数据 ( 4 字节 )。原型:#include unsigned char readb (un
2015-03-02 10:37:43
743
转载 linux中readl()和writel()函数
readX/writeX() are used to access memory mapped devices. On some * architectures the memory mapped IO stuff needs to be accessed * differently. On the simple architectures, we just read/write the
2015-03-02 10:36:14
11942
1
转载 linux vim配置
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 显示相关 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""set s
2015-01-07 15:14:44
521
原创 ((x & (1<<n)) >> n) 求某个整数中二进制位的某位的值
((x & (1<<n)) >> n) 求某个整数中二进制位的某位的值LIN specifications 标识符奇偶校验函数
2014-12-17 16:14:34
819
原创 软件开发V模型
RAD(rap application development),就是软件开发过程中的一个重要模型,称为快速应用开发模型。其模型构图形似字母V,所以又称V模型。 他通过开发和测试同时进行的方式来缩短开发周期,提高开发效率。可以说,V模型是软件开发测试中最重要的一种模型。 V模型大体可以划分为下面几个不同的阶段步骤,既需求分析、概要设计、祥细设计、编码、单元测试、集成测试、系统测试、验收测试。 需求分析:既你首先要明确客户需要的是什么,需要软件作成什么样子,需要有那几项功能,这一点上
2014-11-02 21:47:12
10636
原创 Free Running Timer ?
A free running timer keeps repeatedly running from end to end without being reloaded or stopped at intermediate states. It counts the input pulses from zero to the maximum count and on reaching the
2014-10-29 16:30:52
1836
原创 宏定义、const变量、枚举的区别
1.宏定义是在预处理阶段进行展开;cnost变量是在编译运行阶段使用2.宏定义没有类型,不做任何类型检查,仅仅是进行展开;const修饰的变量具有具体的类型,编译阶段执行检查3.宏定义在文件中有多少次就展开多少次,不会分配内存空间;const修饰的变量会在内存中分配空间1.枚举属于常量;但宏定义不是常量2.枚举常量是实体的一种;但宏定义不是实体3.枚举具有类型,但宏定义没有类型,枚举与普通变量有作用域和值,但宏定义没有,它是一种预处理替换
2014-09-20 10:45:42
2716
原创 计算机中负数表示法
问一个基本的问题。负数在计算机中如何表示?举例来说,+8在计算机中表示为二进制的1000,那么-8怎么表示呢?很容易想到,可以将一个二进制位(bit)专门规定为符号位,它等于0时就表示正数,等于1时就表示负数。比如,在8位机中,规定每个字节的最高位为符号位。那么,+8就是00001000,而-8则是10001000。但是,随便找一本《计算机原理》,都会告诉你,实际上,计算机内部采用2的补码(Two'sComplement)表示负数。什么是2的补码?它是一种数值的转换方法,要分二步完成:第一步
2014-09-19 17:52:44
1369
原创 数组和链表的区别?
1.数组必须事先定义好固定的长度,不适合数据动态的增长; 当要增加数据时,可能会超出原先定义的长度的个数,当要减少数据时,会造成内存的浪费2.链表是动态进行内存分配,可以适应动态数据的增减,方便数据的插入、删除, 链表必须根据next指针找到下一个元素 数组要插入、删除数据时,需要移动大量的数据,非常的繁琐
2014-09-19 17:46:14
852
原创 C语言文件读写操作,写入数据到文件
很早写的在linux系统下的文件读写操作,写入数据到文件,很时候初学者学习#include int writeInfoToFile(const char *strFile){ int age, i; char name[10]; FILE *fp; fp = fopen(strFile, "w"); // 只读的方式打开文件 if(fp == NULL) {
2014-09-04 13:51:23
17356
原创 C语言 冒泡排序 快速排序 直接插入排序 选择排序
#include /* 简单选择排序 */void select_sort(int *p, int len){ int i, j; int min, tmp; for(i=0; i<len; i++) { min = i; for(j=i+1; j<len; j++) { if(p[min]>p[j]) { min = j; } } i
2014-09-01 22:33:31
1469
原创 链表的逆序
创建一个带头节点的链表并把链表的逆序(递归法),链表遍历#include <stdio.h>#include <stdlib.h>/* define structure of linklist */typedef struct Node{ int data; struct Node *next;}Link,LinkList;/*********************************************************** Function : cre
2014-08-26 08:36:00
609
原创 找数组中的第二大数
C语言找数组中的第二大数int findSecondMax(int *a, int len){ int i, max, s_max; max = a[0]; /* max */ s_max = a[1]; /* second max */ for(i=0; i<len; i++) { if(a[i]>max) { s_max = max; /* find s_max */ max = a[i]; /* updata max number */
2014-08-25 11:55:39
730
原创 arm-linux-gcc-4.3.2 交叉编译器的安装
arm-linux-gcc-4.3.2 交叉编译器的安装1. arm-linux-gcc-4.3.2.tgz 百度云下载地址:http://pan.baidu.com/s/1c0iZxAw 密码:p92iarm-linux-gcc-4.3.2.tgz 是已经编译好的源码包,下载后解压缩就能够使用,不需要自己编译在linux系统下可以使tar命令对 arm-linux-gcc-4.3.2.tgz 进行解压缩,下面是我经常用关于tar的使用压 缩:tar -jcv -f filename.tar.
2014-08-22 08:11:49
6059
1
原创 Linux入门
关于登陆--可以使用以下用户名和默认密码登陆:用户名root 默认密码redhat //超级管理员,拥有最高的权限,登陆后显示#号用户名student 默认密码redhat //普通用户,拥有一般权限,登陆后显示$号修改密码可以使用passwd命令修改:[root@yourname ~]# passwd //修改当前登陆用户(root)的密
2014-08-19 17:29:22
583
原创 qt-embedded-linux-opensource-src-4.8.6 + tslib-1.4 + qwt-6.0.2 编译和移植到mini2440开发板
tslib-1.4安装准备需要linux系统安装1. automake 2.autoconf 3. libtool 这三个包 tslib-1.4安装1 [root@localhost ~]#./autogen.sh2 [root@localhost ~]#echo "ac_cv_func_malloc_0_nonnull=yes" >arm-none-linux-g
2014-08-18 16:50:53
1823
转载 I2C总线协议详解
1.1 I2C总线知识1.1.1 I2C总线物理拓扑结构 I2C 总线在物理连接上非常简单,分别由SDA(串行数据线)和SCL(串行时钟线)及上拉电阻组成。通信原理是通过对SCL和SDA线高低电平时序的控制,来 产生I2C总线协议所需要的信号进行数据的传递。在总线空闲状态时,这两根线一般被上面所接的上拉电阻拉高,保持着高电平。1.1.2 I2C总线特征
2014-08-18 14:49:23
39557
19
原创 一个数值转化为二进制 位运算和位域
在嵌入式系统和单片机开发中,数值转化为二进制是非常常用的,对与位域可能很多上层开发人员都不曾见到,位域在MCU开发中常用的使用的,例如一个开关量和高低电平信号,只用0和1两种状态。下面是我做项目时候写的代码拿出来和大家分享
2014-08-18 13:06:25
1213
understand linux kernel 3rd
2014-12-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人